SSHFS замечательный. Он может монтировать удаленные каталоги в локальный каталог с помощью FUSE . Команды ниже используют, #
чтобы указать, что команда была выполнена как root
, а $
указывает на выполнение от имени обычного пользователя. Поскольку требуется программное обеспечение FUSE, сначала убедитесь, что оно доступно и работает.
Одна из lsmod
и grep
команд, ниже, можно выявить , если загружен и готов к использованию программного обеспечения. Результат от любой команды указывает, что fuse
доступно.
# lsmod | grep fuse
$ grep -i fuse /lib/modules/$(uname -r)/modules.builtin
Если по какой-либо из команд ничего не получилось, попробуйте загрузить модуль ядра без перезагрузки modprobe
и повторите проверку.
# modprobe fuse
# lsmod fuse
Если загрузка модуля не удалась, установите программное обеспечение с помощью apt-get
.
# apt-get install fuse
Проверьте еще раз после установки.
# modprobe fuse
# lsmod fuse
FUSE должен быть установлен и запущен перед продолжением.
Проверьте разрешения /dev/fuse
. Разрешения должны предоставлять вашей учетной записи обычного пользователя права на чтение и запись. Пропустите эту часть, если вы определили, что ваша учетная запись обычного пользователя уже имеет права на чтение и запись /dev/fuse
.
# ls -l /dev/fuse
Вывод может быть что-то вроде одного из следующих.
crw-rw-rw- 1 root root (all users can read/write)
crw------- 1 root fuse (only root can read/write)
crw-rw---- 1 root fuse (root and members of fuse group can read/write)
В 2013 году мой Debian создан /dev/fuse
с 0600
разрешениями, владельцем root
, владельцем группы fuse
. Мне нужно было разрешить группе предохранителей использовать устройство и добавить свою учетную запись обычного пользователя в группу, как показано ниже.
# usermod -aG fuse $your_regular_user_account
# chmod 0660 /dev/fuse
Если требуется новое членство в группе, выйдите из системы и снова войдите в нее, чтобы стать участником группы.
Далее устанавливаем ssh
с обеих сторон следующим образом.
# apt-get install ssh
Этот ответ был написан для Debian, но на Ubuntu 18.x , по крайней мере, openssh-client
, fuse
, и несколько других пакетов являются частью Ubuntu sshfs
пакета. Программное sshfs
обеспечение требуется на стороне клиента, но при желании его можно установить с обеих сторон. Существует одна из зависимостей пакета fuse
, но установщик пропускает уже установленное программное обеспечение.
# Ubuntu 18.x:
# apt-get install sshfs
С fuse
и при ssh
наличии, а также с разрешением на использование устройства /dev/fuse
создайте точку монтирования для удаленной файловой системы; и смонтировать эту удаленную файловую систему локально следующим образом.
# mkdir /mnt/$directory_name
# chown $your_user:$group /mnt/$directory_name/
$ sshfs $remote_username@$remote_server_name: /mnt/$directory_name/
Чтобы смонтировать каталог, отличный от home, укажите его после двоеточия.
$ sshfs $remote_username@$remote_server_name:/remote/directory /mnt/$directory_name
Чтобы демонтировать, используйте fusermount
.
fusermount -u /mnt/$directory_name
Если у вас есть компьютер с Windows, он также может использовать SSHFS с win-sshfs . Это программное обеспечение будет «сопоставлять диск» с SSHFS, чтобы у вас была буква диска Windows, содержащая удаленный каталог.