Comment faire un tar de sauvegarde d'un système de fichiers racine?
J'ai installé linux sur carte SD, j'ai utilisé la commande suivante pour installer le rootfs
goudron xpjf rootfs.le goudron.bz -C /mnt/rootfs/
Maintenant, j'ai apporté quelques modifications pour le rootfs et je voudrais créer une sauvegarde que je peux l'utiliser avec la même commande ci-dessus, j'ai essayé d'utiliser:
tar cpjf rootfs.tar.bz2 /mnt/rootfs
and
tar cpjf rootfs.tar.bz2 -C /mnt/rootfs
I also tried
tar cpjf rootfs.tar.bz2 /mnt/rootfs/*
Et essayé:
cd /mnt/rootfs
tar -cvpjf rootfs.tar.bz2 --exclude=/rootfs.tar.bz2 .
tar: ./rootfs.tar.bz2: file changed as we read it
mais je me retrouve avec une archive qui a deux niveaux d'avant le système de fichiers je.e mnt/rootfs/les fichiers de Ce que je fais mal ?
OriginalL'auteur iabdalkader | 2012-07-09
Vous devez vous connecter pour publier un commentaire.
C'est parce qu'il commence à partir du répertoire de travail actuel, vous pouvez le faire:
Et qui devrait créer une archive dans /rootfs.le goudron.bz2 avec sa racine dans le contenu de /mnt/rootfs/
*
. Que peut échouer avec les fichiers nommés comme "--nom de fichier". Au lieu de cela, utiliser./*
.Aussi, il pourrait être intéressant de noter que
./*
(et*
) pourrait ne pas ramasser les fichiers dont les noms commencent par un point.Merci pour l'astuce, j'ai utilisé * l'utilisateur posté la question avec qui, correction de la réponse 😉
cjpf /rootfs.le goudron.bz2 .
tar cpjf /rootfs.tar.bz2 -C /mnt/rootfs .
Où-C
signifie "cd dans <path> alors ...." Est plus simple.OriginalL'auteur alex88