View previous topic :: View next topic |
Author |
Message |
ScytheMan l33t
Joined: 30 Nov 2005 Posts: 605
|
Posted: Fri Aug 01, 2008 12:04 pm Post subject: komplette Festplatte A -> Festplatte B kopieren [solved] |
|
|
Hallo,
ich will meinen Festplatteninhalt auf eine andere Festplatte kopieren.
Prinzipiell steht dafür ja entweder dd oder cp zur Verfügung.
/dev/sda3 458G 12G 423G 3% /
Ich würde dd bevorzugen, nun zur Frage: kopiere ich dann 458Gb oder 12G?
In der man steht ebenfalls mit dem Signal USR1 kann ich nachsehen wieviel dd schon kopiert hat, wie sende ich dieses Signal?
Bei 458Gb hat sich dd quasi schon erledigt, dann favorisiere ich cp.
Welche Optionen bei cp? -av habe ich in einem altem HowTo gelesen.
Wird es Problematisch, wenn ich sdb auf /mnt/gentoo gemountet habe? (Endlos-Schleife beim Kopieren)
Danke schonmal für die Hilfe
gruß ScytheMan
edit:
will das gerne im System machen, nicht per LiveCD
Last edited by ScytheMan on Sat Aug 02, 2008 2:30 pm; edited 1 time in total |
|
Back to top |
|
|
69719 l33t
Joined: 20 Sep 2004 Posts: 865
|
Posted: Fri Aug 01, 2008 12:15 pm Post subject: |
|
|
Wenn deine ziel Partition von der Größe identisch ist kannst du dd machen und 458G Dateisystem übertragen, was im Vergleich zu cp etwas bzw eine weile länger dauert, da die ganze Partition und nicht die einzelnen Dateien übertragen werden.
Code: |
mkdir /mnt/sdb3 && mount /dev/sdb3 /mnt/sdb3
mkdir /mnt/sd?? && mount /dev/sd?? /mnt/sd??
cp -av /mnt/sdb3/* /mnt/zielpartition
|
|
|
Back to top |
|
|
ScytheMan l33t
Joined: 30 Nov 2005 Posts: 605
|
Posted: Fri Aug 01, 2008 12:22 pm Post subject: |
|
|
Von der Größe her nicht identisch, ergo fällt dd schonma flach?
die platte die ich kopieren will, ist die rootpartition also schon auf / gemounted,
angenommen ich mounte die zielpartition auf /mnt/sdb3 und starte das kopieren, dann kommt cp sicher irgendwann an das verzeichnis /mnt/sdb3. hierbei kommts mir aufs verhalten an. wird das mitkopiert = unnötig oder nicht? |
|
Back to top |
|
|
69719 l33t
Joined: 20 Sep 2004 Posts: 865
|
Posted: Fri Aug 01, 2008 12:34 pm Post subject: |
|
|
Angenommen
/mnt/sdb3 hat folgenden Inhalt
Code: |
/mnt/sdb3/file/lustig.avi
/mnt/sdb3/musik/blah.mp3
/mnt/sdb3/bilder/ich.jpg
|
und du führst ein
aus, dann erzeugt das cp ein
Code: |
/ziel/sdb3/file/lustig.avi
/ziel/sdb3/musik/blah.mp3
/ziel/sdb3/bilder/ich.jpg
|
Wenn du aber nun ein
Code: |
cp /mnt/sdb3/* /ziel
|
aufrufst, dann erzeugt das cp ein
Code: |
/ziel/file/lustig.avi
/ziel/musik/blah.mp3
/ziel/bilder/ich.jpg
|
|
|
Back to top |
|
|
ScytheMan l33t
Joined: 30 Nov 2005 Posts: 605
|
Posted: Fri Aug 01, 2008 12:45 pm Post subject: |
|
|
Ja, das ist mir klar.
Um mal bei deinem Beispiel zu bleiben:
Angenommen
/mnt/sdb3 hat folgenden Inhalt
Code: |
/mnt/sdb3/file/lustig.avi
/mnt/sdb3/musik/blah.mp3
/mnt/sdb3/bilder/ich.jpg
/mnt/sdb3/ziel
|
und du führst ein
Code: |
cp /mnt/sdb3/* /mnt/sdb3/ziel
|
durch
erhalte ich dann:
Code: |
/mnt/sdb3/file/lustig.avi
/mnt/sdb3/musik/blah.mp3
/mnt/sdb3/bilder/ich.jpg
/mnt/sdb3/ziel
/mnt/sdb3/ziel/file/lustig.avi
/mnt/sdb3/ziel/musik/blah.mp3
/mnt/sdb3/ziel/bilder/ich.jpg
/mnt/sdb3/ziel/ziel
/mnt/sdb3/ziel/ziel/file/lustig.avi
/mnt/sdb3/ziel/ziel/musik/blah.mp3
/mnt/sdb3/ziel/ziel/bilder/ich.jpg
...
|
oder lediglich:
Code: |
/mnt/sdb3/file/lustig.avi
/mnt/sdb3/musik/blah.mp3
/mnt/sdb3/bilder/ich.jpg
/mnt/sdb3/ziel
/mnt/sdb3/ziel/file/lustig.avi
/mnt/sdb3/ziel/musik/blah.mp3
/mnt/sdb3/ziel/bilder/ich.jpg
|
|
|
Back to top |
|
|
sicus Tux's lil' helper
Joined: 15 May 2008 Posts: 91 Location: Ravensburg, Germany
|
Posted: Fri Aug 01, 2008 1:23 pm Post subject: |
|
|
siehe manpage von cp:
parameter: -x (oder --one-file-system)
damit sollte er nur daten von diesem dateisystem kopieren und gemountete partitionen übergehen _________________ Freiheit den Sourcen, sie haben es nicht verdient, eingesperrt zu sein!! |
|
Back to top |
|
|
ScytheMan l33t
Joined: 30 Nov 2005 Posts: 605
|
Posted: Fri Aug 01, 2008 1:32 pm Post subject: |
|
|
ah das klingt gut.
wie sieht es bei cp mit den Rechten aus? Bleiben die erhalten oder muss ich dafür -p anhängen?
wie exclude ich Ordner wie z.B. proc oder dev?
oder benötige ich dafür erst ein tar mit --exclude-from= parameter?
gruß ScytheMan |
|
Back to top |
|
|
sicus Tux's lil' helper
Joined: 15 May 2008 Posts: 91 Location: Ravensburg, Germany
|
Posted: Fri Aug 01, 2008 1:38 pm Post subject: |
|
|
da proc und dev gemountete virtuelle dateisysteme sind werden sie vermutlich ebenfalls übergangen wenn du -x verwendest. (garantie geb ich aber keine) _________________ Freiheit den Sourcen, sie haben es nicht verdient, eingesperrt zu sein!! |
|
Back to top |
|
|
ScytheMan l33t
Joined: 30 Nov 2005 Posts: 605
|
Posted: Fri Aug 01, 2008 1:51 pm Post subject: |
|
|
sicus wrote: | da proc und dev gemountete virtuelle dateisysteme sind werden sie vermutlich ebenfalls übergangen wenn du -x verwendest. (garantie geb ich aber keine) |
nein, das hat nicht ganz so geklappt hab es bereits ausprobiert.
also bleibt eig. nur noch die lösung mit dem tar archiv, da cp sowas wie exclude nicht vorsieht (jedenfalls hab ich nichts gefunden) |
|
Back to top |
|
|
toralf Developer
Joined: 01 Feb 2004 Posts: 3942 Location: Hamburg
|
Posted: Fri Aug 01, 2008 2:01 pm Post subject: |
|
|
oder Code: | tar -cpf- | (cd <other dir>; tar -xpf-) |
Last edited by toralf on Fri Aug 01, 2008 2:10 pm; edited 1 time in total |
|
Back to top |
|
|
69719 l33t
Joined: 20 Sep 2004 Posts: 865
|
Posted: Fri Aug 01, 2008 2:01 pm Post subject: |
|
|
Dann geh das doch mal ganz anders an und gib nur die quell Order an die du kopiert haben willst und das Ziel. Oder lösch anschließend die überflüssigen Ordner weg. Manch einer wäre mit den 12 GB schon längst fertig.
Code: |
gendevel sdb3 # l /mnt/sdb3/
total 68K
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 bin
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 boot
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 dev
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 etc
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 home
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 lib
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 lost+found
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 mnt
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 opt
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 proc
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 root
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 sbin
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 secrets.tdb
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 sys
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 tmp
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 usr
drwxr-xr-x 2 root root 4.0K Aug 1 16:02 var
gendevel sdb3 # cp -av /mnt/sdb3/{bin,opt,var} /mnt/test/
`/mnt/sdb3/bin' -> `/mnt/test/bin'
`/mnt/sdb3/opt' -> `/mnt/test/opt'
`/mnt/sdb3/var' -> `/mnt/test/var'
|
|
|
Back to top |
|
|
manuels Advocate
Joined: 22 Nov 2003 Posts: 2146 Location: Europe
|
|
Back to top |
|
|
toralf Developer
Joined: 01 Feb 2004 Posts: 3942 Location: Hamburg
|
Posted: Fri Aug 01, 2008 3:03 pm Post subject: |
|
|
manuels wrote: | Wieso nutzt ihr nicht rsync? Das ist ein wundervolles Tool. | Für ein *ein*maliges Kopieren ? |
|
Back to top |
|
|
py-ro Veteran
Joined: 24 Sep 2002 Posts: 1734 Location: Velbert
|
Posted: Fri Aug 01, 2008 4:47 pm Post subject: |
|
|
Ja, da, wie ich letztens lernen durfte, wirklich alle Attribute und Zeitstempel korrekt mitkopiert werden.
Außerdem ist es praktisch, falls das kopieren abbricht bzw. abgebrochen wird, man muss nicht von vorne anfangen.
Mit den richtigen Parametern versteht sich!
Py |
|
Back to top |
|
|
tamiko Developer
Joined: 02 Sep 2006 Posts: 96
|
Posted: Sat Aug 02, 2008 9:30 am Post subject: |
|
|
Ich rate auch zu rsync. Mit sieht man dann auch sofort, ob alles richtig läuft.
Eine alternative ist natürlich cp. Dann aber bitte mit cp -a , so dass auch hier Attribute und Berechtigungen richtig gesetzt werden.
Falls man dem -x nicht traut kann man auch etwas in der Art Code: | mount -o bind / /mnt/root
cp -a /mnt/root/* ... | machen. Dann kopiert man auch keine Einbindungen mit. |
|
Back to top |
|
|
l3u Advocate
Joined: 26 Jan 2005 Posts: 2616 Location: Konradsreuth (Germany)
|
Posted: Sat Aug 02, 2008 10:06 am Post subject: |
|
|
Ich mach das immer so:
Code: | mkdir /alt
mkdir /neu
mount <Festplatte 1> /alt
mount <Festplatte 2> /neu
cd /alt
tar -cvpP * | tar -xpPC /neu |
|
|
Back to top |
|
|
sprittwicht l33t
Joined: 04 Dec 2003 Posts: 644
|
Posted: Sat Aug 02, 2008 10:07 am Post subject: |
|
|
Also am einfachsten meiner Meinung nach: Knoppix booten, Platte A mounten, Platte B mounten, cp -av /mnt/a /mnt/b, fertig
Eine gemountete Rootpartition aus sich selbst heraus zu kopieren, wie ich dein Vorhaben jetzt verstanden habe, ist immer eine blöde Idee, da das laufende System ja ständig irgendwelche Änderungen am Dateisystem vornehmen kann.
Mit der Knoppix-Variante hast du nachher eine garantiert konsistente Kopie der Originalpartition. dd würd ich überhaupt nicht empfehlen. Zum einen ist die Größe der neuen Platte garantiert nicht 100% identisch mit der alten, was aber eigentlich kein Problem ist, solange sie zumindest groß genug ist. Zum anderen kopierst du aber eben jeden Müll, wie z.B. die unbenutzen 420 GB mit. Last but not least gibst du dem Dateisystem bei einem cp die Chance sich neu zu organisieren, was aber eher bei vollgestopften Platten interessant wird. |
|
Back to top |
|
|
l3u Advocate
Joined: 26 Jan 2005 Posts: 2616 Location: Konradsreuth (Germany)
|
Posted: Sat Aug 02, 2008 2:24 pm Post subject: |
|
|
Ach so, es geht um ne root-Partition? Dann selbes Vorgehen, aber von ner Live-CD. |
|
Back to top |
|
|
ScytheMan l33t
Joined: 30 Nov 2005 Posts: 605
|
Posted: Sat Aug 02, 2008 2:30 pm Post subject: |
|
|
@escor, sicher manch einer wär schon längst fertig mit. ich bins nun auch, hab dann deine lösung genommen, wobei es mit nem exclude, was cp leider net hat, noch nen tick schöner gewesen wäre.
Danke für eure Hilfe
Ich setze mal solved. |
|
Back to top |
|
|
|