Also soll etwas zusätzliches her. Von Amazon S3 (Simple Storage Service) hat man gutes gehört. Gerüchten zufolge soll der Service aber in Mordor gehosted sein, und mit denen da hat man nun schon wirklich genug Ärger gehabt. Die Idee hinter S3 ist aber nicht verkehrt: die Daten werden in sogenannten Buckets (also Eimern) als Objekte gesammelt. Weitere Hierarchiestufen gibt es nicht; auch die Berechtigungen lassen sich nur auf Stufe Bucket festlegen.
Als Implementierung soll jedoch das freie MinIO zum Einsatz kommen. Dafür gibt es zwar kein offizielles Debian-Paket; typisch für Go-Anwendungen lässt es sich aber als einzelne Binärdatei herunterladen. So hat sich Gondor bereiterklärt, das Hosting zu übernehmen. Und so wird MinIO installiert und konfiguriert:
Code: Alles auswählen
faramir@gondor:~$ wget https://dl.min.io/server/minio/release/linux-amd64/minio
faramir@gondor:~$ chmod +x minio
faramir@gondor:~$ cat >> ~/.bashrc
export MINIO_ROOT_USER=aragorn
export MINIO_ROOT_PASSWORD=arwen_mein_schaetzle
[Ctrl]-[D]
faramir@gondor:~$ . ~/.bashrc
faramir@gondor:~$ mkdir ~/minio-data
Code: Alles auswählen
faramir@gondor:~$ ./minio server minio-data/
Stattdessen verwenden wir mc: den MinIO-Client für die Kommandozeile. Auch den müssen wir herunterladen und ausführbar machen:
Code: Alles auswählen
faramir@gondor:~$ wget https://dl.min.io/client/mc/release/linux-amd64/mc
faramir@gondor:~$ chmod +x mc
Code: Alles auswählen
faramir@gondor:~$ ./mc alias set local http://localhost:9000 aragorn arwen_mein_schaetzle
Added `local` successfully.
Code: Alles auswählen
faramir@gondor:~$ ./mc mb local/innovationen
Bucket created successfully `local/innovationen`.
Code: Alles auswählen
faramir@gondor:~$ wget https://debianforum.de/forum/gallery/image/3893/source -O frittierwagen.png
faramir@gondor:~$ ./mc cp frittierwagen.png local/innovationen/
faramir@gondor:~$ ./mc ls local/innovationen/
[2022-12-21 21:14:13 CET] 1.9MiB STANDARD frittierwagen.png
Code: Alles auswählen
eomer@rohan:~$ sudo apt install -y s3cmd
eomer@rohan:~$ cat > ~/.s3cfg
host_base = gondor:9000
host_bucket = gondor:9000
use_https = False
access_key = aragorn
secret_key = arwen_mein_schaetzle
[Ctrl]-[D]
eomer@rohan:~$ s3cmd ls s3://innovationen
2022-12-21 20:14 1965381 s3://innovationen/frittierwagen.png
Der Zugriff auf den Bucket im entfernten Gondor funktioniert. So schickt man schnell ein paar Feriengrüsse dorthin:
Code: Alles auswählen
eomer@rohan:~$ wget https://debianforum.de/forum/gallery/image/3893/source -O ansichtskarte.png
eomer@rohan:~$ s3cmd put ansichtskarte.png s3://innovationen
Code: Alles auswählen
faramir@gondor:~$ ./mc ls local/innovationen
[2022-12-21 21:41:27 CET] 1.9MiB STANDARD ansichtskarte.png
[2022-12-21 21:14:13 CET] 1.9MiB STANDARD frittierwagen.png
faramir@gondor:~$ ./mc cp local/innovationen/ansichtskarte.png .
Code: Alles auswählen
faramir@gondor:~$ sudo apt install -y s3fs
faramir@gondor:~$ cat > ~/.passwd-s3fs
aragorn:arwen_mein_schaetzle
[Ctrl]-[D]
faramir@gondor:~$ chmod 600 ~/.passwd-s3fs
faramir@gondor:~$ mkdir ~/innovationen
faramir@gondor:~$ s3fs innovationen ~/innovationen -o use_path_request_style,url=http://localhost:9000
faramir@gondor:~$ ls ~/innovationen/
ansichtskarte.png frittierwagen.png
faramir@gondor:~$ du -h ~/innovationen/*
1.9M /home/faramir/innovationen/ansichtskarte.png
1.9M /home/faramir/innovationen/frittierwagen.png
Code: Alles auswählen
faramir@gondor:~$ umount ~/innovationen
Habt Ihr für sowas einen Verwendungszweck? Von verschiedenen „heimischen Clouds“ für die Datenablage haben wir im diesjährigen Kalender so einiges lesen können. Passt MinIO/S3 für euch da irgendwo hinein?