Mount Neva Objects S3 with Rclone
Konten ini belum tersedia dalam bahasa Anda.
Artikel ini belum diterjemahkan. Isi berikut berbahasa Inggris. Buka versi asli bahasa Inggris.
Mount Neva Objects S3 with Rclone
Section titled “Mount Neva Objects S3 with Rclone”General-purpose S3 mount for Neva Objects using Rclone + FUSE. Works as a local filesystem bridge: any app that writes to /mnt/neva-s3 transparently uploads to your bucket.
1. Install Rclone & FUSE3
Section titled “1. Install Rclone & FUSE3”# FUSE3 (required for mount)sudo dnf install fuse3 -y
# Rclone via official install scriptsudo -v ; curl https://rclone.org/install.sh | sudo bashFor Debian/Ubuntu: replace dnf with apt.
2. Configure Rclone
Section titled “2. Configure Rclone”mkdir -p ~/.config/rclone~/.config/rclone/rclone.conf (or /root/.config/rclone/rclone.conf for systemd):
[neva-s3]type = s3provider = Otheraccess_key_id = YOUR_ACCESS_KEYsecret_access_key = YOUR_SECRET_KEYendpoint = https://s3.nevaobjects.idforce_path_style = truev2_auth = true
v2_auth = trueis mandatory. Neva Objects routes through a reverse proxy/gateway, and without v2 signing the signature hash breaks, causing 403 errors.
3. Create Mount Point
Section titled “3. Create Mount Point”sudo mkdir -p /mnt/neva-s34. Systemd Service (Auto-Mount on Boot)
Section titled “4. Systemd Service (Auto-Mount on Boot)”/etc/systemd/system/rclone-neva-s3.service:
[Unit]Description=Rclone Mount: Neva Objects S3After=network-online.target
[Service]Type=simpleExecStartPre=/bin/mkdir -p /mnt/neva-s3ExecStart=/usr/bin/rclone mount neva-s3:YOUR-BUCKET-NAME /mnt/neva-s3 \ --config /root/.config/rclone/rclone.conf \ --allow-other \ --vfs-cache-mode full \ --vfs-cache-max-size 10GExecStop=/usr/bin/fusermount3 -uz /mnt/neva-s3Restart=on-failureRestartSec=10
[Install]WantedBy=multi-user.target
--vfs-cache-mode fullbuffers writes on local disk/memory before uploading. This is what makes apps that need POSIX locking (Borg, SQLite, any tool creating.lockfiles) work: the lock file lives in cache, not on S3 directly.
--vfs-cache-max-size 10Gtunes the cache ceiling to your available disk space. The cache dir defaults to~/.cache/rclone.
5. Enable & Start
Section titled “5. Enable & Start”sudo systemctl daemon-reloadsudo systemctl enable --now rclone-neva-s3.servicesudo systemctl status rclone-neva-s3.service # should show "active (running)"6. Verify
Section titled “6. Verify”ls /mnt/neva-s3echo "hello neva" | sudo tee /mnt/neva-s3/test.txtcat /mnt/neva-s3/test.txtIf ls shows your bucket contents and the test file writes successfully, you’re done. Any application can now read/write /mnt/neva-s3 as if it were a local directory: Rclone handles the upload/download in the background.
Quick Troubleshooting
Section titled “Quick Troubleshooting”| Symptom | Fix |
|---|---|
| 403 Forbidden on mount | Verify v2_auth = true is set in rclone.conf |
| ”Transport endpoint not connected” | sudo fusermount3 -uz /mnt/neva-s3 then restart the service |
| Mount works but writes are slow | Increase --vfs-cache-max-size or use --vfs-write-back 5m for batching |
| Permission denied for non-root | --allow-other is set; also check /etc/fuse.conf has user_allow_other uncommented |
Manual Mount (One-Off, No Systemd)
Section titled “Manual Mount (One-Off, No Systemd)”rclone mount neva-s3:YOUR-BUCKET-NAME /mnt/neva-s3 \ --vfs-cache-mode full \ --daemonThe --daemon flag backgrounds it. Use fusermount3 -u /mnt/neva-s3 to unmount.