Монтирование ftp (хостинга) в локальную папку

ftp logo png
FTP - распространённый вариант взаимодействия клиента с хостингом. Все нормальные хостеры предоставляют ftp-учётку своим клиентам, и вы с помощью соответствющей программы получаете доступ на сервер.
Однако использовать программу (например, Filezilla) или её браузерный вариант не всегда удобно, особенно если вы часто туда-сюда заливаете файлы или постоянно что-то обновляете на сайте.
В этом случае гораздо производительней использовать свой ftp-доступ, как обычную локальную папку.
в Linux монтированием ftp-хостов занимается консольная утилита curlftpfs.

Установка
В дебиано-образных дистрибутивах (Debian, Ubuntu, Mint, Cranchbang и т.д.):
# apt-get install curlftpfs

В красношапочных (Fedora, RedHat, CentOS, ClearOS и т.д.):
# yum install curlftpfs

Для успешного соединения с ftp-сервером своего хостинга нужно из админ-панели выцепить главные данные:

  • ip или домен ftp-сервера
  • логин
  • пароль

На всякий случай предупреждаю, что ftp-соединение фактически не защищено, так что держать постоянно смонтированной папку нет смысла.

Монтирование ftp-папки, образец команды (из-под юзера):
$ curlftpfs ftp://ftp.host.com/ /папка на жёстком диске/ -o user=login:password

Например, монтируем хостинг с ip xx.xxx.xxx.xx в папку site, которая находится на жёстком диске в домашней папке (home) с логином ftp-доступа aaa и паролем bbb :
$ curlftpfs ftp://xx.xxx.xxx.xx/ ~/site/ -o user=aaa:bbb

Помимо стандартных функций culftpfs позволяет (дополнительные опции для флага -o):
  • указывать интерфейс
  • выбирать между ipv4 и ipv6
  • указывать конкретный порт
  • учитывать в соединении SSL/TLS
  • использовать разные кодировки (по умолчанию UTF-8)

Полный перечень опций доступен по команде:
$ man curlftpfs

Размонтирование (на предыдущем примере с папкой site, находящейся в домашней директории пользователя):
# umount /home/пользователь/site
Здесь мы прописываем абсолютный путь до папки, поскольку для размотирование понадобятся root'овые права.

Монтирование ftp в папку при загрузке системы ↓
Запись в fstab:
curlftpfs#ftp.host.com /папка fuse rw,uid=500,user,noauto 0 0

Как вы увидели, с монтированием ftp в локальную папку справится даже ребёнок, ведь Linux может всё (что касается сетей). Кстати, таким макаром очень удобно делать бекапы.

Что касается Windows, я встречал одну утилиту netdrive, но она платная. Если вы знаете бесплатную программу для монтирования ftp в папку из-под Windows, напишите, пожалуйста, о ней в комментах ↓

1 комментарий: