Close

Sshfs. Монтирование удаленных директорий

SSHFS (Secure SHell FileSystem) это клиент файловой системы для Linux (и других операционных систем), используемый для удаленного управления файлами по протоколу SSH (точнее, его расширению SFTP) таким образом, как будто они находятся на локальной машине.

Существует она во всех репозиториях распространенных Linux-дистрибутивов и просто устанавливается.
Например, для Debian-like систем:

или для Arch:

Для монтирования удаленной директории применяется команда:

Где:
user – пользователь на удаленном сервере,
remotehost – адрес сервера, может представлять собой IP или доменное имя,
далее указывается путь на удаленном сервере для директории, затем, через пробел указывается локальный адрес монтирования.

Монтирование удаленной директории с использованием rsa-ключа:

Для отмонтирования директории:

Также sshfs работает с алиасами из файла с конфигурациями ssh.

Где ssh config выглядит как:

 

Можно добавить монтирование на автозагрузку, в файл /etc/fstab. В общем виде строка с монтированием выглядит таким образом:

Где fuse.sshfs – тип файловой системы, далее идут опции монтирования fstab. Fstab – тема для отдельного поста.

Для OS Windows существует библиотека Dokan c похожим функционалом. https://win-sshfs.googlecode.com/

 

Иногда, при монтировании, можно столкнуться с ошибкой:
fuse: bad mount point — Transport endpoint is not connected.
Она возникает часто при проблемах с сетевым соединением.

Чтобы избавиться от нее сделаем следующие шаги:
1. Выполняем ps aux | grep sshfs и получаем pid процесса.
2. Завершаем процесс sshfs инструкцией kill -9 <pid>.
3. Отмонтируем директорию umount -l /local/path .
4. Монтируем удаленную директорию заново.

Поделиться: