Hoe kan ik Objects gebruiken met s3cmd?

  Objects & Archive

Met de tool s3cmd kun je op een gemakkelijke wijze buckets en objecten in onze Objects diensten beheren. De tool is kosteloos beschikbaar via http://s3tools.org, en draait probleemloos op alle Linux distributies en Mac OS X.

We geven hieronder een beknopte uitleg van de meest gebruikte commando’s van s3cmd, voor een uitgebreide handleiding kun je op hier terecht (Engels). Verder is er via zoekmachines erg veel aanvullende informatie te vinden over deze tool.

Installatie

De installatiehandleiding van s3cmd is aanwezig in het pakket wat je kunt downloaden van http://s3tools.org. We gaan er in de volgende stappen vanuit dat je s3cmd hebt geïnstalleerd, of je gebruik gaat maken van de aanwezige versie op onze SSH servers.

Initiële configuratie

Als je de eerste keer het commando s3cmd uitvoert op de command line, dan krijgt je waarschijnlijk de volgende melding:

[xxx@host:~]$ s3cmd ERROR: /home/xxx/.s3cfg: None ERROR: Configuration file not available. ERROR: Consider using --configure parameter to create one.

Dit betekend dat er nog geen configuratie file bestaat. Deze maak je aan met het volgende commando:

s3cmd --configure`

Er worden een aantal vragen gesteld, beantwoord ze zoals hieronder.

  • Access Key: [Vul hier de verkregen Access Key in]
  • Secret Key: [Vul hier de verkregen Secret Key in]
  • Encryption password: [Vul hier het gewenste encryptie wachtwoord in]
  • Path to GPG program [/usr/bin/gpg]: [Enter]
  • Use HTTPS protocol [No]: Yes
  • Test access with supplied credentials? [Y/n] n
  • **Save settings? [y/N]: **y

Configuration saved to ‘/home/xxx/.s3cfg’

De configuratie is bijna klaar, het enige wat je nog moet doen is een tweetal wijzigingen maken in de configuratie file die je zojuist heeft aangemaakt zodat je met het juiste S3 platform verbind (Aurora Objects in dit geval).

Wijzig het configuratie bestand met je favoriete editor bijv.:

nano home/xxx/.s3cfg

In het bestand wijzig de volgende waarde:

host_base = s3.amazonaws.com host_bucket = %(bucket)s.s3.amazonaws.com

In:

host_base = o.auroraobjects.eu host_bucket = %(bucket)s.o.auroraobjects.eu

Dat was het, je kunt aan de slag!

Basis commando’s

Wanneer je s3cmd hebt geconfigureerd kun je je buckets en objecten gaan beheren. Objecten worden ondergebracht in buckets en als je net met uw Aurora Objects account aan de slag gaat heb je waarschijnlijk nog geen buckets of objecten.

Om je huidige buckets weer te geven gebruikt je het ls commando:

[xxx@host:~]$ s3cmd ls 2013-10-07 11:19 s3://test 2013-11-11 15:15 s3://backup

Om buckets aan te maken gebruik je het commando mb gevolgd door de volledige bucket naam, bijv:

[xxx@host:~]$ s3cmd mb s3://bucket1 Bucket 's3://bucket1/' created

Om objecten in een bucket te plaatsen gebruik je het put commando, bij voorkeur samen met de juiste toegangsregels (ACL) die bepalen of het object publiek (–acl-public) toegankelijk is, of enkel voor jou (–acl-private). Wanneer je geen ACL meegeeft, is het object standaard enkel voor jezelf toegankelijk en niet opvraagbaar via bijv. de webbrowser.

Om een object publiek beschikbaar te maken, gebruikt je bijv. het volgende put commando:

[xxx@host:~]$ s3cmd put --acl-public afbeelding.jpg s3://bucket1/afbeelding.jpg afbeelding.jpg -> s3://bucket1/afbeelding.jpg [1 of 1] 13298 of 13298 100% in 0s 120.83 kB/s done Public URL of the object is: http://bucket1.o.auroraobjects.eu/afbeelding.jpg

Zoals je kunt lezen, is het object publiekelijk toegankelijk op http://bucket1.o.auroraobjects.eu/afbeelding.jpg.
Mooi!

Om weer te geven welke objecten er in je bucket staan, gebruik je wederom het ls commando:

[xxx@host:~]$ s3cmd ls s3://bucket1 2013-11-11 15:16 13298 s3://bucket1/afbeelding.jpg 2013-11-11 15:24 13298 s3://bucket1/document.doc

Je hebt nu kennis kunnen maken met de meest gebruikte commando’s.

Overige commando’s

Om buckets te verwijderen gebruik je rb. bijv:

[xxx@host:~]$ s3cmd rb s3://bucket1

Om objecten te verwijderen gebruik je del, bijv:

[xxx@host:~]$ s3cmd del s3://bucket1/afbeelding.jpg

Om de toegangsregels (ACL) van een object aan te passen, gebruik je setacl, bijv:

[xxx@host:~]$ s3cmd setacl --acl-private s3://bucket1/afbeelding.jpg