리눅스
서버간 파일 전송: scp, tar, gzip
망고고래
2025. 1. 14. 14:35
1. scp: 서버간 파일 전송 명령어
1) 현재 서버에서 다른 서버로 파일 보내기
① 파일 전송 명령어 입력
scp -P <포트번호> <보낼 파일 경로> <상대편 ID>@<상대편 서버 주소>:<파일 저장할 경로>
② 상대 계정의 비밀번호 입력
2) 다른 서버에서 현재 서버로 파일 받기
① 파일 전송 명령어 입력
scp -P <포트번호> <상대편 id>@<상대 서버 주소>:<파일 경로> <받을 파일 경로>
② 상대 계정의 비밀번호 입력
기본적인 구조는 scp + -P + 보낼 파일 경로 + 받을 파일 경로이다.
다른 파일 경로 중 한 쪽이 다른 서버일 경우 파일 경로 앞에 '<id>@<서버 주소>:'가 더해지는 것이다.
옵션
P: 포트 번호 지정 복사
v: 과정 출력 복사
2. tar: 여러 개의 파일을 묶음(tape archiver)
* tar는 파일을 묶는 기능을 하고, 파일 용량은 그대로다.
1) tar로 파일 묶기
tar cvf <파일명.tar> <파일명> [<파일명2>, <파일명3>]
c: create(새로운 tar 아카이브 파일 생성)
v: verbose(상세 출력 모드 활성화)
- 작업 중 처리된 파일 목록을 화면에 출력함
f: file(파일 지정)
- f 옵션 뒤에는 아카이브 파일 이름을 지정해야 한다.
2) tar로 묶여있는 파일 풀기
(1) 현재 디렉토리에 풀기
tar xvf <파일명.tar>
x: extract
(2) 디렉토리 지정해서 풀기
tar xvf T.tar -C <지정 경로>
(3) 기존 tar 아카이브에 파일 추가
tar -a <tar파일명.tar> <추가할 파일명>
a: append
3. gzip: 파일 압축
파일 크기 축소, 원본 파일 모드, 소유권 및 타임스탬프를 유지하는 압축 알고리즘
텍스트 파일과 tar 아카이브를 압축하는 데 가장 많이 사용된다.
1) 파일 압축
gzip <압축할 파일명>
2) 압축 해제
gzip -d filename.gz
gunzip filename-gz
두 명령어의 기능은 같다.
압축된 파일 유지하면서 압축 풀기
gzip -dk filename.gz