Re: Radotages d'un papy de l'informatique

Top Page

Reply to this message
Author: Geoffroy \"LeRat\" CARRIER
Date:  
To: Bernard Cassagne
CC: guilde
Subject: Re: Radotages d'un papy de l'informatique
Bernard Cassagne wrote:
> Je viens de lire un thread sur la sauvegarde systeme et j'ai vu que plusieurs
> personnes commettent l'erreur de penser que gnu tar n'est pas capable de
> sauvegarder /dev. Cette croyance vient du fait que ca a ete vrai a une
> certaine epoque, mais c'est faux maintenant. [Merci a Daniel Veillard qui a
> ete mon initiateur aux vertus du gnu tar].
>
> Comme je pense que ca peut interesser un certain nombre de personnes, je
> me permets de faire le point historique sur les problemes de sauvegarde d'une
> arborescence Unix.
>
> Pour sauvegarder convenablement une arborescence Unix, il ne faut pas tomber
> dans l'un des panneaux suivants :
>  - transformer un lien symbolique en "plain file"
>  - transformer un fichier a trou en fichier pleins (car un read d'un trou 
>     donne un buffer de zeros qui, si on ne prend pas de precaution, sera
>     reecrit sous forme de zeros et non pas d'un trou)
>  - faire un open d'un /dev/xxx au lieu de faire un mknod

>
> A l'epoque prehistorique, on savait :
>  - que cp ne gerait rien de ces difficultes,
>  - que tar ne gerait que les liens symboliques mais ni les trous, ni les /dev
>  - et donc qu'une copie de de file system ne pouvait se faire qu'avec un
>    outil de type dump/restore.

>
> Aujourd'hui :
>   - gnu cp a un argument --no-dereference (never follow symbolic links)
>     [ je dis bien gnu cp, car je viens de verifier que la commande cp d'un OS
>     proprietaire (Solaris pour ne pas le nommer) ne gere toujours pas les
>     liens symboliques.]

>
>   - gnu tar (et la aussi je dis bien GNU tar) gere convenablement tous les
>     problemes (et en particulier celui des /dev).

>
>    J'ai cree pour l'ENSIMAG une installation automatique de machines a base
> de kickstart complete par un script de postinstall dans lequel je copie
> un root file system dans une seconde partition de facon a avoir plusieurs
> systemes bootables (pour des besoins didactiques). Je fais ceci par tar
> avec simplement  comme precautions :
> --exclude dev/pts  (je recupere donc tous les autres dev)
> --sparse (handle sparse files efficiently)

>
>    [Je me rends compte a cette occasion que je n'ai pas fait --exclude /proc
>    ca aurait certainement ete malin de le faire, en tout cas ca ne m'a pas
>    pose de probleme]

>
>    Quand on fait un tel tar, on peut etre inquiete par quelques messages du
> type: "tar: dev/log: socket ignored"
> il s'agit d'un socket dans le monde UNIX (donc local) et non pas un socket
> dans le monde INET. De tels sockets sont ouverts par le demon lpd par
> exemple. Ce n'est qu'un warning et peut etre ignore sans inconvenient.

>
> Donc en resume, pas de pb pour sauvegarder tout un root file system par GNU tar.
>
> [Dans tout ceci je n'ai pas parle de cpio car j'ai une experience tres Unix
> Berkeley et pas du tout Unix System V. Si qq peut faire le point sur les
> capacites de cpio ca doit sans doute interesser du monde]
>
> Apres ca, quelqu'un a parle de sauvegarde de ce qui est local a la machine par
> opposition aux fichiers systeme. Ca c'est un probleme completement different
> qui est un probleme d'organisation de la machine. Ca a ete explique plusieurs
> fois sur la liste.
>


merci pour ces precisions, mais j'utilise devfsd.

@+,

-- 
    O~O       Geoffroy 'LeRat' CARRIER
   (\"/)        <megathemanga@???>
  (\"o"/)
   m`-'m'`---.     lerat.homelinux.org