SSHFS: монтування віддаленої папки через SSH

SSHFS підключає каталог віддаленого сервера як звичайну локальну папку. На сервері нічого встановлювати не потрібно: достатньо робочого SSH. Це зручно, коли потрібно редагувати файли на сервері у звичному редакторі або швидко скопіювати дані.
Встановлення
Ubuntu і Debian:
sudo apt install sshfs
Fedora, AlmaLinux, Rocky Linux:
sudo dnf install fuse-sshfs
Arch Linux:
sudo pacman -S sshfs
macOS: встановіть macFUSE і пакет SSHFS із сайту проєкту macFUSE.
Windows: встановіть WinFsp і SSHFS-Win, після чого мережевий диск підключається в Провіднику за адресою на кшталт \\sshfs\user@203.0.113.10.
Монтування
Створіть точку монтування й підключіть віддалений каталог:
mkdir -p ~/remote
sshfs user@203.0.113.10:/var/www ~/remote
Якщо шлях після двокрапки не вказано, підключиться домашній каталог користувача. Тепер із файлами в ~/remote можна працювати як із локальними.
Корисні параметри
sshfs user@203.0.113.10:/var/www ~/remote \
-p 2222 \
-o IdentityFile=~/.ssh/id_ed25519 \
-o reconnect,ServerAliveInterval=15,ServerAliveCountMax=3
-p 2222— нестандартний порт SSH;IdentityFile— вхід за ключем замість пароля;reconnectразом ізServerAliveInterval— автоматичне перепідключення після обриву зв’язку; без них у разі втрати мережі папка «зависає»;allow_other— доступ до папки для інших користувачів системи. Потребує рядкаuser_allow_otherу/etc/fuse.conf;ro— підключення лише для читання.
Якщо сервер описано в ~/.ssh/config, як показано в статті про підключення по SSH, команда скорочується до sshfs web:/var/www ~/remote.
Відключення
fusermount -u ~/remote
У macOS використовуйте umount ~/remote. Якщо папка зайнята, знайдіть процес командою lsof +D ~/remote або відключіть примусово: fusermount -uz ~/remote.
Автомонтування через fstab
Додайте рядок у /etc/fstab:
user@203.0.113.10:/var/www /mnt/remote fuse.sshfs noauto,x-systemd.automount,_netdev,reconnect,ServerAliveInterval=15,IdentityFile=/home/user/.ssh/id_ed25519,allow_other 0 0
Параметри noauto,x-systemd.automount підключають каталог під час першого звернення до нього, а не під час завантаження — система не чекатиме мережу на старті. Ключ має бути без пароля, а відбиток сервера — уже збережений у known_hosts користувача root.
Застосуйте налаштування:
sudo systemctl daemon-reload
sudo systemctl restart remote-fs.target
Обмеження
- Швидкість. Кожна операція з файлом іде через мережу й шифрування. Для каталогів із тисячами дрібних файлів SSHFS помітно повільніший за NFS.
- Не для баз даних. Не розміщуйте на SSHFS файли СУБД та інші дані з інтенсивним записом.
- Розвиток проєкту. SSHFS перебуває в режимі підтримки: нові функції не додаються, але пакет залишається в репозиторіях усіх основних дистрибутивів і стабільно працює.
Альтернативи
- Для разового копіювання простіші scp або rsync.
- Для хмарних сховищ і S3 підійде rclone mount.
- Для резервних копій використовуйте окреме сховище файлів і бекапів.
Відеоінструкція



