S3-Speicher Bucket unter Linux mounten (einbinden)
achtung
Der hier gezeigte weg, einen Bucket zu mounten, ist nicht rebootsicher!
Diese Anleitung erklärt, wie man einen S3-Objektspeicher als Linux-Ordner einbindet.1
Voraussetzungen
- S3 Storage
access_keysecret_key- S3 Bucket URL
- S3 bucket name
- Ordner (Mount-Punkt), in dem du den Inhalt deines Buckets verfügbar machen willst
- s3fs-fuse
Für access_key, secret_key und die S3 URL schau bitte in deinem S3 Provider Panel nach.
Warnung
Die folgenden Variablen sind Platzhalter für die Installation Ersetze sie entsprechend!
- Access Key =
your_access_key - Secret key =
your_secret_key - S3 URL =
https://your.s3-storage.com - bucket name =
Backup - mount point =
${HOME}/Backup
s3fs-fuse Installieren
info
Um mehr über s3fs-fuse zu erfahren, klick hier.
sudo apt install s3fs
Konfigurationsdatei erstellen
Erstelle eine Konfigurationsdatei mit access_key:secret_key
${HOME}/
echo your_access_key:your_secret_key > ${HOME}/.passwd-s3fs
Erforderliche Berechtigungen festlegen
${HOME}/
chmod 600 ${HOME}/.passwd-s3fs
Mountpunkt erstellen
${HOME}
mkdir ${HOME}/Backup
Bucket Mounten
Bucket Backup nach ${HOME}/Backup mounten
${HOME}/Backup
s3fs Backup ${HOME}/Backup -o passwd_file=${HOME}/.passwd-s3fs -o url=https://your.s3-storage.com -o use_path_request_style
Bucket inhalt anzeigen
${HOME}
ls -la ${HOME}/Backup
Im Allgemeinen kann S3 nicht die gleiche Leistung oder Semantik wie ein lokales Dateisystem bieten. Genauer gesagt:
| Zufällige Schreibvorgänge oder Anhänge an Dateien erfordern das Neuschreiben des gesamten Objekts, optimiert mit mehrteiliger Upload-Kopie |
| Metadatenoperationen wie das Auflisten von Verzeichnissen sind aufgrund der Netzwerklatenz schlecht |
| Anbieter, die nicht über AWS verfügen, verfügen möglicherweise über eine eventuelle Konsistenz, so dass Lesevorgänge vorübergehend veraltete Daten liefern können (AWS bietet seit Dezember 2020 eine Lese-nach-Schreib-Konsistenz). |
| keine atomaren Umbenennungen von Dateien oder Verzeichnissen |
| keine Koordinierung zwischen mehreren Clients, die denselben Bucket bestücken |
| keine hard links |
| inotify erkennt nur lokale Änderungen, keine externen Änderungen durch andere Clients oder Tools |