Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

commande tar : modifie le propriétaire du répertoire courant de travail

1 réponse
Avatar
poulacou
J'ai un comportement auquel je ne m'attendais pas et surtout tr=E8s
dangereux !

(on =E9vitera les remarques : il ne faut pas le faire dans ce
r=E9pertoire, pas en root, et pourquoi ci ... j'avais une raison !)

$> ls -l /root
drwxr-x--- 9 root root 4096 Jan 23 17:16 root

$> cd /root
$> tar xvf mon_package.tar
$> ls -l /root
drwxr-x--- 9 1254 123 4096 Jan 23 17:17 root

L'utilisateur et le groupe du r=E9pertoire courant ont chang=E9s.

$> tar tvf mon_package.tar | more
drwxr-xr-x vabld/vabld 0 2008-12-16 19:22:03 ./
drwxr-xr-x vabld/vabld 0 2008-12-09 07:46:53 ./update/
...

en gros le tar modifie le r=E9pertoire courant par le ./ et on ne le
remarque que difficilement ....

Je trouve que =E7a peut =EAtre tr=E8s dangereux suivant le r=E9pertoire ou
l'on travaille (etc, opt, root, var)

1 réponse

Avatar
Eric Levenez
Le 06/02/09 15:28, dans
,
« poulacou » a écrit :

en gros le tar modifie le répertoire courant par le ./ et on ne le
remarque que difficilement ....



C'est une information qui date de 30 ans :->

En effet il ne faut pas sauvegarder ".", et cela depuis que tar sauvegarde
les droits des fichiers (les premières versions ne sauvegardaient que les
fichiers purs et n'avaient pas ce problème).

Ainsi au lieu de faire

cd toto ; tar cf /tmp/foo.tar .

Il faut faire

tar cf /tmp/foo.tar toto

Dans le cas où le tar a été sauvegardé avec ".", il faut faire un truc du
genre :

mkdir truc ; cd truc ; tar xf /tmp/foo.tar

--
Éric Lévénez -- <http://www.levenez.com/>
Unix is not only an OS, it's a way of life.