Tous les produits
Search
Centre de documentation

Object Storage Service:sync (Synchronize OSS objects to a local computer)

Dernière mise à jour :Sep 24, 2026

La commande sync synchronise les objets d'un répertoire OSS vers un répertoire local.

Remarques sur l'utilisation

  • Nom du binaire

    Pour ossutil 1.6.16 et versions ultérieures, vous pouvez utiliser ossutil directement comme nom de binaire dans la ligne de commande. Il n'est pas nécessaire de modifier le nom du binaire en fonction du système d'exploitation. Si vous utilisez une version d'ossutil antérieure à la 1.6.16, adaptez le nom du binaire à votre système d'exploitation. Pour plus d'informations, consultez la page Référence des commandes ossutil.

  • Nombre de fichiers

    Lorsque vous exécutez la commande sync sans l'option --delete, il n'y a aucune limite au nombre de fichiers que vous pouvez synchroniser en une seule fois. Si vous incluez l'option --delete, vous pouvez synchroniser jusqu'à 1 million de fichiers à la fois. Si le nombre de fichiers à synchroniser dépasse 1 million, l'erreur over max sync numbers 1000000. est renvoyée.

  • Différences avec la commande cp

    • Par défaut, la commande sync parcourt de manière récursive tous les objets et sous-répertoires. La commande cp nécessite l'option -r pour les opérations récursives.

    • La commande sync prend en charge l'option --backup-dir afin d'enregistrer les fichiers présents uniquement dans la destination vers un dossier de sauvegarde. La commande cp ne prend pas en charge l'option --backup-dir.

    • La commande sync ne prend pas en charge l'option --version-id ; elle ne peut donc pas synchroniser les versions précédentes des objets. La commande cp prend en charge l'option --version-id.

    Les commandes sync et cp partagent toutes les autres options. Consultez la page cp (Télécharger des fichiers).

Format de la commande

ossutil sync cloud_url  file_url
[-f --force]
[-u --update]
[--maxdownspeed <value>]
[--delete]
[--backup-dir <value>]
[--enable-symlink-dir]
[--disable-all-symlink]
[--disable-ignore-error]
[--only-current-dir]
[--output-dir <value>]
[--bigfile-threshold <value>]
[--part-size <value>]
[--checkpoint-dir <value>]
[--range <value>]
[--encoding-type <value>]
[--snapshot-path <value>]
[--include <value>]
[--exclude <value>]
[--disable-crc64]
[--payer <value>]
[-j, --job <value>]
[--parallel <value>]
[--retry-times <value>]

Paramètres et options :

Paramètre ou option

Description

cloud_url

Le chemin du répertoire source OSS au format oss://bucketname/path/. Exemple : oss://examplebucket/exampledir/. Si cloud_url ne se termine pas par une barre oblique (/), ossutil en ajoute une automatiquement.

file_url

Le chemin du dossier de destination local. Exemple : /localfolder/ (Linux) ou D:\\localfolder\\ (Windows).

-f --force

Force l'exécution de l'opération sans demande de confirmation.

-u, --update

Synchronise uniquement lorsque le fichier de destination est manquant ou que l'objet source est plus récent.

--maxdownspeed

Vitesse de téléchargement maximale en Ko/s. Valeur par défaut : 0 (illimité).

--delete

Supprime les fichiers de destination qui n'existent pas dans le répertoire source OSS.

Avertissement

Activez la gestion des versions avant d'utiliser --delete afin d'éviter toute perte accidentelle de données.

--backup-dir

Enregistre les fichiers présents uniquement dans la destination vers le dossier de sauvegarde spécifié, au lieu de les supprimer.

--enable-symlink-dir

Synchronise les sous-répertoires liés par des liens symboliques.

--disable-all-symlink

Ignore tous les liens symboliques (fichiers et répertoires) lors de la synchronisation.

--disable-ignore-error

Interrompt l'exécution en cas d'erreur lors des opérations par lot, au lieu de les ignorer.

--only-current-dir

Synchronise uniquement les objets du répertoire actuel, en excluant les sous-répertoires.

--output-dir

Le répertoire destiné aux fichiers de rapport d'erreur générés lors de la synchronisation par lot.

Valeur par défaut : ossutil_output dans le répertoire actuel.

--bigfile-threshold

Seuil de taille pour le téléchargement avec reprise, en octets.

Valeur par défaut : 100 Mo

Plage de valeurs : 0 à 9223372036854775807

--part-size

Taille des parties en octets. Par défaut, ossutil calcule la taille des parties en fonction de la taille de l'objet.

Plage de valeurs : 1 à 9223372036854775807

--checkpoint-dir

Le répertoire contenant les données de point de contrôle pour le téléchargement avec reprise. En cas d'échec d'un téléchargement avec reprise, ossutil crée un répertoire .ossutil_checkpoint pour enregistrer les informations de point de contrôle. Ce répertoire est supprimé après un téléchargement réussi. Si vous spécifiez un répertoire personnalisé, assurez-vous qu'il peut être supprimé.

--range

Télécharge la plage d'octets spécifiée depuis l'objet et l'enregistre sous forme de nouveau fichier. Utilise une numérotation à partir de zéro.

  • Spécifier une plage

    Par exemple, 3-9 télécharge du 3e au 9e octet (inclus).

  • Spécifier une position de départ

    Par exemple, 3- télécharge du 3e octet jusqu'à la fin du fichier.

  • Spécifier une position de fin

    Par exemple, -9 télécharge depuis le début du fichier jusqu'au 9e octet (inclus).

--encoding-type

Méthode d'encodage pour les noms d'objets. Valeur valide : url. Par défaut : aucun encodage.

--snapshot-path

Le répertoire contenant les instantanés de synchronisation. ossutil lit les instantanés depuis ce répertoire pour effectuer une synchronisation incrémentielle lors des exécutions suivantes.

--include

Inclut uniquement les objets correspondant au modèle spécifié.

Pour plus d'informations, consultez les options --include et --exclude.

--exclude

Exclut les objets correspondant au modèle spécifié.

Pour plus d'informations, consultez les options --include et --exclude.

--disable-crc64

Désactive la validation des données CRC-64.

--payer

Payeur de la requête. Définissez cette option sur requester pour facturer les frais de trafic et de requête au demandeur.

-j, --job

Nombre de tâches simultanées pour les opérations multi-objets. Valeur par défaut : 3. Plage : 1 à 10000.

--parallel

Nombre de tâches simultanées pour les opérations mono-objet. Plage : 1 à 10000. Par défaut, ossutil détermine la valeur en fonction du type d'opération et de la taille de l'objet.

--retry-times

Nombre de tentatives en cas d'erreur. Valeur par défaut : 10. Plage : 1 à 500.

Vérifier les résultats de la synchronisation

Vérifiez que tous les objets ont été transférés correctement :

  • Vérifier le nombre de fichiers

    Comparez le nombre d'objets entre OSS et les répertoires locaux :

    # Count files in the local directory.
    ls -1 /local/dir/ | wc -l
    
    # Count objects in the OSS directory.  
    ossutil ls oss://bucket/dir/ -r | grep "^oss://" | wc -l
  • Lister les objets synchronisés

    Consultez les objets synchronisés :

    # List local files with sizes.
    ls -lh /local/dir/
    
    # Compare with the OSS directory.
    ossutil ls oss://bucket/dir/ -r

Exemples

Les exemples suivants utilisent cette structure de fichiers. Le dossier localdir du bucket OSS contient a.txt, b.txt et le sous-répertoire C. Le dossier local destdir contient d.txt :

examplebucket           local root directory
└── localdir/             └── destdir/
       ├── a.txt                └── d.txt
       ├── b.txt
       └── C/
  • Synchronisez le dossier localdir depuis OSS vers votre ordinateur local

    ossutil sync  oss://examplebucket/localdir/  destdir/ 

    Résultat : a.txt, b.txt et le sous-répertoire C sont ajoutés au dossier local destdir.

    examplebucket           local root directory
    └── localdir/             └── destdir/
           ├── a.txt                ├── a.txt 
           ├── b.txt                ├── b.txt
           └── C/                   ├── d.txt
                                       └── C/ 
  • Synchronisation avec l'option --backup-dir : synchronisez localdir depuis examplebucket vers le dossier local destdir et déplacez les fichiers présents uniquement dans la destination vers le dossier backup.

    ossutil sync oss://examplebucket/localdir/  destdir/  --delete  --backup-dir backup/

    Résultat : le dossier localdir est synchronisé. Les fichiers présents dans destdir mais absents de la source sont déplacés vers le dossier backup. Le dossier local destdir ne contient plus que a.txt, b.txt et le sous-répertoire C. Le fichier d.txt d'origine est déplacé vers le dossier backup.

    examplebucket              local root directory
    └── localdir/               ├── destdir/
           ├── a.txt            │     ├── a.txt 
           ├── b.txt            │     ├── b.txt
           └── C/               │     └── C/                             
                                   └── backup/
                                          └──d.txt
  • Sortie en cas de synchronisation réussie :

    Succeed: Total num: 2, size: 750,081. OK num: 2(upload 2 files).
    
    average speed 1641000(byte/s)

Options courantes

Pour accéder à un bucket situé dans une autre région, utilisez -e pour spécifier l'endpoint. Pour accéder à un bucket appartenant à un autre compte Alibaba Cloud, utilisez -i pour l'AccessKey ID et -k pour l'AccessKey Secret.

Exemple : synchronisation depuis un bucket de la région Chine (Shanghai) appartenant à un autre compte Alibaba Cloud :

ossutil sync oss://examplebucket/srcfolder/  examplefolder/ -e oss-cn-shanghai.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecret

Options courantes.