J'utilise la tar -xvf
commande et elle prend le chemin explicite. Cependant, le chemin est plein.
Exemple:
tar -xvf 13.2.tar
Il prend le chemin du /mnt
dossier. Le /
dossier est plein.
Comment puis-je tarer le fichier avec le chemin implicite?
Réponses:
A généralement
tar
besoin de l' option--absolute-names
ou--absolute-paths
pour conserver la'/'
partie racine lors de la création d'une archive. Même si vous le forcez de cette façon, l'extrait saute également le début'/'
.Cependant, si vous avez une archive avec le
'/'
début et que vous ne l'ignorez pas lors de l'extraction, la réponse de NoahD devrait fonctionner sous cette forme,Je pense
pax
que ne gère pas les fichiers compressés, vous devez donc les canaliser après la décompressionpax
.Cela se passerait comme ça (en supposant que vous avez une archive gzippée)
J'ai trouvé cette page wiki sur Google tout à l'heure.
la source
La différence entre l'utilisation canonique (aka explicite) et relative (ce que vous appelez probablement implicite) est de savoir si vous utilisez un
/
au début.Par exemple, si le répertoire de travail actuel est
/usr/home/bob
, les commandes suivantes ont exactement le même effetMais je soupçonne que ce n'est pas vraiment votre question. Il semble plus que vous deviez déterminer l'utilisation du disque et localiser un répertoire qui n'est pas plein. Cela peut être fait avec la
df
commande.Et vous pouvez utiliser
mount
pour vous montrer quels systèmes de fichiers sont montés sur quels périphériques.la source
Pour créer un fichier tar avec un chemin relatif,
Pour décompresser un tar dans un répertoire spécifique autre que le répertoire de travail actuel, utilisez le commutateur -C (majuscule C).
Si vous souhaitez décompresser un fichier avec des noms de chemin absolus à un point autre que root, vous devrez peut-être jouer avec
chroot(1)
.la source
Je crois que pax fera l'affaire
pax -r -s, / mnt, / gooddir, -f 13.2.tar
Il devrait vous permettre de remplacer dans un nouveau répertoire racine.
la source