Les objets de classe de stockage Archive doivent être restaurés avant lecture, sauf si l'accès en temps réel est activé. L'accès en temps réel n'est pas pris en charge pour les objets Cold Archive et Deep Cold Archive : leur restauration est obligatoire avant toute lecture. La restauration d'un objet Archive prend généralement quelques minutes, celle d'un objet Cold Archive plusieurs heures, et celle d'un objet Deep Cold Archive entre 12 et 48 heures. Le délai effectif peut varier. Cette rubrique explique comment utiliser la commande restore pour restaurer des objets.
Notes
Pour restaurer un seul objet, vous devez disposer de l'autorisation
oss:RestoreObject. Pour restaurer plusieurs objets dans un dossier, les autorisationsoss:RestoreObjectetoss:ListObjectssont requises. Pour plus d'informations, consultez la rubrique Accorder des autorisations personnalisées à un utilisateur RAM.À partir de la version 1.6.16 d'ossutil, utilisez « ossutil » comme nom binaire dans la ligne de commande, quel que soit votre système d'exploitation. Si vous utilisez une version antérieure à la 1.6.16, adaptez le nom binaire en fonction de votre système d'exploitation. Pour plus de détails, reportez-vous à la section Référence des commandes ossutil.
Pour en savoir plus sur l'état de restauration et la facturation des objets Archive, Cold Archive ou Deep Cold Archive, consultez la rubrique Restaurer des objets.
Cette commande est disponible uniquement à partir de la version 1.7.11 d'ossutil.
Syntaxe de la commande
ossutil restore oss://bucketname[/prefix][local_xml_file]
[--encoding-type <value>]
[--payer <value>]
[--version-id <value>]
[-r, --recursive]
[-f, --force]
[--object-file, <value>]
[--snapshot-path, <value>]
[--disable-ignore-error]
[--retry-times <value>]
[-j,--job <value>]
Le tableau suivant décrit les paramètres et options de la commande.
|
Paramètre |
Description |
|
bucketname |
Nom du bucket. |
|
prefix |
Les ressources d'un bucket peuvent inclure des dossiers et des fichiers. |
|
local_xml_file |
Fichier XML local contenant les paramètres de restauration pour les objets Cold Archive. |
|
--encoding-type |
Méthode d'encodage du préfixe. Définissez la valeur sur url. Si cette option n'est pas spécifiée, le préfixe n'est pas encodé. |
|
--payer |
Payeur de la requête. Pour que le demandeur prenne en charge les frais tels que le trafic et les requêtes, définissez cette option sur requester. |
|
--version-id |
ID de version de l'objet. Cette option s'applique uniquement aux objets situés dans des buckets pour lesquels le versioning est activé ou suspendu. |
|
-r, --recursive |
Restaure tous les objets correspondant au préfixe. Sans cette option, ossutil ne restaure que l'objet spécifié. |
|
-f, --force |
Force l'exécution de l'opération sans demande de confirmation. |
|
--object-file |
Permet de restaurer par lot plusieurs objets Archive, Cold Archive ou Deep Cold Archive. Pour utiliser cette option :
Remarque
Si une erreur survient lors de la restauration d'un objet, ossutil enregistre les informations d'erreur dans le fichier de rapport et poursuit la restauration des autres objets. Les objets restaurés avec succès ne sont pas enregistrés dans le fichier de rapport. |
|
--snapshot-path |
Génère des instantanés uniquement pour les objets concernés par l'opération actuelle. Si des instantanés existent déjà pour ces objets, l'opération est ignorée. Remarque
Cette option doit être utilisée conjointement avec l'option -r, --recursive ou --object-file. |
|
--disable-ignore-error |
Empêche l'ignorance des erreurs lors des opérations par lot. |
|
--retry-times |
Nombre de tentatives en cas d'erreur. Valeur par défaut : 10. Plage de valeurs : 1 à 500. |
|
-j, --job |
Nombre de tâches concurrentes pour les opérations sur plusieurs objets. Valeur par défaut : 3. Plage de valeurs : 1 à 10000. |
Restaurer des objets Archive
La restauration d'un objet Archive prend environ une minute. Vous ne pouvez pas lire un objet pendant sa restauration.
Par défaut, un objet restauré reste dans cet état pendant un jour. Si vous exécutez la commande de restauration sur un objet déjà restauré, la durée de l'état restauré est prolongée d'un jour. Cette prolongation est possible jusqu'à sept jours maximum. Au-delà de cette période, l'objet revient à l'état figé.
Vous pouvez utiliser la commande cp pour modifier la classe de stockage d'un objet. Pour plus d'informations, consultez la rubrique Copier un objet et modifier sa classe de stockage.
Lors de la restauration d'un objet Archive, vous pouvez également créer un fichier XML local nommé config.xml pour configurer le nombre de jours durant lesquels l'objet restera dans l'état restauré.
<RestoreRequest>
<Days>3</Days>
</RestoreRequest>
-
Restaurer un seul objet Archive
-
L'exemple suivant montre comment restaurer un objet Archive nommé exampleobject.txt dans le bucket examplebucket et maintenir l'objet dans l'état restauré pendant trois jours.
ossutil restore oss://examplebucket/exampleobject.txt config.xml -
L'exemple suivant montre comment restaurer une version spécifique de l'objet Archive nommé exampleobject.txt dans le bucket examplebucket.
ossutil restore oss://examplebucket/exampleobject.txt --version-id CAEQARiBgID8rumR2hYiIGUyOTAyZGY2MzU5MjQ5ZjlhYzQzZjNlYTAyZDE3**** config.xmlPour savoir comment obtenir toutes les versions d'un objet, consultez la rubrique ls (Lister les ressources au niveau du compte).
-
-
Restaurer plusieurs objets Archive
-
Exemple 1 : Objets dans différents dossiers
Pour restaurer plusieurs objets Archive situés dans différents dossiers du bucket examplebucket, tels que exampleobject1.jpg dans le dossier racine, exampleobject2.png dans le dossier dir1/ et exampleobject3.txt dans le dossier dir2/, procédez comme suit.
-
Inscrivez les noms des objets Archive à restaurer dans le fichier local localfile.txt.
exampleobject1.jpg dir1/exampleobject2.png dir2/exampleobject3.txt -
Dans le fichier config.xml, définissez la durée de l'état restauré à trois jours.
<RestoreRequest> <Days>3</Days> </RestoreRequest> -
Restaurez plusieurs objets Archive.
Utilisez l'option --object-file pour restaurer plusieurs objets Archive dans le bucket examplebucket.
ossutil restore oss://examplebucket --object-file localfile.txt --snapshot-path dir/ config.xml
-
-
Exemple 2 : Objets dans le même dossier
-
Méthode 1
Vous pouvez vous reporter à l'Exemple 1 pour restaurer plusieurs objets Archive situés dans le même dossier d'un bucket.
-
Méthode 2
Utilisez l'option -r pour restaurer tous les objets Archive du dossier dest spécifié dans le bucket examplebucket.
ossutil restore oss://examplebucket/dest -r config.xml
-
-
-
Sortie
En cas de succès, la sortie inclut l'heure d'initiation de la demande de restauration. Exemple :
0.106852(s) elapsed
Restaurer des objets Cold Archive
Le temps de restauration effectif varie en fonction de la taille de l'objet.
Avant de restaurer un ou plusieurs objets Cold Archive, créez un fichier XML local nommé config.xml et configurez-y les paramètres de restauration suivants.
<RestoreRequest>
<Days>3</Days>
<JobParameters>
<Tier>Bulk</Tier>
</JobParameters>
</RestoreRequest>
Le tableau suivant décrit les paramètres.
|
Paramètre |
Description |
|
Days |
Nombre de jours pendant lesquels l'objet Cold Archive restauré reste dans l'état restauré. Unité : jours. Plage de valeurs : 1 à 365 |
|
Tier |
Priorité de restauration pour l'objet Cold Archive. Valeurs valides :
|
-
Restaurer un seul objet Cold Archive
La commande suivante restaure l'objet exampleobject.jpg dans le bucket examplebucket en moins d'une heure et le maintient dans l'état restauré pendant trois jours, selon les configurations du fichier config.xml.
ossutil restore oss://examplebucket/exampleobject.jpg config.xml -
Restaurer plusieurs objets Cold Archive
-
Exemple 1 : Objets dans différents dossiers
Pour restaurer plusieurs objets Cold Archive situés dans différents dossiers du bucket examplebucket, tels que exampleobject1.jpg dans le dossier racine, exampleobject2.png dans le dossier dir1/ et exampleobject3.txt dans le dossier dir2/, procédez comme suit.
-
Inscrivez les noms des objets Cold Archive à restaurer dans le fichier local localfile.txt.
exampleobject1.jpg dir1/exampleobject2.png dir2/exampleobject3.txt -
Restaurez plusieurs objets.
Utilisez l'option --object-file pour restaurer plusieurs objets Cold Archive dans le bucket examplebucket. Selon les configurations du fichier config.xml, les objets sont restaurés en moins d'une heure et conservés dans l'état restauré pendant trois jours.
ossutil restore oss://examplebucket --object-file localfile.txt --snapshot-path dir/ config.xml
-
-
Exemple 2 : Objets dans le même dossier
-
Méthode 1
Vous pouvez vous reporter à l'Exemple 1 pour restaurer plusieurs objets Cold Archive situés dans le même dossier d'un bucket.
-
Méthode 2
Utilisez l'option -r pour restaurer tous les objets Cold Archive du dossier dest du bucket examplebucket.
ossutil restore oss://examplebucket/dest -r config.xml
-
-
-
Sortie
En cas de succès, la sortie indique le temps nécessaire pour initier la demande de restauration. Par exemple :
0.106852(s) elapsed
Restaurer des objets Deep Cold Archive
Le temps de restauration effectif dépend de la taille de l'objet.
Avant de restaurer un ou plusieurs objets Deep Cold Archive, créez un fichier XML local nommé config.xml et configurez-y les paramètres de restauration suivants.
<RestoreRequest>
<Days>3</Days>
<JobParameters>
<Tier>Standard</Tier>
</JobParameters>
</RestoreRequest>
Les paramètres de configuration sont les suivants :
|
Paramètre |
Description |
|
Days |
Nombre de jours pendant lesquels l'objet Deep Cold Archive restauré reste dans l'état restauré. Unité : jours. Plage de valeurs : 1 à 365 |
|
Tier |
Priorité de restauration pour l'objet Deep Cold Archive. Valeurs valides :
|
-
Restaurer un seul objet Deep Cold Archive
Selon les configurations du fichier config.xml, la commande suivante restaure l'objet exampleobject.jpg dans le bucket examplebucket en moins de 48 heures et le maintient dans l'état restauré pendant trois jours.
ossutil restore oss://examplebucket/exampleobject.jpg config.xml -
Restaurer plusieurs objets Deep Cold Archive
-
Exemple 1 : Objets dans différents dossiers
Pour restaurer plusieurs objets Deep Cold Archive situés dans différents dossiers du bucket examplebucket, tels que exampleobject1.jpg dans le dossier racine, exampleobject2.png dans le dossier dir1/ et exampleobject3.txt dans le dossier dir2/, procédez comme suit.
-
Ajoutez les noms des objets Deep Cold Archive à restaurer dans le fichier local localfile.txt.
exampleobject1.jpg dir1/exampleobject2.png dir2/exampleobject3.txt -
Restaurez plusieurs objets.
Utilisez l'option --object-file pour restaurer plusieurs objets Deep Cold Archive dans le bucket examplebucket en moins de 48 heures et les conserver dans l'état restauré pendant trois jours. Cette opération se base sur les configurations du fichier config.xml.
ossutil restore oss://examplebucket --object-file localfile.txt --snapshot-path dir/ config.xml
-
-
Exemple 2 : Objets dans le même dossier
-
Méthode 1
Vous pouvez vous reporter à l'Exemple 1 pour restaurer plusieurs objets Deep Cold Archive situés dans le même dossier d'un bucket.
-
Méthode 2
Utilisez l'option -r pour restaurer tous les objets Deep Cold Archive du dossier dest du bucket examplebucket.
ossutil restore oss://examplebucket/dest -r config.xml
-
-
-
Sortie
En cas de succès, la sortie affiche le temps nécessaire pour initier la demande de restauration. Par exemple :
0.106852(s) elapsed
Options courantes
Pour accéder à un bucket situé dans une autre région, utilisez l'option -e pour spécifier le endpoint. Pour accéder à un bucket appartenant à un autre compte Alibaba Cloud, utilisez l'option -i pour l'AccessKey ID et l'option -k pour l'AccessKey Secret.
Par exemple, pour restaurer l'objet exampletest.png dans le bucket testbucket situé dans la région Chine (Shanghai) et appartenant à un autre compte Alibaba Cloud, exécutez la commande suivante :
ossutil restore oss://testbucket/exampletest.png -e oss-cn-shanghai.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecret
Références
Pour vérifier si un objet est restauré, consultez la rubrique stat (Afficher les informations sur les buckets et les objets).
Pour conserver un objet OSS restauré de manière permanente, consultez la rubrique Comment conserver un objet OSS restauré de manière permanente ?.