Wie mountet man Objektspeicher-Container als Dateisystem in Linux mit s3fs?

Wenn Sie einen neuen Object Storage Container erstellen möchten, folgen Sie dieser Anleitung: Wie verwendet man den Objektspeicher?.

Um Ihren Object Storage Container als Dateisystem zu mounten, führen Sie folgende Schritte aus:

Überprüfen Sie, ob s3fs auf Ihrer virtuellen Maschine vorinstalliert ist:

eouser@vm1:~$ whereis s3fs
s3fs: /usr/local/bin/s3fs

Geben Sie den Zugang und den geheimen Schlüssel zur Datei .passwd-s3fs in Ihrem Home-Verzeichnis frei:

eouser@vm1:~$ echo access_key:secret_key>~/.passwd-s3fs

Um ec2-Zugangsdaten zu erhalten, folgen Sie bitte dieser FAQ: Erstellen und Verwalten von EC2-Anmeldedaten auf CODE-DE oder senden Sie eine Anfrage an den Support, indem Sie ein neues Ticket auf Helpdesk und Support erstellen.

Erstellen Sie einen Ordner, den Sie als Einhängepunkt für den Bucket verwenden möchten:

eouser@vm1:~$ chmod 600 ~/.passwd-s3fs

Erstellen Sie einen Ordner, den Sie als Einhängepunkt für den Bucket verwenden möchten:

eouser@vm1:~$ mkdir directory

Einhängen eines Containers mit s3fs:

eouser@vm1:~$ /usr/local/bin/s3fs testjohn directory -o passwd_file=~/.passwd-s3fs -o url=https://https://s3.fra1-1.cloudferro.com -o use_path_request_style -o umask=0002 -o allow_other

Erklärung der Parameter:

-o passwd file = Beschreibung des Pfades zur Datei mit den Anmeldedaten

-o url = Beschreibung einer Endpunktadresse Ihres privaten Objektspeichers

-o use path_request style = Parameter, der bereits Probleme mit Sonderzeichen wie Punkten behebt.

-o umask = Beschreibung der Rechte für den Zugriff auf einen Container (lesen-schreiben-ausführen)

-o allow_other = die Regel, die anderen Benutzern den Zugang zum Container ermöglicht

Wenn Sie eine Operation nicht als Root-Benutzer durchführen, kann eine Fehlermeldung wie die folgende auftreten:

Warnung

fusermount: Option allow_other ist nur erlaubt, wenn ‚user_allow_other‘ in /etc/fuse.conf gesetzt ist

In diesem Fall öffnen Sie die Datei /etc/fuse.conf mit einem Texteditor, z. B. nano

eouser@vm1:~$ sudo nano /etc/fuse.conf

und suchen Sie die Zeile:

# Allow non-root users to specify the allow_other or allow_root mount options.

#user_allow_other

Entfernen Sie das Kommentarzeichen user_allow_other durch Löschen von #:

user_allow_other

Speichern Sie die Datei.

Nun können Sie den Mount-Befehl wiederholen

eouser@vm1:~$ /usr/local/bin/s3fs testjohn directory -o passwd_file=~/.passwd-s3fs -o url=https://https://s3.fra1-1.cloudferro.com -o use_path_request_style -o umask=0002 -o allow_other

Wechseln Sie dann in das Verzeichnis, in dem Ihr Bucket gemountet ist, und listen Sie alle darin enthaltenen Daten auf:

eouser@vm1:~$ cd directory/
eouser@vm1:~/directory$ ls -al
total 5
drwxrwxr-x 1 eouser eouser    0 Jan  1  1970 .
drwxr-xr-x 8 eouser eouser 4096 Oct 27 07:05 ..
-rwxrwxr-x 1 eouser eouser   15 Oct 27 07:17 tes1.txt

Es wurde eine einzige Datei gefunden: tes1.txt. Um sich von der Existenz dieser Datei zu überzeugen, melden Sie sich in Ihrem Horizon Panel an und klicken Sie auf die Registerkarte Objektspeicher.

../_images/mountos1.png

Wählen Sie Containers.

../_images/mountos2.png

Klicken Sie auf den Container. In diesem Fall wird er testjohn genannt.

../_images/mountos3.png

Auf der rechten Seite sind die Dateien, die im Bucket gespeichert sind.