우분투 FTP 마운트


우분투 FTP 마운트
우분투 데스크탑 환경에서 FTP 를 마운트 하는 방법과 우분투 서버 등의 환경에서 curlftpfs 를 이용하여 FTP를 마운트하는 방법에 대해 설명드립니다.

FTP를 마운트하면 일반 디렉터리 처럼 편리하게 이용할 수 있습니다. FTP 서버 구축과 관련된 내용은 아래의 페이지를 참고해 주시기 바랍니다.

우분투 FTP 서버 구축

우분투 FTP 마운트

데스크탑 FTP 마운트

우분투 18.04 버전 등 최신 우분투 데스크탑 환경에서는 GNOME 데스크탑에서 바로 FTP를 마운트 할 수 있습니다. 먼저 우분투 홈 디렉터리를 엽니다.

그리고 창 하단에 [Other Locations]라는 메뉴가 있습니다. 이 메뉴를 선택 후 아래와 같이 FTP 서버 정보를 입력 후 [Connect] 버튼을 클릭합니다.

우분투 FTP 마운트

나타난 팝업 윈도우에서 FTP 사용자 계정을 입력합니다. 사용자 계정 저장 옵션에 따라서 로그아웃 될 때까지 저장하거나, 계속 하여 저장 할 수도 있습니다.

우분투 FTP 마운트

FTP 가 성공적으로 마운트 되게 되면 아래와 같이 FTP 서버의 파일들을 확인 할 수 있습니다.

마운트 된 경로를 확인 하기 위해서는 빈 공간에서 마우스 오른쪽 버튼을 클릭하고, 나타난 팝업 메뉴에서 [Open in Terminal] 메뉴를 클릭합니다.

그럼 쉘이 나타나면서 아래와 같이 경로를 확인 할 수 있으며, 명령어를 사용하여 FTP 서버의 파일 등을 관리 하실 수 있습니다.

우분투 FTP 마운트

우분투 서버 FTP 마운트

우분투 서버 등의 GUI 가 없는 환경에서 명령어를 이용하여 FTP를 마운트하는 방법에 대해서 설명드리도록 하겠습니다.

curlftpfs 설치

명령어를 이용하여 FTP를 마운트 하기 위해서 curlftpfs 라는 패키지를 이용하게 됩니다. curlftpfs 가 설치되지 않았을 경우 다음 명령어로 설치해 주시기 바랍니다. 그리고 마운트 될 디렉터리를 함께 생성합니다.

$ sudo apt install curlftpfs
$ sudo mkdir /mnt/ftp

curlftpfs 를 이용하여 FTP를 마운트하게 되면, 기본적으로 root 권한으로만 사용이 가능합니다. 따라서 사용자 권한으로 함께 사용할 수 있도록 설정을 변경해야 합니다.

/etc/fuse.conf 설정 파일에서 user_allow_other 부분을 아래와 같이 주석을 해제 합니다.

# Allow non-root users to specify the allow_other or allow_root mount options.
user_allow_other

curlftpfs 사용법

다음은 FTP 서버 접속 도메인과 접속 계정정보를 확인합니다. 아래의 설명드릴 명령어는 다음 정보로 접속 하는 방법을 설명드리며, 사용하고 계신 FTP 서버 환경에 맞게 수정 후 사용하시면 됩니다.

  • FTP 서버 : hiseon.me
  • 로그인 계정 : username
  • 로그인 비밀번호 : password

curlftpfs를 이용하여 FTP 서버를 디렉터리로 마운트 하기 위해서는 다음 명령어를 사용합니다.

$ sudo curlftpfs username:password@hiseon.me /mnt/ftp/

위의 명령어를 이용하여 /mnt/ftp 디렉터리에 FTP 마운트 할 경우 root 권한으로만 파일에 접근하여 사용가능합니다.
만약 사용자 권한으로 파일에 접근하여 사용하기 위해서는 다음 명령어로 UID 와 GID를 지정하면서 마운트 하면 됩니다.

$ sudo curlftpfs username:password@hiseon.me /mnt/ftp -o allow_other,uid=$(id -u),gid=$(id -g)

디렉터리 마운트 후 해제는 다음 명령어를 실행하면 됩니다.

$ sudo umount /mnt/ftp

부팅시 FTP 자동 마운트 설정

우분투 서버 등이 재부팅 될때 자동으로 마운트 되도록 설정하는 방법입니다. 먼저 사용자 접속 정보를 /root/.netrc 파일을 생성 후 저장해 주시기 바랍니다.

machine hiseon.me
login username
password password

그리고 다음 명령어를 실행하여 /root/.netrc 파일의 권한을 수정해 주시기 바랍니다.

$ sudo chmod 600 /root/.netrc

마지막으로 /etc/fstab 파일에 다음과 같은 정보를 추가하면 됩니다.

curlftpfs#hiseon.me /mnt/ftp fuse allow_other,uid=1000,gid=1000,umask=0022 0 0

uid 값과 gid 값은 사용할 사용자 계정에 따라 달라 질 수 있는데 아래의 이미지 처럼 id 명령어로 uid 값과 gid 값을 확인 후 설정해 주시면 됩니다.

/etc/fstab 파일의 설정이 잘 못 될 경우, 서버가 부팅이 되지 않을 수 있습니다. 따라서 /etc/fstab 파일을 수정 한 다음 다음 명령어로 오류가 없이 마운트 되는 것을 확인해 주셔야 합니다.

$ sudo mount /mnt/ftp

( 본문 인용시 출처를 밝혀 주시면 감사하겠습니다.)