Обзор
sshfs монтирует файловую систему удаленного сервера в локальный каталог через SSH-соединение, позволяя получать доступ к удаленным файлам и управлять ими так, как если бы они были локальными. Это особенно полезно при частом редактировании удаленных файлов или работе с большими объемами данных.
Основные возможности
- На основе FUSE (Filesystem in Userspace)
- Передача данных через безопасное SSH-соединение
- Прямой доступ и редактирование удаленных файлов как локальных
- Предоставляет различные опции монтирования (права доступа, кэширование, сжатие и т. д.)
Установка
sshfs обычно не входит в стандартную комплектацию большинства дистрибутивов Linux, поэтому его необходимо установить через менеджер пакетов.
Debian/Ubuntu
sudo apt update && sudo apt install sshfs
Установка с использованием менеджера пакетов apt.
Fedora/CentOS/RHEL
sudo dnf install sshfs
Установка с использованием менеджера пакетов dnf (или yum).
Основные опции
sshfs предоставляет различные опции для тонкой настройки поведения монтирования. Большинство опций используются после флага `-o`, разделенные запятыми.
Соединение и права доступа
Производительность и поведение
Сгенерированная команда:
Комбинируйте команды.
Описание:
`sshfs` Запускает команду.
Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.
Примеры использования
Различные способы монтирования удаленного каталога в локальную систему с помощью sshfs и его использования.
Базовое монтирование
mkdir -p /local/mount/point
sshfs user@remote_host:/remote/path /local/mount/point
Монтирует `/remote/path` удаленного сервера в `/local/mount/point` локальной системы. Точка монтирования должна быть предварительно создана.
Использование определенного порта SSH
sshfs -o port=2222 user@remote_host:/remote/path /local/mount/point
Попытка установить SSH-соединение через другой порт (например, 2222) вместо стандартного порта 22.
Разрешить доступ другим пользователям
sshfs -o allow_other user@remote_host:/remote/path /local/mount/point
Позволяет другим пользователям, кроме монтировавшего, получать доступ к смонтированной файловой системе.
Использование файла ключа SSH
sshfs -o IdentityFile=~/.ssh/id_rsa user@remote_host:/remote/path /local/mount/point
Аутентификация с использованием файла ключа SSH вместо пароля.
Размонтирование
fusermount -u /local/mount/point
Размонтирует смонтированную файловую систему. `fusermount` используется для безопасного размонтирования FUSE-файловых систем.
Советы и предостережения
Полезные советы и моменты, на которые следует обратить внимание при использовании sshfs.
Важность размонтирования
После завершения работы обязательно размонтируйте файловую систему командой `fusermount -u <точка_монтирования>`. В противном случае система может стать нестабильной или возникнуть ошибки файловой системы.
Оптимизация производительности
В средах с высокой сетевой задержкой можно улучшить производительность, используя опцию `cache=yes`. Напротив, `compression=yes` может увеличить загрузку ЦП, поэтому используйте ее, учитывая баланс между пропускной способностью сети и ресурсами ЦП.
Проблемы с правами доступа
Опция `allow_other` позволяет другим пользователям получать доступ к смонтированной файловой системе. Используйте ее с осторожностью в отношении безопасности, и при необходимости вы можете монтировать с правами определенного пользователя/группы, используя опции `uid` и `gid`.
Автоматическое монтирование (fstab)
Для автоматического монтирования sshfs при загрузке системы можно отредактировать файл `/etc/fstab`. Однако этот метод требует дополнительной настройки, такой как аутентификация по ключу SSH, и может вызывать проблемы в зависимости от состояния сетевого подключения, поэтому настраивайте его с осторожностью.