Sophie

Sophie

distrib > Mandriva > 9.0 > i586 > by-pkgid > 0d5cd12c82d627a82c59047e1ba7b8a9 > files > 1770

howto-html-fr-9.0-0.2mdk.noarch.rpm

<HTML>
<HEAD>
<TITLE>Copiez les fichiers de l'ancien disque au nouveau</TITLE>
</HEAD>
<BODY>
<H1>7. <A NAME="s7"></A>Copiez les fichiers de l'ancien disque au nouveau</H1>
<P>
<A HREF="Hard-disk-upgrade.html#toc7">Contenu de cette section</A></P>

<P>Il faut reproduire compl&egrave;tement la structure du disque, liens inclus.</P>
<P></P>
<P>Toutefois, il ne faut <EM>pas</EM> copier le r&eacute;pertoire <CODE>/new-disk</CODE>, 
puisque &ccedil;a 
reviendrait &agrave; recopier le nouveau disque sur lui-m&ecirc;me !</P>
<P></P>
<P>De plus, il faut copier le r&eacute;pertoire <CODE>/proc</CODE> sur le nouveau 
disque, mais pas son contenu : "<CODE>/proc</CODE>" est un syst&egrave;me de fichiers 
"virtuel" qui ne contient pas de vrais fichiers, mais plut&ocirc;t des informations
sur les processus qui tournent sur le syst&egrave;me.</P>
<P></P>
<P>Voici quatre fa&ccedil;ons de copier un vieux disque sur un nouveau. &Ccedil;a peut prendre 
du temps, d'autant plus que le disque est gros ou la m&eacute;moire peu importante.
Vous pouvez vous attendre &agrave; copier 10Mo par minute, ou m&ecirc;me plus.</P>
<P></P>
<P>Vous pouvez suivre la progression de la copie en utilisant la commande "<CODE>df</CODE>"
depuis un autre terminal. Si vous &ecirc;tes aussi bon public que moi, essayez
"<CODE>watch df</CODE>" ou "<CODE>watch ls -l /new-disk</CODE>" pour voir un rapport mis &agrave; jour
toutes les deux secondes ; utilisez <EM>Ctrl-C</EM> pour 
arr&ecirc;ter l'affichage. Soyez conscient que la commande "<CODE>watch</CODE>"
va ralentir la copie.
<PRE>

1.      cp -ax / /new-disk
</PRE>
</P>
<P>Ceci est la m&eacute;thode la plus simple, mais ne fonctionnera que si votre 
syst&egrave;me <B>Linux</B> est sur une seule partition. L'option <CODE>-a</CODE> pr&eacute;serve
autant que faire se peut le syst&egrave;me original. L'option <CODE>-x</CODE> restreint <CODE>cp</CODE>
&agrave; un seul syst&egrave;me de fichiers. Ceci est n&eacute;cessaire pour &eacute;viter 
de copier les r&eacute;pertoires <CODE>/proc</CODE> et <CODE>/new-disk</CODE>.
<PRE>

2.  cd / &amp;&amp; cp -a `/bin/ls -1A | egrep -v &quot;^new-disk$|^proc$&quot;` /newdisk
</PRE>
</P>
<P>Ceci va &agrave; la racine puis copie tous les fichiers et 
r&eacute;pertoires sauf <CODE>/proc</CODE> et <CODE>/new-disk</CODE>. Notez que la 
premi&egrave;re option apr&egrave;s ls est le chiffre "1", et non la lettre
"L" !</P>
<P>Cette commande devrait fonctionner en toutes circonstances.
<PRE>

3.       (cd / &amp;&amp; tar cpf - . --exclude new-disk --exclude proc) | (cd
         /new-disk &amp;&amp; tar xpf -)
</PRE>
</P>
<P>(Ecrire cette commande sur une seule ligne)</P>
<P>Ceci va dans le r&eacute;pertoire racine, "archive" tout sauf 
<CODE>/proc</CODE> et <CODE>/new-disk</CODE>, va dans <CODE>/new-disk</CODE> et 
"d&eacute;sarchive" tout l&agrave;. Notez qu'il ne doit pas y avoir de 
slash ("/") avant ou apr&egrave;s les noms de r&eacute;pertoire 
dans les options <CODE>--exclude</CODE>.</P>
<P></P>
<P>(<EM>Note</EM> : L'option <CODE>-l</CODE> ne marche pas ici, puisque <CODE>tar</CODE> 
recr&eacute;erait les r&eacute;pertoires <CODE>/proc</CODE> et <CODE>/new-disk</CODE>
m&ecirc;me s'il ne copie pas leurs contenus. C'est pourquoi l'option <CODE>-l</CODE>
de <CODE>tar</CODE> n'a pas le m&ecirc;me comportement que l'option <CODE>-x</CODE> 
de <CODE>cp</CODE>.)</P>
<P>Cette m&eacute;thode est quelque peu plus lente que les autres.
<PRE>

4.      cp -a /bin /boot /dev /etc /home /lib /lost+found /mnt /root /sbin
        /tmp /usr /var /new-disk
</PRE>
</P>
<P>(Ecrire la commande sur une seule ligne)</P>
<P>Le dernier r&eacute;pertoire, <CODE>/new-disk</CODE>, est la destination
pour la commande <CODE>cp</CODE>. Tous les autres r&eacute;pertoires sont les 
sources. C'est pourquoi je copie tous les r&eacute;pertoires list&eacute;s dans 
<CODE>/new-disk</CODE>.</P>
<P>Avec cette m&eacute;thode, vous faites simplement une liste des r&eacute;pertoires que 
vous voulez copier. Ici j'ai indiqu&eacute; tous mes r&eacute;pertoires &agrave;
l'exception de <CODE>/proc</CODE> et <CODE>/new-disk</CODE>. Si vous ne pouvez utiliser
aucune des  m&eacute;thodes pour une raison quelconque, vous pouvez toujours utiliser 
cette commande pour sp&eacute;cifier manuellement les r&eacute;pertoires que vous voulez
copier.</P>
<P>Avec cette m&eacute;thode seulement, s'il y a des fichiers dans le r&eacute;pertoire
racine lui-m&ecirc;me, vous avez besoin d'une autre commande pour les copier.
En particulier, ceci est requis avec les <B>Debian</B> et <B>Slackware</B>, car ces 
distributions placent des fichiers dans le r&eacute;pertoire racine :
<PRE>
         cp -dp /* /.* /new-disk
</PRE>
</P>
<P>Apr&egrave;s avoir utilis&eacute; une m&eacute;thode parmi les quatre,
vous devez aussi cr&eacute;er le r&eacute;pertoire <CODE>/proc</CODE> sur le nouveau 
disque :
<PRE>
        mkdir /new-disk/proc
</PRE>
</P>
<P>A ce point, vous pouvez, si vous le voulez, v&eacute;rifier la structure des fichiers sur le 
nouveau disque :
<PRE>
        umount /new-disk
        fsck.ext2 -f /dev/hdb1
        mount -t ext2 /dev/hdb1 /new-disk
</PRE>
</P>
<P></P>
<P>Vous pouvez aussi utiliser le script suivant pour comparer les
deux disques, et vous assurer que les fichiers ont &eacute;t&eacute; 
copi&eacute;s correctement.</P>
<P>
<PRE>
#!/bin/sh
cd /
for file in `/bin/ls -1A | egrep -v '^new-disk$|^proc$'`
do
    find $file -xtype f -exec cmp \{\} /new-disk/\{\} \;
done
</PRE>
</P>
<P></P>
<P>(<B>Sp&eacute;cificit&eacute; Slackware</B> : une installation de base n'inclut
pas les commandes "<CODE>cmp</CODE>" et "<CODE>diff</CODE>", alors vous ne pourrez pas lancer ces scripts 
si vous avez seulement install&eacute; les fichiers de base.)</P>
<P>Ceci compare seulement les fichiers normaux, et non les fichiers sp&eacute;ciaux
associ&eacute;s &agrave; des p&eacute;riph&eacute;riques (dans le r&eacute;pertoire
<CODE>/dev</CODE>, les sockets, etc., car 
la commande cmp ne fonctionne pas correctement avec ceux-ci. Je - <EM>NdT l'auteur</EM> -
serais int&eacute;ress&eacute; par toute suggestion sur le moyen de v&eacute;rifier
ces fichiers "sp&eacute;ciaux").</P>
<P></P>
<HR>
<P>
Chapitre <A HREF="Hard-disk-upgrade-8.html">suivant</A>,
Chapitre <A HREF="Hard-disk-upgrade-6.html">Pr&eacute;c&eacute;dent</A>
<P>
Table des mati&egrave;res de <A HREF="Hard-disk-upgrade.html#toc7">ce chapitre</A>,
 <A HREF="Hard-disk-upgrade.html#toc">Table des mati&egrave;res</A> g&eacute;n&eacute;rale</P>
<P>
<A HREF="Hard-disk-upgrade.html">D&eacute;but</A> du document,
 <A HREF="#0"> D&eacute;but de ce chapitre</A></P>
</BODY>
</HTML>