RTFM.WIKI

Ordnung muß sein. Ordnung über alles (18+)

Инструменты пользователя

Инструменты сайта


linux:curlftpfs

Монтирование файловой системы FTP в linux

Источник: http://ruunix.ru/1773-montirovanie-fajlovoj-sistemy-ftp-v-linux.html

Иногда нужно, чтобы FTP аккаунт был всегда под рукой, а вернее отдельным каталогом вашей файловой системы. В linux это делается с помощью пакета curlftpfs, при этом в ядре должна быть включена поддержка FUSE (во всех современных ядрах она есть, если вы только не пересобирали ядро сами :) )

На официальный сайте проекта curlftpfs можно найти исходники программы, но практически во всех репозиториях она есть и исходники вам врядли понадобятся.

В ubuntu/debian ставим с помощью команды

$sudo aptitude install curlftpfs

На всякий случай подгружаем модуль ядра fuse (в разных дистрибутивах модуль может подгружаться и автоматом при задействовании системы FUSE)

$sudo modprobe fuse

Теперь можно и примонтировать ftp в какой-нибудь каталог, например /mnt/ftp

Следующие команды выполняем от sudo или суперпользователя

$sudo mkdir /mnt/ftp
$sudo curlftpfs ftp.server.ru /mnt/ftp/ -o user=ftpuser

после набора пароля пользователя ftp в каталоге /mnt/ftp будет отображаться содержимое ftp с правами пользователя ftp.
Чтобы не набирать пароль, можно его указывать в команде подключения

$sudo curlftpfs ftp.server.ru /mnt/ftp/ -o user=ftpuser:ftppassword

Внимание: Так я делать не рекомендую по соображениям безопасности, т.к. команды обычно логируется в history или могут быть подсмотрены. Но если очень надо создать автоматическое монтирование ftp ресурса, тогда рекомендую создать скрипт с данной командой подключения и выставить на него права 600.

Чтобы монтировать ftp от обычного пользователя, надо дописать/расcкомментировать в файле /etc/fuse.conf (если файла нет, то создать) строку

user_allow_other

и монтировать уже командой от обычного пользователя

$curlftpfs ftp.server.ru /mnt/ftp/ -o user=ftpuser:ftppassword,allow_other

Если надо примонтировать только 1 подкаталог с главного корня ftp, достаточно просто указать относительный путь этого каталога. Например в корне ftp есть каталог temp, который нам надо примонтировать. Тогда команда монтирования будет выглядеть:

$curlftpfs ftp.server.ru/temp /mnt/ftp/ -o user=ftpuser:ftppassword,allow_other

Для монтирования ftp на уровне загрузке системы можно занести монтирование в файл /etc/fstab, подставив свои значения

curlftpfs#ftpuser:[email protected] /mnt/ftp fuse auto,user,uid=1000,allow_other 0 0

По команде

$df -h

Можно посмотреть в какую директорию смонтированы все файловые системы компьютера, в частности curlftpfs.
Из недостатков монтирования я заметил, что данная команда неправильно показывает занятое/свободное место на ftp.

Для отмонтирования ftp нужно выполнить

$sudo umount /mnt/ftp

См. также:

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
 
linux/curlftpfs.txt · Последнее изменение: 2016/07/21 14:00 — 127.0.0.1