탐색 링크 건너뛰기 | |
인쇄 보기 종료 | |
Oracle Solaris 관리: 네트워크 서비스 Oracle Solaris 11 Information Library (한국어) |
ftp 명령은 인터넷의 FTP(File Transfer Protocol)에 대한 사용자 인터페이스를 엽니다. 명령 인터프리터라고 하는 이 사용자 인터페이스를 사용하면 원격 시스템에 로그인하여 해당 파일 시스템에서 다양한 작업을 수행할 수 있습니다. 주요 작업은 다음 표에 요약되어 있습니다.
rlogin 및 rcp와 비교했을 때 ftp의 주요 장점은 ftp를 사용하기 위해 원격 시스템에서 UNIX를 실행하지 않아도 된다는 점입니다. 원격 시스템을 TCP/IP 통신용으로 구성하는 작업은 필요합니다. 그러나 rlogin이 ftp보다 더 많은 파일 조작 명령 세트에 대한 액세스를 제공합니다.
ftp 원격 로그인 작업에 대한 인증은 다음 방법 중 하나를 사용하여 설정할 수 있습니다.
표 29-3 필수 ftp 명령
|
자세한 내용은 ftp(1) 매뉴얼 페이지를 참조하십시오.
원격 로그인에 대한 인증(ftp)에 설명된 대로 ftp 인증이 있어야 합니다.
$ ftp remote-system
연결에 성공하면 확인 메시지 및 프롬프트가 표시됩니다.
Name (remote-system:user-name): user-name
331 Password required for user-name: Password: password
액세스하는 시스템에 설정된 익명 ftp 계정이 있는 경우 암호에 대한 전자 메일 주소를 입력하라는 메시지가 표시됩니다. ftp 인터페이스에서 암호가 수락되면 확인 메시지 및 (ftp>) 프롬프트가 표시됩니다.
이제 help를 비롯하여 ftp 인터페이스에 제공되는 모든 명령을 사용할 수 있습니다. 주요 명령은 표 29-3에 요약되어 있습니다.
예 29-5 원격 시스템에 대한 ftp 연결 열기
이 ftp 세션은 원격 시스템 pluto에서 사용자 smith가 설정한 것입니다.
$ ftp pluto Connected to pluto. 220 pluto FTP server ready. Name (pluto:smith): smith 331 Password required for smith: Password: password 230 User smith logged in. ftp>
bye 명령을 사용하여 원격 시스템에 대한 ftp 연결을 닫으십시오.
ftp> bye 221-You have transferred 0 bytes in 0 files. 221-Total traffic for this sessions was 172 bytes in 0 transfers. 221-Thanks you for using the FTP service on spdev. 221 Goodbye.
연결 종료 메시지와 평상시의 셸 프롬프트가 차례로 나타납니다.
$ cd target-directory
원격 시스템에 대한 ftp 연결을 여는 방법을 참조하십시오.
ftp> cd source-directory
시스템에 자동 마운트가 사용되는 경우 원격 시스템 사용자의 홈 디렉토리가 /home 아래에서 현재 사용자의 홈 디렉토리와 병렬로 나타납니다.
ftp> ls -l
ftp> binary
ftp> get filename
ftp> mget filename [filename ...]
일련의 개별 파일 이름을 제공할 수 있으며 와일드카드 문자를 사용할 수 있습니다. mget 명령은 각 파일을 개별적으로 복사하며 매번 확인 메시지를 표시합니다.
ftp> bye
예 29-6 원격 시스템에서 파일 복사(ftp)
이 예에서는 사용자 kryten이 pluto 시스템에 대한 ftp 연결을 열고 get 명령을 사용하여 /tmp 디렉토리에서 단일 파일을 복사합니다.
$ cd $HOME ftp pluto Connected to pluto. 220 pluto FTP server (SunOS 5.8) ready. Name (pluto:kryten): kryten 331 Password required for kryten. Password: xxx 230 User kryten logged in. ftp> cd /tmp 250 CWD command successful. ftp> ls 200 PORT command successful. 150 ASCII data connection for /bin/ls (129.152.221.238,34344) (0 bytes). filea files ps_data 226 ASCII Transfer complete. 53 bytes received in 0.022 seconds (2.39 Kbytes/s) ftp> get filea 200 PORT command successful. 150 ASCII data connection for filea (129.152.221.238,34331) (0 bytes). 221 Goodbye.
이 예에서는 동일한 사용자 kryten이 mget 명령을 사용하여 /tmp 디렉토리에서 자신의 홈 디렉토리로 파일 세트를 복사합니다. kryten은 세트에 포함된 개별 파일을 수락하거나 거부할 수 있습니다.
$ ftp> cd /tmp 250 CWD command successful. ftp> ls files 200 PORT command successful. 150 ASCII data connection for /bin/ls (129.152.221.238,34345) (0 bytes). fileb filec filed remote: files 21 bytes received in 0.015 seconds (1.36 Kbytes/s) ftp> cd files 250 CWD command successful. ftp> mget file* mget fileb? y 200 PORT command successful. 150 ASCII data connection for fileb (129.152.221.238,34347) (0 bytes). 226 ASCII Transfer complete. mget filec? y 200 PORT command successful. 150 ASCII data connection for filec (129.152.221.238,34348) (0 bytes). 226 ASCII Transfer complete. mget filed? y 200 PORT command successful. 150 ASCII data connection for filed (129.152.221.238,34351) (0 bytes). 226 ASCII Transfer complete.200 PORT command successful. ftp> bye 221 Goodbye.
ftp 명령을 입력하는 디렉토리가 로컬 작업 디렉토리이므로 이 작업의 소스 디렉토리입니다.
원격 시스템에 대한 ftp 연결을 여는 방법을 참조하십시오.
ftp> cd target-directory
이때 시스템에 자동 마운트가 사용되는 경우 원격 시스템 사용자의 홈 디렉토리가 /home 아래에서 현재 사용자의 홈 디렉토리와 병렬로 나타납니다.
ftp> ls -l target-directory
ftp> binary
ftp> put filename
ftp> mput filename [filename ...]
일련의 개별 파일 이름을 제공할 수 있으며 와일드카드 문자를 사용할 수 있습니다. mput 명령은 각 파일을 개별적으로 복사하며 매번 확인 메시지를 표시합니다.
ftp> bye
예 29-7 원격 시스템으로 파일 복사(ftp)
이 예에서는 사용자 kryten이 pluto 시스템에 대한 ftp 연결을 열고 put 명령을 사용하여 자신의 시스템에서 pluto 시스템의 /tmp 디렉토리로 파일을 복사합니다.
$ cd /tmp ftp pluto Connected to pluto. 220 pluto FTP server (SunOS 5.8) ready. Name (pluto:kryten): kryten 331 Password required for kryten. Password: xxx 230 User kryten logged in. ftp> cd /tmp 250 CWD command successful. ftp> put filef 200 PORT command successful. 150 ASCII data connection for filef (129.152.221.238,34356). 226 Transfer complete. ftp> ls 200 PORT command successful. 150 ASCII data connection for /bin/ls (129.152.221.238,34357) (0 bytes). filea filef files ps_data 226 ASCII Transfer complete. 60 bytes received in 0.058 seconds (1.01 Kbytes/s) ftp> bye 221 Goodbye.
이 예에서는 동일한 사용자 kryten이 mput 명령을 사용하여 자신의 홈 디렉토리에서 pluto의 /tmp 디렉토리로 파일 세트를 복사합니다. kryten은 세트에 포함된 개별 파일을 수락하거나 거부할 수 있습니다.
$ cd $HOME/testdir $ ls test1 test2 test3 $ ftp pluto Connected to pluto. 220 pluto FTP server (SunOS 5.8) ready. Name (pluto:kryten): kryten 331 Password required for kryten. Password: xxx 230 User kryten logged in. ftp> cd /tmp 250 CWD command successful. ftp> mput test* mput test1? y 200 PORT command successful. 150 ASCII data connection for test1 (129.152.221.238,34365). 226 Transfer complete. mput test2? y 200 PORT command successful. 150 ASCII data connection for test2 (129.152.221.238,34366). 226 Transfer complete. mput test3? y 200 PORT command successful. 150 ASCII data connection for filef (129.152.221.238,34356). 226 Transfer complete. ftp> bye 221 Goodbye.