Перейти к содержимому

SSHFS — подключаем файловую систему по SSH

    SSHFS — клиент, который позволяет монтировать удаленную файловую систему и взаимодействовать с удаленными каталогами и файлами на локальной машине с использованием протокола SSH File Transfer Protocol (SFTP).

    Установка SSHFS

    Ubuntu/Debian

    sudo apt-get install sshfs
    

    CentOS

    sudo yum install sshfs
    
    

    macOS

    brew cask install osxfuse brew install sshfs
    

    Монтирование файловой системы

    Для монтирования файловой системы нам нужно создать точку монтирования на локальном компьютере. Создадим папку remotefs в домашней папке вашего пользователя.

    mkdir ~/remotefs

    Команда монтирования выглядит следующим образом

    sshfs имя_пользователя@ip_адрес:/удаленный/путь /точка/монтирования


    Для монтирования удаленной папки /var/www/unixhost на сервере unixvds.host от пользователя root в папку /home/unixuser/remotefs нам нужно выполнить следующую команду

    sshfs [email protected]:/var/www/unixhost /home/unixuser/remotefs

    Для того чтобы размонтировать примонтированную файловую систему достаточно выполнить команду umount и указать папку в которую файловая система была примонтирована

    umount /home/unixuser/remotefs

    Автоматическое монтирование SSHFS

    Для того чтобы удаленная файловая система монтировалась при загрузки системы, нужно в файл /etc/fstab добавить строку монтирования

    /var/www/unixhost /home/unixuser/remotefs  fuse.sshfs noauto,x-systemd.automount,_netdev,follow_symlinks,allow_other,default_permissions,reconnect 0 0

    Опции SSHFS

    Если для подключения к серверу вы используете SSH ключ то вы должны указать путь к вашему ключу используя опцию IdentityFile

    sshfs [email protected]:/var/www/unixhost /home/unixuser/remotefs -o IdentityFile=/ssh/key/path

    В случаи если по каким-либо причинам связь с вашим удаленным сервером нестабильная и постоянно обрывается то для того чтобы при разрыве связи не выполнять подключение повторно, в качестве опции, достаточно указать -o reconnect

    sshfs [email protected]:/var/www/unixhost /home/unixuser/remotefs -o reconnect