There are several packages available from the community repository or AUR that allow to mount FTP shares and interact with them just as if they were local file systems.
These are the packages that provide a way to mount FTP shares:
- curlftpfs [recommended]
- lufs [outdated]
All three packages are based on FUSE library.
Example using curlftpfs to mount a FTP folder
Install curlftpfs (from the community repo)
# pacman -S curlftpfs
If needed, make sure that fuse has been started.
# modprobe fuse
Create the mount point and then mount the FTP folder.
# mkdir /mnt/ftp # curlftpfs ftp.yourserver.com /mnt/ftp/ -o user=username:password
If you want regular user access, use the following instead:
# curlftpfs ftp.yourserver.com /mnt/ftp/ -o user=username:password,allow_other
Do not add space after the comma or the allow_other argument won't be recognized.
To use FTP in active mode add the option 'ftp_port=-':
# curlftpfs ftp.yourserver.com /mnt/ftp/ -o user=username:password,allow_other,ftp_port=-
You can add this line to /etc/fstab to mount automatically.
curlftpfs#USER:PASSWORD@ftp.domain.org /mnt/mydomainorg fuse auto,user,uid=1000,allow_other 0 0
To prevent the password to be shown in the process list, create a .netrc file in the home directory of the user running curlftpfs and chmod 600 with the following content:
machine ftp.yourserver.com login username password mypassword