logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 24-05-2024 20:57:11

wardidi
Adhérent(e)
Lieu : Bretagne
Distrib. : DF 12.4
Noyau : 6.1.0-13-amd64
Inscription : 28-11-2022

incompréhension commande tar

Bonjour,

Je m'entraine sur un "PC d'essai" a faire des sauvegardes réinstallation restauration et autres. Pour pouvoir être prévoyant il faut comprendre:D


Je sauvegarde  /home avec

cd
tar  czf /media/user/cleusb/monhome.tar.gz .




Je restaure le /home avec

Redémarrage en TTY avec Ctrl+Alt+F1 avec le même user

cd
tar xzf /media/user/cleusb/monhome.tar.gz



Je retouve bien mes configs et mes doc présents dans la sauvegarde dans /home/user/Documents (et en version présauvegarde) mais également ceux ajoutés après la sauvegarde.
Comment ce fait-il? Et comment faire pour supprimer les documents ajoutés après la sauvegarde de home? J'ai vu dans le tar man l'option --delete sans comprendre si cela effacera les documents ni comment l'utiliser.
En gros, je ne comprends pas le fonctionnement de tar.


Merci pour votre aide

Hors ligne

#2 24-05-2024 21:47:03

rodinux
Membre
Lieu : Ardèche
Distrib. : Debian Bookworm
Noyau : Linux 6.1.0-14-amd64
(G)UI : Gnome
Inscription : 29-05-2014
Site Web

Re : incompréhension commande tar

Je procéderai ainsi, décompression du fichier .tar dans un autre dossier,`homebkp` par exemple, puis un rsync qui supprime ce qui n'est pas à la source avec cette commande

rsync --recursive --delete --ignore-existing --existing --prune-empty-dirs --verbose homebkp/ home/



Source: https://jeremy.wordpress.com/2014/08/21 … rom-source

--recursive explore toute l'arborescence, pas seulement le premier niveau.

--delete supprime les fichiers de home qui ne sont pas dans homebkp.

--ignore-existing ne met à jour aucun fichier dans home

--existing ne crée aucun fichier dans home.

--prune-empty-dirs supprimera les répertoires vides dans home, sans se contenter de supprimer les fichiers.

--verbose enregistre ce qu'il fait.

En n'essayant pas de comparer les fichiers, c'est beaucoup plus rapide, mais bien sûr il ne s'agit que d'un nettoyage, pas d'une véritable synchronisation.

Vous pouvez également lancer cette opération une première fois avec --dry-run pour imprimer chaque action au lieu de les exécuter, afin de vérifier que Rsync fait bien ce que vous voulez.

Dernière modification par rodinux (24-05-2024 21:51:29)


La vie, ce n'est pas d'attendre que l'orage passe, c'est de danser sous la pluie...

Hors ligne

#3 24-05-2024 21:54:34

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

Re : incompréhension commande tar

Salut !
Je vais faire simpl(ist)e car je ne connais pas toutes les subtilités (et de loin) de tar

Dans ce que tu montres, qui est l'usage de base que je connais,
la création de l'archive (que tu considères probablement comme une "sauvegarde")
fabrique une copie des fichiers + structure + compression <=> archive

Quand tu procèdes à l'extraction de son contenu
=> tar recrées aux bons endroits (structure) les fichiers contenus dans l'archives et rien d'autre.

Donc s'il y a déjà du contenu dans la structure pré-existante,
tar ne fait que rajouter voire (je suis pas trop précis ici) remplacer des fichiers existants,
mais en aucun cas supprimer des fichiers qui ne sont pas dans l'archive.

Moralité,
tar ne gère pas la "restauration" au sens "système de fichiers"
(mais au mieux juste des fichiers contenus dans l'archive),
car ce n'est pas son job wink

Pour le but que tu recherches,
il faudra soit tout supprimer avant d'extraire l'archive,
soit trouver un véritable outil de sauvegarde.

J'espère que ça répond à ta question.

Dernière modification par dezix (25-05-2024 07:52:07)

Hors ligne

#4 25-05-2024 08:16:45

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

Re : incompréhension commande tar

Un point important pour l'usage en "sauvegarde" est de conserver les métadonnées des fichiers (propriétaire, groupe, permissions, horodatage,...)
voici quelques options (non-exhaustif) à considérer :


$ man tar
...
       --overwrite
              Écraser les fichiers existants lors de l'extraction.
....

   Gestion des attributs de fichier

       --atime-preserve[=MÉTHODE]
              Conserver les dates d'accès des fichiers archivés, soit en les restaurant après lecture (MÉTHODE=replace par défaut), soit en ne définissant pas les dates initialement MÉTHODE=system).

       --numeric-owner
              Utiliser systématiquement des nombres pour les noms d'utilisateur ou de groupe.


       -p, --preserve-permissions, --same-permissions
              Extraire les informations sur les permissions de fichiers (comportement par défaut pour le superutilisateur).

       --same-owner
              Essayer d'extraire les fichiers avec les mêmes propriétaires que ceux dans l'archive (comportement par défaut pour le superutilisateur).
...
 



PS: je pensais qu'il existait une option permettant d'enregistrer et conserver les métadonnées globalement (pour du backup) mais apparemment NON... scratchhead.gif

Dernière modification par dezix (25-05-2024 08:17:55)

Hors ligne

#5 25-05-2024 12:42:39

ubub
Membre
Distrib. : Debian
(G)UI : xfce
Inscription : 14-05-2019

Re : incompréhension commande tar

Bonjour,

dezix a écrit :

trouver un véritable outil de sauvegarde.


Armanda ? ... J'ai pas tout lu, juste survolé, mais le titre de ce chapitre de tar « Sauvegarde et restauration » vaut sûrement le coup d'être visité
https://www.gnu.org/software/tar/manual … ml#Backups

Hors ligne

#6 25-05-2024 14:11:14

wardidi
Adhérent(e)
Lieu : Bretagne
Distrib. : DF 12.4
Noyau : 6.1.0-13-amd64
Inscription : 28-11-2022

Re : incompréhension commande tar

bonjour et merci à tous pour vos réponses.

Je me fourvoyais depuis le début.

J'espérais faire une sauvegarde d'un home "vierge" avec toutes les configurations qui vont bien pour le restaurer sur une autre installation fraiche et ne pas être obligé de refaire les configurations préférées.

Dezix m'a rappelé à la dure réalité des permissions et autres attributs.

dezix a écrit :

Un point important pour l'usage en "sauvegarde" est de conserver les métadonnées des fichiers (propriétaire, groupe, permissions, horodatage,...)
voici quelques options (non-exhaustif) à considérer :



tar fonctionne bien mais il faut avoir le même USER
Pour faire de la sauvegarde et restauration je pense que rsync et son gui grsync sont préférables à tar.

Pour ce qui est de mon but premier, ne pas refaire les configs après installation, la solution semble être un script post-install. Mais là je suis loin de mon domaine de compténce.
Je continu mes recherches et j'ouvrirais probablement une discution.

Merci encore pour vos réflexions qui continuent de me faire avancer.

Dernière modification par wardidi (25-05-2024 14:11:36)

Hors ligne

#7 25-05-2024 14:26:24

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

Re : incompréhension commande tar

wardidi a écrit :

J'espérais faire une sauvegarde d'un home "vierge" avec toutes les configurations qui vont bien pour le restaurer sur une autre installation fraiche et ne pas être obligé de refaire les configurations préférées.



Avant de changer le cap (abandonner l'idée "tar" )  il faut que tu fasses des cycles tests/améliorations,
ça te permettra d'avoir des conclusions fiables pour toi.

Après tu pourras faire un vrai choix avec ou sans tar.

De toutes façons, pour les sauvegardes (comme tu le laisses comprendre en #1),
il faut surtout tester et être 100% certains que le système choisi permet réellement et avec fiabilité de faire les restaurations.

Je me suis fait avoir (au début) avec des sauvegardes que je ne parvenais pas à restaurer,
ce qui est pire que pas de sauvegarde du tout,
parce qu'on se croit à l'abri alors qu'on est à poil !

Dernière modification par dezix (25-05-2024 14:30:23)

Hors ligne

Pied de page des forums