Конечно, нет недостатка в решениях, когда речь идет о синхронизации файлов между двумя устройствами.
Хотя Google Drive и Microsoft OneDrive могут не предоставлять вам официальные клиенты Linux, NextCloud и другие предоставляют.
Но, возможно, вы не доверяете большой корпорации для хранения ваших файлов.
Или, может быть, вы хотите больше безопасности, чем предлагает NextCloud.
Со всеми своими компонентами, которые входят в создание чего-то вроде NextCloud, есть вероятность, что у него больше не обнаруженных дыр в безопасности, чем у более простых решений.
Зачем использовать SSHFS?
С точки зрения конечного пользователя, это очень просто в использовании.
Кроме того, он невероятно защищен, поскольку использует надежный и проверенный сервер OpenSSH.
Шифрование также на высшем уровне, так что вы можете быть уверены, что никто не сможет украсть ваши файлы, пока они находятся в пути.
Правильно настроенный современный сервер, который прослушивает только SSH-соединения, обычно невозможно взломать всем, кроме самых опытных атакующих (например, NSA, специалистов по безопасности и т. д.).
Почему вы не хотите использовать SSHFS
Если вы хотите максимально возможную скорость передачи, вы можете использовать другие решения, такие как NFS.
SSHFS не самая медленная, если у вас высокое качество интернет-соединения, но и не самая быстрая.
И если вы хотите перенести каталоги, которые содержат сотни маленьких файлов, это становится ужасным вариантом.
Кроме того, если вы хотите настроить параметры общего доступа к файлам на основе индивидуальных пользователей или других факторов, вы можете использовать другое программное обеспечение.
Подводя итог, если все, что вам нужно, это простой и безопасный способ синхронизации удаленного каталога с локальным и не спешащий, вы, вероятно, будете удовлетворены этим решением.
Установить SSHFS
На Arch Linux используйте эту команду:
sudo pacman -S sshfs
Fedora:
sudo dnf install sshfs
На Debian, Ubuntu и подобных:
sudo apt install sshfs
OpenSUSE:
sudo zypper install sshfs
Конфигурация сервера
Если вы арендуете сервер или VPS, демон сервера OpenSSH уже настроен.
Выполните действия, рекомендованные поставщиком облачных услуг, для настройки обычного пользователя (без полномочий root).
Некоторые позволяют вам делать это прямо с веб-панели управления и даже позволяют импортировать открытый ключ, чтобы разрешить доступ по SSH.
В этом случае сгенерируйте пары ключей локально с помощью команды ssh-keygen.
✗ Основы Linux: как создавать и устанавливать SSH-ключи в шелле ✗
После этого импортируйте открытый ключ из «/home/your_username/.ssh/id_rsa.pub».
Если облачный провайдер не предлагает инструмент для простого импорта открытых ключей SSH, сделайте это вручную.
По крайней мере, запретите вход в систему для root и отключить вход с паролем.
Вместо этого используйте исключительно ключи SSH: их невозможно взломать, как в случае с паролями.
Если вы хотите синхронизировать файлы между двумя компьютерами дома, просто рассматривайте один как сервер (установите пакет openssh-server и настройте его), а другой – как клиент. Применяются те же шаги.
Смонтировать удаленный каталог локально с помощью SSHFS
Сначала создайте каталог, который будет синхронизироваться с удаленной стороной.
mkdir $HOME/sshfs
Затем подключите удаленный каталог локально через SSHFS.
Замените «user» на фактическое имя пользователя, созданное на вашем сервере, а «203.0.113.1» на фактический IP-адрес вашего удаленного экземпляра.
sshfs user@203.0.113.1:/home/user $HOME/sshfs
Конечно, если вы не хотите синхронизировать весь домашний каталог пользователя на стороне сервера, просто замените «/home/user» на «/home/user/ some_other_directory» после того, как вы создадите его на сервере.
Если вы хотите размонтировать, используйте эту команду:
cd && fusermount -u $HOME/sshfs
Заключение
Если вы хотите, чтобы каталог постоянно синхронизировался с удаленной стороной, добавьте команду вроде sshfs user@203.0.113.1: /home/user$HOME/sshfs в диспетчере автозапуска.
Каждый графический менеджер имеет свой собственный менеджер конфигурации автозапуска, поэтому обратитесь к справочному руководству по вашей среде рабочего стола.
Некоторые источники рекомендуют добавлять запись в «/etc/fstab», но мы советуем вам избегать этого, так как сбой при монтировании каталога может привести к невозможности полной загрузки вашей системы.