반응형

리눅스/Linux 3가지 리눅스용 에프티피 클라이언트 3 FTP Client List for Linux :: 가야태자의 IT이야기 (tistory.com)

안녕하세요 가야태자 @talkit 입니다.

오늘은 작성하고자 하는 긍릉 위 글에 이어서 리눅스용 FTP 클라이언트의 사용법을 이야기 합니다.

거의 모든 리눅스에서 ftp 라고 치시면 일반적으로 설치 되어 있습니다.

일단 명령어는

ftp [접속하고자하는Host] [Port]

위와 같이 사용합니다.

리눅스/Linux 우분투에 FTP 서버를 설치해보자. How to install FTP server on Ubuntu Linux :: 가야태자의 IT이야기 (tistory.com)

이글에서 저는 제 우분투에 FTP 서버를 설치 해 두었습니다. 그래서 저기 접속을 해보겠습니다.

ftp localhost 21

저렇게 치시면 되는데 21은 표준 FTP 포트여서 생략 가능 합니다.

localhost는 안넣으시면, ftp 프로그램이 먼저 켜지고, 명령어를 이용해서 접속하실 수 있습니다.

일단 실행 해보겠습니다.

ftp localhost 21
Connected to localhost.
220 (vsFTPd 3.0.3)
Name (localhost:talkit):
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

위와 같이 실행을 했구요 잘 실행 되었습니다.

Name에 다른 아이디로 접속하시려면, 다른 아이디를 입력하시면 됩니다. talkit 계정으로 접속하시려면 그냥 엔터 치시면 됩니다.

그리고 Password 에는 정확한 패스워드를 입력하시면 됩니다.

ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwxr-xr-x    2 1000     1000         4096 Dec 25 00:21 Desktop
drwxr-xr-x    2 1000     1000         4096 Dec 25 00:21 Documents
drwxr-xr-x    2 1000     1000         4096 Dec 25 00:21 Downloads
drwxr-xr-x    2 1000     1000         4096 Dec 25 00:21 Music
drwxr-xr-x    2 1000     1000         4096 Dec 25 00:21 Pictures
drwxr-xr-x    2 1000     1000         4096 Dec 25 00:21 Public
drwxr-xr-x    2 1000     1000         4096 Dec 25 00:21 Templates
drwxr-xr-x    2 1000     1000         4096 Dec 25 00:21 Videos
drwxrwxr-x    2 1000     1000         4096 Jan 10 16:00 climates
drwxrwxr-x    2 1000     1000         4096 Jan 03 03:37 emmptydir2
drwxrwxr-x    2 1000     1000         4096 Jan 03 03:37 emmptydir3
drwxrwxr-x    2 1000     1000         4096 Jan 03 03:37 emmptydir4
drwxrwxr-x    2 1000     1000         4096 Jan 03 03:38 emmptydir5
drwxrwxr-x    2 1000     1000         4096 Jan 03 03:28 emptydir
-rw-r--r--    1 1000     1000           35 Dec 30 00:27 ftpclient.txt
-rw-rw-r--    1 1000     1000           35 Dec 30 00:27 ftpserver.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:33 ftpserver11.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:33 ftpserver12.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:33 ftpserver13.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:33 ftpserver14.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:33 ftpserver15.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:27 ftpserver3.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:33 ftpserver31.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:33 ftpserver32.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:33 ftpserver33.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:33 ftpserver34.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:33 ftpserver35.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:27 ftpserver4.txt
-rw-rw-r--    1 1000     1000           35 Jan 03 03:27 ftpserver5.txt
-rw-rw-r--    1 1000     1000     338882654 Dec 21 05:26 mattermost-7.5.2-linux-                                                                                                                                                                                                                                             amd64.tar.gz
-rw-rw-r--    1 1000     1000     38937942 Jan 03 02:01 minio.deb
-rw-rw-r--    1 1000     1000       243162 Nov 09 02:30 naverlogo.png
drwx------    3 1000     1000         4096 Jan 06 06:21 snap
-rw-rw-r--    1 1000     1000       243162 Nov 09 02:30 sp_main_947f65.png
drwxr-xr-x    2 1000     1000         4096 Jan 07 03:22 study
drwxrwxr-x    2 1000     1000         4096 Dec 30 00:37 temp
-rw-rw-r--    1 1000     1000          270 Jan 03 06:17 testtext.txt
drwxrwxr-x    2 1000     1000         4096 Jan 08 06:10 wgettest
226 Directory send OK.

파일 리스트를 확인 하는 명령어인 ls 치시면, 파일 목록을 보실 수 있습니다.

cd : FTP 서버의 디렉토리 이동
lcd : 로컬 컴퓨터의  디렉토리 이동

윈도우즈에서 로컬의 디렉토리를 이동할때는 GUI로 이동 했는데 얘는 GUI가 없으니 명령어로 이동 해야 합니다.

그 명령어가 lcd 입니다.

cd 명령어는 접속 해 있는 서버방의 디렉토리가 이동 됩니다.

디렉토리를 하나 만들어 보겠습니다.

mkdir test
ftp> mkdir test
257 "/home/talkit/test" created

위와 같이 잘 만들어 졌습니다.

cd test
250 Directory successfully changed.

cd test 명령어로 잘 이동을 했구요.

lcd 로컬의 디렉토리를 이동 해보겠습니다.

lcd test

아직 이동한 적이 없기 때문에 로컬에서 test로 이동 했을 겁니다.

ftp> lcd test
Local directory now /home/talkit/test

다시

cd ..
250 Directory successfully changed.

위 디렉토리로 이동 하겠습니다.

이제 다운로드를 한번 받아 보겠습니다.

get 파일명

위 명령어를 이용하시면 로컬에 다운로드 할 수 있습니다.

get ftpclient.txt
local: ftpclient.txt remote: ftpclient.txt
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpclient.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.01 secs (2.8677 kB/s)

잘 다운로드 되었습니다.

! ls

! 명령어를 이용하면 로컬에 있는 명령어를 수행 할 수 있습니다. 저는 주로 로컬 작업을 미리 해두고 들어가서 몰랐는데 ^^

가능하네요 ^^

ftp> !ls
ftpclient.txt

잘 다운로드 받아져 있습니다.

mkdir test3
cd test3

위 명령어로 원격 디렉토리를 이동하고, 파일을 올려 보겟습니다.

ftp> mkdir test3
257 "/home/talkit/test3" created
ftp> cd test3
250 Directory successfully changed.

위와 같이 잘 만들어 지고 이동 되었으면

put 파일명

위 명령어로 파일을 전송 할 수 있습니다.

put ftpclient.txt
 put ftpclient.txt
local: ftpclient.txt remote: ftpclient.txt
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 Transfer complete.
35 bytes sent in 0.00 secs (510.1446 kB/s)
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-r--r--    1 1000     1000           35 Feb 19 02:33 ftpclient.txt
226 Directory send OK.

실행하면 위와 같이 잘 됩니다. ^^

cd ..
! mkdir test5
lcd test5

로컬에 test5 폴더를 만들고 저기다가 ftp로 시작하는 파일들을 받아 보겠습니다.

그런데 많은 파일을 받아야 해서 명령어가 다릅니다.

mget 파일명일부*
 mget ftp*
mget ftpclient.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpclient.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (255.0723 kB/s)
mget ftpserver.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (160.4680 kB/s)
mget ftpserver11.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver11.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (244.1406 kB/s)
mget ftpserver12.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver12.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (249.4868 kB/s)
mget ftpserver13.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver13.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (234.1074 kB/s)
mget ftpserver14.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver14.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (220.5141 kB/s)
mget ftpserver15.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver15.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (109.9025 kB/s)
mget ftpserver3.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver3.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (205.9017 kB/s)
mget ftpserver31.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver31.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (240.7020 kB/s)
mget ftpserver32.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver32.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (213.6230 kB/s)
mget ftpserver33.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver33.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (217.7050 kB/s)
mget ftpserver34.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver34.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (189.8871 kB/s)
mget ftpserver35.txt? y
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for ftpserver35.txt (35 bytes).
226 Transfer complete.
35 bytes received in 0.00 secs (271.2674 kB/s)
mget ftpserver4.txt?

실제로 위와 같이 명령을 내리면 되는데 y를 계속 눌러 주셔야 합니다.

mput 파일명일부*

명령어는 반대로 여러개의 파일을 한꺼번에 올릴때 사용합니다.

하지만, 간단하게 CLI 밖에 안될때는 저렇게 해도 개발의 특성상 많은 파일을 주고 받아야 해서

ftp는 잠깐 쓰는 것 왜에는 권장하지 않습니다. ^^

참 아까 말씀 드린거를 하나 더 말씀 드리고 마치겠습니다.

ftp  

치시고 엔터 치시면

ftp 프롬프트로 이동하는데 ^^
이때 open 명령어를 이용하시면 접속 하실 수 있습니다.

open localhost 21

동일 합니다.

감사합니다.

다음에는 gFTP를 설치하고 어떻게 FTP파일을 주고 받을지 이야기 해보겠습니다.

반응형

+ Recent posts