Next Previous Contents

7. Het copieeren van de files van de oude naar de nieuwedisk

Je kunt het best naar single-user mode gaan voordat je begint met het copieeren van de files, dit omdat er dan geen daemons meer draaien en niemand meer kan inloggen en er ook geen log-files meer lopen.

Als je de harddisk wil copieeren dan wil je alles copieeren incl directories en files, inclusief links.

Alhoewel, je niet de directory /new-disk wilt copieeren, want dan kopieer je de disk in-zichzelf!

Verder moet je een /proc directory maken op de nieuwe disk, maar je wilt niet de inhoud ervan copieeren: /proc is een "virtueel" file systeem en heeft eigenlijk geen files. Maar bevat informatie over processen die op het systeem draaien.

Hier zijn verschillende mogelijkheden om de schijf te copieeren. Als je een grote schijf hebt of weinig geheugen hebt dan duurt het een tijdje Je kan er vanuit gaan dat je ca 10 Mb/min kan copieeren, maar soms meer.

Je kan het kopieer proces volgen door gebruik te maken van het "df" commando op een andere terminal. Je kunt ook "watch df" of "watch ls -l /new-disk" gebruiken zodat het scherm elke 2 seconden wordt ververst; druk Ctrl-C om het af te breken. Let wel dat als je "watch" gebruikt dit ook het copieeren kan vertragen.

Dit is de simpelste methode, maar werkt alleen als je Linux systeem op een schijf staat.

De -a optie behoud het origineel systeem zo goed als mogelijk. De -x optie limiteert cp tot een enkel file systeem; dit is nodig om te vermijden dat de /new-disk en /proc directories worden gecopieeerd.

(SuSE enkel: Enkel met deze methode , moet je ook een directory /dev/pts maken op de nieuwe disk. gebruik hiervoor het commando "mkdir /new-disk/dev/pts".)

(Note: Als je de -x optie gebruikt, recente versies van cp maken dan de directories /new-disk/new-disk en /new-disk/proc, hoewel de directories leeg blijven. Als deze directories zijn aangemaakt moet je deze /new-disk/new-disk verwijderen , en /new-disk/proc houden .)

(Typ dit allemaal op een regel)

Deze gaat naar de root directory en copieert dan alle files behalve /new-disk en /proc naar /new-disk. Note De eerste optie achter ls is het nummer 1 en niet letter L!

Dit commando zou in alle omstandigheden moeten werken.

(Typ dit allemaal op een regel)

Deze gaat naar de root directory "tart" alles behalve /new-disk en /proc, gaat dan naar /new-disk en "untart" daar alles. Note: er moet geen slash voor of achter de namen van directories in de --exclude opties

(Note: De optie -l werkt niet, als tar de directories /new-disk en /proc aan het maken is, alhoewel het niet de inhoud copieert. Daarom heeft de tar -l optie niet hetzelfde gedrag als de -x optie met oudere versies van cp.)

Deze methode is wat langzamer dan de andere.

(Typ dit allemaal op een regel)

De laatste directory, /new-disk, is de bestemming voor het cp commando. Alle andere directories zijn de bronnen. Daarvoor, copieeren we alle directories in de lijst naar /new-disk.

Met deze methode kun je simpel een lijst maken van alle directories die je wilt copieeren. Hier hebben we alle directories in een lijst gezet behalve /new-disk en /proc. als je om een of andere redenen geen andere methode kan gebruiken, kun je altijd deze methode gebruiken om handmatig alle directories te copieeren die jij selecteert.

Als je deze methode gebruikt, en er staan files in de root directory zelf, dan heb je een ander commando nodig om deze te copieeren. Dit is speciaal nodig met Debian en Slackware sinds deze distributies files root directory hebben gezet:

cp -dp /* /.* /new-disk

Nadat je een van deze commando's hebt gebruikt, moet je ook nog de /proc directory maken op de nieuwe disk, als deze nog niet bestaat:

Als je wilt kun je nu de file structuur laten nakijken op de nieuwe disk:

Als de nieuwe disk meer dan een partitie heeft, dan moet je hem Unmount-en vanaf "onder af" voordat je fsck.ext2 gaat runnen: Zoals in het voorbeeld hier boven moet je eerst de 3e level partities Unmount-en, dan de 2e level partities, en dan de 1e level partities.

Je kan ook twee disks met elkaar vergelijken, om er zeker van te zijn dat de files goed zijn gecopieerd:

(Typ dit allemaal op een regel)

(Slackware enkel: Een basis Slackware installatie ("A" series enkel) zit het "cmp" commando niet in, dus als een een basis installatie hebt dan kun je dit commando niet runnen. De "cmp" commando zit in de "AP1" series.)

Deze vergelijkt enkel reguliere files, dus geen character of block special files (in de /dev directory), sockets, etc.,sinds het "cmp" niet goed werkte. Wij ontvangen graag suggesties over hoe deze "special" files te vergelijken.


Next Previous Contents