SSHFS (Secure SHell FileSystem) позволяет получить доступ к удаленной файловой системе и взаимодействовать с ней так, как если бы она была локальной. Это достигается путем монтирования удаленной файловой системы через защищенное SSH-соединение. Этот метод является альтернативой другим протоколам удаленных файловых систем, таким как SAMBA/CIFS или NFS.
SSHFS работает по протоколу SFTP и требует SSH-доступа к удаленному серверу. Кроме того, пользователь SSH на удаленном сервере должен иметь соответствующие права на каталог, который вы хотите смонтировать.
Чтобы смонтировать удаленную файловую систему хоста с поддержкой SSH как локальную, вам нужно установить и настроить SSHFS через командную строку. Для простой передачи или копирования файлов без монтирования удаленной файловой системы используйте scp или sftp.
Шаги по монтированию удаленной файловой системы с помощью SSHFS
Откройте терминал.
Установите SSHFS на локальном хосте.
1 | sudo apt update && sudo apt install --assume-yes sshfs |
1 | sudo dnf --enablerepo=PowerTools --assumeyes install fuse-sshfs |
Убедитесь, что у вас есть SSH-доступ к удаленному узлу.
1 | ssh remote-user@192.168.11.20 |
Создайте новый локальный каталог для точки монтирования удаленной файловой системы, если таковой еще не существует.
1 | mkdir -p /home/localuser/remote |
Вручную смонтируйте удаленную файловую систему с помощью SSHFS.
1 | sshfs remoteuser@192.168.11.20:/home/remoteuser/shared /home/localuser/remote |
Убедитесь, что монтирование прошло успешно.
1 | df -h |
Пример вывода
1 2 3 4 | Filesystem Size Used Avail Use% Mounted on tmpfs 391M 1.8M 389M 1% /run ... remoteuser@192.168.11.20:/home/remoteuser/shared 20G 6.4G 12G 35% /home/localuser/remote |
Получите доступ к точке монтирования, чтобы проверить ее работоспособность.
1 | touch /home/localuser/remote/file.txt |
Размонтируйте удаленную файловую систему SSHFS.
1 | umount /home/localuser/remote |
Убедитесь, что размонтирование прошло успешно.
1 | df -h |
Откройте файл /etc/fstab с помощью удобного текстового редактора, чтобы настроить автоматическое монтирование с помощью SSHFS во время запуска системы.
1 | sudo nano /etc/fstab |
Для этого метода требуется SSH без пароля, настроенный для пользователя.
Добавьте запись SSHFS в /etc/fstab.
1 | sshfs#[email protected]:/home/remoteuser/shared /home/localuser/remote fuse user,_netdev,reconnect,uid=1000,gid=1000,idmap=user 0 0 |
Используйте команду id для получения uid и gid пользователя.
1 | id |
Пример вывода
1 | uid=1000(user) gid=1000(user) groups=1000(user),4(adm),24(cdrom),27(sudo)... |
Смонтируйте удаленную файловую систему через /etc/fstab.
1 | mount /home/localuser/remote |
Убедитесь, что монтирование прошло успешно.
1 | df -h |
Пример вывода
1 2 3 4 | Filesystem Size Used Avail Use% Mounted on tmpfs 391M 1.9M 389M 1% /run ... remoteuser@192.168.11.20:/home/remoteuser/shared 20G 6.4G 12G 35% /home/localuser/remote |