리눅스 서버간의 파일 복사 , scp


오늘은 리눅스에서 서로 다른 서버간에 파일을 복사하는 명령어 scp 를 알아보자.


scp 명령어를 이용하면 서로다른 서버간에도 파일 복사, 폴더 복사가 모두 가능하다.

오늘은 파일들을 tar.gz로 압축한 후 압축 파일을 가져오는 방법으로 scp 명령어를 사용해 보도록하자.


먼저 이동시키고자 하는 파일들이 있는 폴더로 이동해서 파일들을 압축시킨다.


tar cvzf  파일명.tar.gz ./*



ex)


[user@111.111.111.111 home]# tar cvzf mingcho.tar.gz ./*

//위를 설명하면 ./* 현재경로(home) 하위에 있는 모든 파일들을 mingcho.tar.gz 란 이름으로 압축파일을 생성하라는 의미이다.



압축파일이 생성됐으면 이제 파일들을 이동 시킬 서버의 경로로 이동한다.


scp -P 포트번호 계정@서버주소:원본경로 목적파일명



ex)


[user@222.222.222.222 home]# scp -P 22 mingcho@111.111.111.111:/home/mingcho.tar.gz /home/mingcho2.tar.gz


//22번포트로 111.111.111.111 번 서버의 mingcho계정으로 접속해서 /home 하위에 있는 mingcho.tar.gz 란 

파일을 현재 222.222.222.222 서버의 /home하위에 mingcho2.tar.gz 란 이름으로 복사한다.



이렇게 명령어를 날리면 목적서버 계정의 패스워드를 물어본다.


[user@222.222.222.222 home]# scp -P 22 mingcho@111.111.111.111:/home/mingcho.tar.gz /home/mingcho2.tar.gz

mingcho@111.111.111.111's password : 



여기에 패스워드를 입력하여 인증에 성공하면 복사가 완료된다.

복사가 된 파일을 압축을 풀려면 아래와 같이 풀어주면된다.


tar -zxvf 파일명.tar.gz



ex)


[user@222.222.222.222 home]# tar -zxvf mingcho.tar.gz 




여기에 압축파일이 아닌 폴더로서 전체로 복사 하고 싶을 경우엔 ( -r 옵션 ) 을 사용하면 된다.


scp -r -P 포트번호 username@원격서버주소:해당경로폴더/ 로컬저장소위치



ex)


[user@222.222.222.222 home]# scp -r -P 22 mingcho@111.111.111.111:/home/dir /home/dir







+ Recent posts

티스토리 툴바