FUSE#

FUSE это модуль ядра, который позволяет создавать в юзерспейсе файловые системы.

Ссылки:

SSHFS#

Ссылки:

Очень удобная ФС, позволяет монтировать удалённую ФС без всякого вмешательства на удалённый сервер. При этом работает весьма шустро. На самом деле операции с файлами делаются поверх SFTP. Пример монтирования ФС:

sudo sshfs root@opipc.localdomain:/mnt /mnt/storage -o allow_other,default_permissions,IdentityFile=/home/gd/.ssh/opipc_rsa -o uid=1000 -o gid=1000

Размонтировать можно через fusermount:

fusermount -u /mnt/storage

umount /mnt/storage тоже ок, но в некоторых случаях не сработает: https://askubuntu.com/a/1046832

S3FS#

ФС позволяет примонтировать бакет S3-совместимого хранилища как каталог. Скорость работы невысокая, может тормозить листинг файлов.

Вот хорошая статья про s3fs с упоминанием его ограничений: https://www.scaleway.com/en/docs/tutorials/object-storage-s3fs/ (копия).

Для начала работы создаём файл с реквизитами в формате access_key:secret_key, например, ~/.passwd-s3fs (имя неважно) и запрещаем его читать всем, кроме владельца. Далее монтируем:

s3fs bucket /mnt -o url=https://s3.nl-ams.scw.cloud/,dbglevel=info,curldbg=body -o passwd_file=${HOME}/.passwd-s3fs-scw

Или в /etc/fstab:

s3fs#bucket /mnt/s3 fuse _netdev,allow_other,url=https://s3.nl-ams.scw.cloud,passwd_file=/root/.passwd-s3fs 0 0

Здесь bucket заменить на имя бакета. Если хранилище не поддерживает virtual-hosted style адресации бакетов, то нужно добавить опцию use_path_request_style.

Сборка s3fs из исходных кодов на Ubuntu 20.04:

apt install build-essential automake libcurl4-openssl-dev libxml2-dev pkg-config libssl-dev libfuse-dev git
git clone https://github.com/s3fs-fuse/s3fs-fuse.git
cd s3fs-fuse
./autogen.sh
./configure
make
make install

GOOFS#

Это ещё одна реализация файловой системы для S3-совместимых хранилищ — https://github.com/kahing/goofys

ФС написана на Golang. Документации нет, но должны работать общие конвенции для ФС FUSE. Если по каким-то причинам с s3fs совсем ничего не получается, то можно прибегнуть к этой реализации.

DAVFS#

WebDAV. По скорости работы сравним с s3fs.

Ссылки:

На сервер надо доставить непосредственно сам пакет davfs2, после чего поковыряться в нескольких конфигах.

Если мы работаем с Mail.ru, то надо поправить в /etc/davfs2/davfs2.conf:

use_locks       0

/etc/davfs2/secrets:

# Тут даные для авторизации в формате: <[schema]://host[:port]/[path]> <user> <password>
https://webdav.mail.ru      xxxxxxxx@mail.ru      8wATE1q48BQk0TRGB6vJ

Если опять таки работаем с Mail.ru, то он просит добавить специальный пароль для «стороннего приложения» по ссылке https://e.mail.ru/settings/2-step-auth (документация: https://help.mail.ru/mail/security/protection/external). Этот специальный пароль и нужно здесь указывать.

/etc/fstab:

https://webdav.mail.ru /mnt/webdav davfs uid=1000,gid=1000,user,rw,noauto 0 0

После этого монтировать можно просто командой mount /mnt/webdav.

CurlFtpFS#

По названию можно догадаться, что эта ФС позволяет монтировать FTP-хранилища и работает через libcurl. На практике пока использовать не приходилось, но выглядит интересно. Поддерживается подключение через SOCKS-прокси и SSL.