1. Установите s3fs
Для Ubuntu/Debian:

sudo apt update
sudo apt install s3fs

Для CentOS/RHEL:

sudo yum install epel-release
sudo yum install s3fs-fuse

🔐 2. Создайте файл с доступом к вашему бакету

echo ACCESS_KEY_ID:SECRET_ACCESS_KEY > ~/.passwd-s3fs
chmod 600 ~/.passwd-s3fs

Замените ACCESS_KEY_ID и SECRET_ACCESS_KEY на реальные данные от провайдера.

📁 3. Создайте точку монтирования

mkdir -p /home/bitrix/www/upload

🪝 4. Подключите S3-бакет в папку
Пример для Hetzner /Selectel / 1stVDS / другого S3-совместимого хранилища:

s3fs your-bucket-name /home/bitrix/www/upload \
-o url=https://s3.eu-central-1.hetzner.cloud \
-o use_path_request_style \
-o allow_other \
-o passwd_file=/root/.passwd-s3fs \
-o uid=600 -o gid=600

📌 Опции:
bucket-name — имя бакета.

url=… — URL S3 совместимого endpoint’а.

use_path_request_style — для работы с кастомными endpoint’ами (важно!).

passwd_file=… — где лежат ключи.

allow_other — доступ другим пользователям (нужен, если веб-сервер работает от другого юзера).

uid, gid — права на пользователя и группу (например, bitrix).

umask — маска прав на файлы (например, 0022 → 755/644).

🔁 5. Добавьте в автозагрузку (по желанию)
Добавьте строку в /etc/fstab, чтобы монтировалось при старте:

echo "your-bucket-name /home/bitrix/www/upload fuse.s3fs _netdev,allow_other,url=https://s3.eu-central-1.hetzner.cloud,use_path_request_style,passwd_file=/root/.passwd-s3fs,uid=600,gid=600 0 0" >> /etc/fstab

Затем:

sudo mount -a

📤 6. Проверка
Загрузите файл и убедитесь, что он появился в бакете и наоборот:

[/php]
echo ‘Hello from Bitrix!’ > /home/bitrix/www/upload/test.txt
ls /home/bitrix/www/upload
[/php]

🛑 7. Отмонтирование (если нужно)

fusermount -u /home/bitrix/www/upload