2011. 8. 19. 17:52

FTP 명령어를 사용하여 파일 전송

♧ 우분투는 대부분의 유닉스와 윈도우 시스템에서 동일한 방식으로 작동하는 표준 FTP 클라이언트를 제공.

 

▶ lftp로 FTP 서버에 접속하는 예:

$ lftp mirrors.kernel.org

lftp mirrors.kernel.org:~>

익명 연결

$ lftp devanix@example.com

lftp example.com:~>

인증된 연결

$ lftp -u devanix example.com

Password: ******

인증된 연결

$ lftp -u devanix, Mypasswd example.com

lftp example.com:~>

패스워드로 인증

$ lftp

lftp :~> open mirrors.kernel.org

lftp mirrors.kernel.org:~>

Start lftp with no connection

lftp 세션 연결 시작

☞ 네 번째 예(패스워드 인증)은 현실에서는 피해야 한다 (다른 사용자가 ps auwx의 출력으로 볼 수 있음)

 

▶ lftp 세션에서 다운로드할 때 유용한 명령어 예:

$ lftp mirrors.kernel.org

lftp mirrors.kernel.org:~> pwd

ftp://mirrors.kernel.org

현재 디렉토리 체크

lftp mirrors.kernel.org:~> ls

drwxr-xr-x 7 400 400 4096 Jul 02 20:18 debian/

현재 디렉토리 목록

lftp mirrors.kernel.org:~> cd ubuntu-releases/natty/

디렉토리 변경

lftp mirrors.kernel.org:…> get ubuntu-11.04-desktop-i386.iso

파일 다운로드

lftp mirrors.kernel.org:…> <Ctrl+z>

백그라운드에서 다운로드 전송

lftp mirrors.kernel.org:…> mget /gnu/ed/*

/gnu/ed 안에서 모두 가져옴

lftp mirrors.kernel.org:…> !ls

ls 로컬 실행

lftp mirrors.kernel.org:…> bookmark add Live

즐겨찾기 위치

lftp mirrors.kernel.org:…> quit

lftp 종료

 

▶ lftp 인증된 세션에서 업로드할 때 유용한 명령어 예:

$ lftp devanix@example.com

Password: ******

 

lftp example.com:~> lcd /home/devanix/songs

로컬 디렉토리로 변경

lftp example.com:~> cd pub/uploads

서버 디렉토리로 변경

lftp example.com:~> mkdir songs

서버에 디렉토리 생성

   

lftp example.com:~> chmod 700 songs

원격 디렉토리 퍼미션 변경

lftp example.com:~> cd songs

새로운 디렉토리로 변경

lftp example.com:~> puts song.ogg tune.ogg

3039267 bytes transferred

서버에 파일 업로드

lftp example.com:~> mput /var/songs/*

일치하는 파일 업로드

 

 

 

 

파일 전송 SSH툴 사용

♧ scp를 사용하여 원격 파일 복사

SSH 유틸리티는 통신 명령어의 시스템 관리자 아스민(arsenal)에게 가장 중요한 툴이다.

특히, scp 명령어는 한 컴퓨터에서 다른 컴퓨터에서 파일을 가지고 올 때 필요하고

패스워드와 데이터 전송 암호화하여 통신에 안전하다. ssh 명령어는 호스트 대 호스트간의

파일을 복사하는데 가장 인기 있는 툴인 rcp 명령어로 대체되었다.

 

▶ scp 원격 파일 복사 기본 사용 예:

$ scp myfile devanix@server1:/tmp/

Password: ******

myfile을 → 원격서버로 복사

$ scp server1:/tmp/myfile .

원격서버에 myfile을 → 로컬로 복사

 

▶ 복사본 파일의 퍼미션과 타임스탬프 유지(-p)

$ scp -p myfile server1:/tmp/

 

▶ SSH 서비스 특정 포트에 연결(-P)

$ scp -P 12345 myfile server1:/tmp/

 

▶ 특정 지점으로 순환 복사(-r)

$ scr -r mydir devanix@server1:/tmp/

 

 

♧ sftp와 lftp 세션에서 원격 파일 복사.

sftp 명령어는 FTP같은 인터페이스를 찾기 위해 사용하고 SSH 프로토콜을 통해 파일을 복사할 수 있다.

 

▶ sftp 세션 시작

$ sftp devanix@server1

devanix@server1's password: ******

sftp>

 

▷ 일반 FTP클라이언트와 동일한 방식으로sftp 사용

cd

원격 디렉토리 변경

lcd

로컬 디렉토리 변경

pwd, lpwd

현재의 원격과 로컬 디렉토리 확인

ls, lls

원격과 로컬 내용 목록

chown, chgrp

퍼미션에 따라 파일과 디렉토리의 소유권/그룹

mkdir, rmdir

디렉토리 생성&제거

chmod

퍼미션 변경

 

▷ sftp 클라이언트로 lftp를 사용

$ lftp sftp://devanix@server1

Password: ********

lftp devanix@server1:~>

 

 

 

 

윈도우 파일 전송 툴 사용

♧ 많은 경우에, 윈도우 클라이언트를 사용하여 리눅스 서버에 파일을 받을 필요가 있다.

운영체제 클라이언트가 윈도우라면, 리눅스 서버에서 파일을 받기 위해 다음 중 하나의 오픈소스툴 사용.

 

WinSCP

SSH1과 SSH2 프로토콜을 사용하는

윈도우용 그래픽 scp, sftp와 FTP 클라이언트

FileZilla

윈도우에서 그래픽 클라이언트 FTP와 SFTP 서비스/서버기능

PSCP

TTY 제품군 일부의 커맨드라인 scp 클라이언트

PSFTP

TTY 제품군 일부의 커맨드라인 SFTP 클라이언트

 

 

Posted by devanix