FTP 접속하여 원격서버의 현재디렉토리에 존재하는 모든 파일 가져오기
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 2,648 조회
- 0 추천
- 목록
본문
FTP 접속하여 원격서버의 현재디렉토리에 존재하는 모든 파일 가져오기
앞의 강좌에서 원격서버에서 한 개의 파일을 로컬서버로 가져올 때에는 get이라는 명령어를 사용하였고, 여러 개의 파일을 동시에 가져올 때에는 mget이라는 명령어를 사용하였습니다.
이번에는 원격서버의 현재 디렉토리에 존재하는 모든 파일을 모두 로컬서버로 가져오는 방법에 대해서 알아보도록 하겠습니다.
원격서버에 존재하는 모든 파일을 로컬서버로 가져오려면 “mget *”이라고 하시면 됩니다.
먼저, FTP로 접속을 하기 전에 로컬서버내에 존재하는 현재 디렉토리내용을 확인한 것으로 아무런 파일이 존재하고 있지 않음을 알 수 있습니다.
[root@su252 ~]# ls -l 합계 0 [root@su252 ~]# |
그리고 아래와 같이 로컬서버(A서버)에서 원격서버(B서버, 192.168.0.250)로 bible이라는 계정명으로 FTP접속을 하였습니다.
[root@su252 ~]# ftp 192.168.0.250 Connected to 192.168.0.250. 220 (vsFTPd 2.0.7) 530 Please login with USER and PASS. 530 Please login with USER and PASS. KERBEROS_V4 rejected as an authentication type Name (192.168.0.250:root): bible 331 Please specify the password. Password:******** 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> |
FTP접속이 이루어진 후에 아래와 같이 dir이라는 FTP명령어로 원격서버의 파일내용을 확인하였습니다.
보시는 바와 같이 3개의 파일과 1개의 디렉토리가 존재하고 있습니다.
ftp> dir 227 Entering Passive Mode (192,168,0,250,157,190). 150 Here comes the directory listing. -rwx------ 1 505 505 295 Dec 07 2005 manual.conf -rwx------ 1 505 505 332 Oct 24 2022 squid.conf -rwx------ 1 505 505 9534 Jul 15 2022 ssl.conf drwxr-xr-x 4 505 505 4096 Jan 07 2023 www 226 Directory send OK. ftp> |
원격서버의 현재위치에 존재하는 모든 파일을 가져오기 위하여 “mget *”이라는 명령어를 사용하였습니다.
결과적으로 원격서버의 현재위치에 존재하는 모든 파일들은 가져오게 됩니다.
ftp> mget * local: manual.conf remote: manual.conf 227 Entering Passive Mode (192,168,0,250,203,36). 150 Opening BINARY mode data connection for manual.conf (295 bytes). 226 File send OK. 295 bytes received in 0 seconds (0.29 Kbytes/s) local: squid.conf remote: squid.conf 227 Entering Passive Mode (192,168,0,250,72,189). 150 Opening BINARY mode data connection for squid.conf (332 bytes). 226 File send OK. 332 bytes received in 1e-06 seconds (3.2e+05 Kbytes/s) local: ssl.conf remote: ssl.conf 227 Entering Passive Mode (192,168,0,250,32,241). 150 Opening BINARY mode data connection for ssl.conf (9534 bytes). 226 File send OK. 9534 bytes received in 0.00023 seconds (4.1e+04 Kbytes/s) local: www remote: www 227 Entering Passive Mode (192,168,0,250,117,176). 550 Failed to open file. ftp> ftp> quit 221 Goodbye. [root@su252 ~]# |
여기서 주의 하실 것은 원격서버의 서브디렉토리는 가져오지 않는다는 것입니다.
즉, 이번 예에서 www이라는 디렉토리가 존재하지만 서브디렉토리까지 한꺼번에 가져오지는 않습니다.
따라서 만약 www디렉토리에 있는 파일들을 가져오려면 www디렉토리로 이동하여 “mget *”이라고 해야 합니다.
[참고사항]
ncftp명령어에서 “mget -R *”하시면 원격서버의 현재 디렉토리에 존재하는 모든 파일과 디렉토리(그 안의 파일들까지)를 모두 로컬서버로 가져오게 됩니다.
ncftp의 자세한 설명은 이 홈페이지(www.linux.co.kr)의 ncftp명령어편을 보시기 바랍니다.
|
위의 예에서 “mget *”명령어를 수행한 후에 quit이라는 명령어로 FTP를 빠져 나왔습니다.
[root@su252 ~]# ls -l 합계 20 -rw-r--r-- 1 root root 295 10월 22 01:44 manual.conf -rw-r--r-- 1 root root 332 10월 22 01:44 squid.conf -rw-r--r-- 1 root root 9534 10월 22 01:44 ssl.conf [root@su252 ~]# |
그리고 로컬서버에서 원격서버에서 가져온 모든 파일을 확인한 것입니다.
여기서 www라는 디렉토리는 전송되지 않았음을 확인하시기 바랍니다.
관련자료
-
이전
-
다음