> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://wiki.leviia.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# S3cmd : configuration et utilisation

## Pré-requis
* [Installer Python](https://learn.microsoft.com/fr-fr/windows/dev-environment/python?tabs=winget)
* [Installer s3cmd](https://s3tools.org/download) : 
Exécuter la commande depuis PowerShell ou Invite de commande :
```
py -m pip install s3cmd
```
* [Avoir créé vos identifiants](https://wiki.leviia.com/fr/article/creer-des-identifiants-stockage-objet-dans-votre-dashboard-leviia-s8twkx/) 

## Configuration de s3cmd
* Exécuter la commande de configuration 
```bash
py "C:\Users\<user_Windows>\AppData\Local\Programs\Python\Python314\Scripts\s3cmd" --configure
```

```bash
Access Key: <disponible dans le dashboard leviia>
Secret Key: <disponible dans le dashboard leviia>

Default Region: default
S3 Endpoint: <disponible dans le dashboard leviia>
DNS-style bucket+hostname:port template for accessing a bucket: %(bucket)s.{endpoint}
Encryption password: 
Path to GPG program: /usr/bin/gpg
Use HTTPS protocol: True
HTTP Proxy server name: 
HTTP Proxy server port: 0
Test access with supplied credentials? [Y/n] y
Please wait, attempting to list all buckets...
Success. Your access key and secret key worked fine :-)  
Now verifying that encryption works...
Not configured. Never mind.

Save settings? [y/N] y
```
## Paramétrage de s3cmd
Afin d'optimiser s3cmd selon votre connexion internet, il est possible de définir la taille des packets envoyés.
Pour cela il vous suffit d'utiliser l'option suivante :

`
--multipart-chunk-size-mb=5000
` 

Par défaut la valeur est à 15, il est possible de descendre à 5 au minimum (débit upload lent) ou de monter à 5000 (débit upload ultra-rapide).
Nous vous recommandons de tester différents réglages selon vos besoins. 
## Utilisation de s3cmd
### Information bucket
* Lister les buckets  
 `s3cmd ls`
* Lister le contenu d'un bucket
 `s3cmd ls s3://<nom_du_bucket>`
* Obtenir la taille de votre bucket
`s3cmd du s3://<nom_du_bucket>` 

### Action sur bucket
* Créer un nouveau bucket
 `s3cmd mb s3://<nom_du bucket>`
* Supprimer un bucket
`s3cmd rb s3://<nom_du bucket>`

### Gestion des fichiers
* Envoyer un fichier sur le nouveau bucket
 `s3cmd put index.html s3://<nom_du_bucket> --multipart-chunk-size-mb=5000`
* Envoyer un dossier sur le nouveau bucket
 `s3cmd put -r mondossier s3://<nom_du_bucket> --multipart-chunk-size-mb=5000`
* Télécharger un fichier
`s3cmd get s3://<nom_du_bucket>/fichier.html --multipart-chunk-size-mb=5000`
* Déplacer un fichier (Seulement si sur même bucket)
`s3cmd mv s3://<nom_du_bucket>/dossier1/fichier.html s3://<nom_du_bucket>/dossier2/fichier.html`