[gelöst] dd mit UUID - Debian System übertragen

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

[gelöst] dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 03.03.2023 07:20:29

Hallo Forum,

ich möchte zwei Partitionen clonen um ein Debian System zu kopieren.
Das System (/ und /home) soll von zwei logischen Partitionen auf zwei primäre Partitionen übertragen werden.

dd debian wiki https://wiki.debianforum.de/Dd#Aufruf

dd ubuntu wiki https://wiki.ubuntuusers.de/dd/
Falls man plant beide Platten gleichzeitig im selben PC zu betreiben, ist darauf zu achten, dass die UUIDs der geklonten Platte geändert werden, da es sonst zu Konflikten kommt.
Das System wird bei mir nicht gleichzeitig in einem PC betreiben.

dd https://www.shellbefehle.de/befehle/dd/

Code: Alles auswählen

dd if=/dev/sda1 of=/dev/sdb1 bs=2K
Werden mit dem vorherigen Befehlt auch die UUID's mit übernommen?

MfG
AxelMD
Zuletzt geändert von AxelMD am 04.03.2023 11:06:40, insgesamt 3-mal geändert.

Benutzeravatar
MSfree
Beiträge: 10752
Registriert: 25.09.2007 19:59:30

Re: dd mit UUID - Debian System übertragen

Beitrag von MSfree » 03.03.2023 08:24:57

mache deinen dd-Kopie und führe hinterher

Code: Alles auswählen

lsblk -f
aus, dann wirst du es schon sehen. :wink:

Benutzeravatar
cosinus
Beiträge: 3423
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: dd mit UUID - Debian System übertragen

Beitrag von cosinus » 03.03.2023 09:15:35

AxelMD hat geschrieben: ↑ zum Beitrag ↑
03.03.2023 07:20:29
Werden mit dem vorherigen Befehlt auch die UUID's mit übernommen?
Ja. Mit dd machst du ja ne 1:1-Kopie auf Sektorlevel.

AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

Re: dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 03.03.2023 13:23:22

[image]https://i.imgur.com/bDso3EE.jpg[/image]

https://i.imgur.com/bDso3EE.jpg

Bild

Wie löse ich das Problem?

Was muss ich eingeben?

Benutzeravatar
cosinus
Beiträge: 3423
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: dd mit UUID - Debian System übertragen

Beitrag von cosinus » 03.03.2023 13:51:23

Kannst du mal verraten auf was für ne Zielplatte du geklont hast? 8O
Die soll nur angeblich 5120000 Blöcke/Sektoren haben also weniger als das geklonte Filesystem.

AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

Re: dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 03.03.2023 13:58:58

Code: Alles auswählen

dd if=/dev/sdc5 of=/dev/sda2 bs=2K

sdc5 ist ein logisches Volume

sda2 ist eine primäre Partition

Liegt es daran?
Zuletzt geändert von AxelMD am 03.03.2023 14:33:36, insgesamt 1-mal geändert.

Benutzeravatar
cosinus
Beiträge: 3423
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: dd mit UUID - Debian System übertragen

Beitrag von cosinus » 03.03.2023 14:33:08

Poste mal die Partitionstabellen (gdisk -l) von der Quell- und Zielplatte.

AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

Re: dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 03.03.2023 14:39:53

Code: Alles auswählen

gdisk -l /dev/sda
GPT fdisk (gdisk) version 1.0.8

Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present


***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. 
***************************************************************

Disk /dev/sda: 117210240 sectors, 55.9 GiB
Model: HTS541060G9SA00 
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): A1BB19D3-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 117210206
Partitions will be aligned on 2048-sector boundaries
Total free space is 3133 sectors (1.5 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048        30722047   14.6 GiB    0700  Microsoft basic data
   2        30722048        71682047   19.5 GiB    8300  Linux filesystem
   3        71682048       108742655   17.7 GiB    8300  Linux filesystem
   4       108742656       117209087   4.0 GiB     8200  Linux swap

Quelle hdd

Code: Alles auswählen

gdisk -l /dev/sdc
GPT fdisk (gdisk) version 1.0.8

Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present


***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. 
***************************************************************

Disk /dev/sdc: 488397168 sectors, 232.9 GiB
Model: 2115            
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): B5A44C96-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 488397134
Partitions will be aligned on 2048-sector boundaries
Total free space is 9603 sectors (4.7 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048          206847   100.0 MiB   8300  Linux filesystem
   2          206848       205006847   97.7 GiB    0700  Microsoft basic data
   5       205008896       245969833   19.5 GiB    8300  Linux filesystem
   6       245970944       286930943   19.5 GiB    8300  Linux filesystem
   7       286932992       479795199   92.0 GiB    0700  Microsoft basic data
   8       479797248       488396799   4.1 GiB     8200  Linux swap
Was kann man daraus ersehen?

Neuer Versuch:

Bild

Meldung: No space left on device

Wo liegt der Fehler?

chrbr
Beiträge: 550
Registriert: 29.10.2022 15:53:26

Re: dd mit UUID - Debian System übertragen

Beitrag von chrbr » 03.03.2023 16:49:18

Hallo,

Ach, ich sehe gerade:
sda2:
2 30722048 71682047 19.5 GiB 8300 Linux filesystem
71682047-30722048
40959999
sdc5:
5 205008896 245969833 19.5 GiB 8300 Linux filesystem
245969833-205008896
40960937

40959999-40960937
-938
sda2 ist also ein kleines bisschen kleiner als sdc5. Du könntest versuchen, mindestens 938 Blöcke weniger zu kopieren.

EDIT: Oben habe ich übersehen, dass die HDDs Sektorengrössen von 512Byte anstatt 2048Byte haben. Deshalb wäre count mit dem Faktor 512/2048 = 0.25 zu multiplizieren.
Zuletzt geändert von chrbr am 03.03.2023 19:00:51, insgesamt 1-mal geändert.

AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

Re: dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 03.03.2023 17:07:45

Ist evtl. Partimage doch das bessere Tool in meinem Fall?
Partimage: https://www.partimage.org/
Antwort, nein: "ext4 Current default Linux filesystem unsupported"

Partclone: https://blog.doenselmann.com/festplatte ... erstellen/
Im Gegensatz zu „dd“ sichert Partclone nur die tatsächliche vorhandenen Daten. Je nach Größe der Festplatte kann hier aber schon etwas zusammenkommen. Um die Größe des Images kleiner zu halten, kann das Image gleich komprimiert werden.
Nachdem ic sda6 etwas vergrößert habe:

Bild

Muss bei dd die Zielpartition immer mind. genauso groß oder größer wie die Quellpartition sein?
Gibt es evtl. eine force Option?
Zuletzt geändert von AxelMD am 03.03.2023 17:36:45, insgesamt 1-mal geändert.

chrbr
Beiträge: 550
Registriert: 29.10.2022 15:53:26

Re: dd mit UUID - Debian System übertragen

Beitrag von chrbr » 03.03.2023 17:29:35

AxelMD hat geschrieben: ↑ zum Beitrag ↑
03.03.2023 17:07:45
Muss bei dd die Zielpartition immer mind. genauso groß oder größer wie die Quellpartition sein?
Ja, sonst passen die Daten nicht auf das neue Ziel. In deinem Fall kannst du mit bs=2k und count=ZAHL etwa 99.9% von sdc5 kopieren.
Ich rechne mal mit bc:

Code: Alles auswählen

40959999/2048
19999

40960937/2048
20000
Also könnte

Code: Alles auswählen

dd if=/dev/sdc5 of=/dev/sda2 bs=2K count=19999
funktionieren. Vielleicht ist count auch einer weiger. Rechne das mal nach. Dann solltest du fsck auf die Kopie machen.

EDIT: Lesen muss man können :facepalm: . Du hast das Problem ja schon anderweitig gelöst.

AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

Re: dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 03.03.2023 17:41:24

sda3 ist kleiner als sdc6

sda3

Code: Alles auswählen

3        71682048       108742655   17.7 GiB    8300  Linux filesystem
sdc6

Code: Alles auswählen

6       245970944       286930943   19.5 GiB    8300  Linux filesystem
Wie muss ich da den dd Befehlt mit count=xxxx anpassen?

Code: Alles auswählen

dd if=/dev/sdc6 of=/dev/sda3 bs=2K count=xxxx
Zuletzt geändert von AxelMD am 03.03.2023 19:46:10, insgesamt 1-mal geändert.

chrbr
Beiträge: 550
Registriert: 29.10.2022 15:53:26

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von chrbr » 03.03.2023 19:12:25

AxelMD hat geschrieben: ↑ zum Beitrag ↑
03.03.2023 17:41:24
Wie muss ich da den dd Befehlt mit count=xxxx anpassen?
Erst einmal: Ich habe in einem vorherigen Post einen Fehler berichtigt.

Die Berechnung geht wie oben. sda3 hat 108742655-71682048=37060607 Blöcke, wahrscheinlich wieder 512k, sdc6 hat 286930943-245970944=40959999 Blöcke. Davon kannst Du also nur 37060607 kopieren. In Blöcken von 2k sind das

Code: Alles auswählen

37060607*0.25
9265151.75
2k Blöcke. Also ist count=9265151. Ich meine mit gpart oder so kannst Du die Nutzdaten von sdc6 am den Anfang von sdc6 verschieben. So lange die Nutzdaten in die Kapazität von sda3 nicht überschreiten sollte das Kopieren alles erwischen.

AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 03.03.2023 19:46:25

Danke

Benutzeravatar
cosinus
Beiträge: 3423
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: dd mit UUID - Debian System übertragen

Beitrag von cosinus » 03.03.2023 20:21:29

chrbr hat geschrieben: ↑ zum Beitrag ↑
03.03.2023 16:49:18
EDIT: Oben habe ich übersehen, dass die HDDs Sektorengrössen von 512Byte anstatt 2048Byte haben.
Äh, nein. Sektorgrößen von 2048 Byte gibt es nicht wirklich.
Seit ca. 2010 gibt es Festplatten im Advanced Format. Die haben intern eine Sektorgröße von 4096 Byte, werden aber wie übliche Platten mit 512-Byte-Sektoren angesprochen. AxelMD hat hier warum auch immer bei dd eine Blocksize von 2k angegeben. Und vor dem Klonen nicht überprüft, ob die Partitionsgrößen auch identisch sind. Die Zielpartition hätte auch größer sein können, sie darf nur nicht kleiner sein.

Und es muss auch nicht immer dd sein. Man hätte auch einfach auf Dateisystemlevel arbeiten können zB mit rsync.

chrbr
Beiträge: 550
Registriert: 29.10.2022 15:53:26

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von chrbr » 03.03.2023 21:01:46

cosinus hat geschrieben: ↑ zum Beitrag ↑
03.03.2023 20:21:29
Und es muss auch nicht immer dd sein. Man hätte auch einfach auf Dateisystemlevel arbeiten können zB mit rsync.
Das ist definitiv die beste Antwort. Ich habe mich leider an dd fest gebissen.

AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 04.03.2023 07:10:56

An die Anleitung habe ich mich gehalten, daher die Wahl mit bs=2K:
dd https://www.shellbefehle.de/befehle/dd/

Code: Alles auswählen

dd if=/dev/sda1 of=/dev/sdb1 bs=2K
Welche Nachteile hat die Wahl bs=2K bei einer alten HDD?

Default ist 2023 bei Debian 11 immer bs=4K ?

Welche Sektor- Blockgröße ist die ideale Wahl?
Beitrag von cosinus » 03.03.2023 20:21:29
Und es muss auch nicht immer dd sein. Man hätte auch einfach auf Dateisystemlevel arbeiten können zB mit rsync.
Dann muss ich danach UUID's anpassen und die initramfs neu schreiben.


Info 4k Sectors vs 512 Byte Sector https://www.sevarg.net/2021/09/11/4k-vs ... chmarking/

Bild

AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 04.03.2023 10:56:45

Debian 11

Defaultinstallation / Neuinstallation

Code: Alles auswählen

sudo gdisk -l /dev/sda
GPT fdisk (gdisk) version 1.0.6

Warning: Partition table header claims that the size of partition table
entries is 1119092736 bytes, but this program  supports only 128-byte entries.
Adjusting accordingly, but partition table may be garbage.
Warning: Partition table header claims that the size of partition table
entries is 0 bytes, but this program  supports only 128-byte entries.
Adjusting accordingly, but partition table may be garbage.
Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present


***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. 
***************************************************************

Exact type match not found for type code 1200; assigning type code for
'Linux filesystem'
Disk /dev/sda: 117210240 sectors, 55.9 GiB
Model: HTS541060G9SA00 
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 2C4F8A88-xxxxxxxxxxxxxxxxxxxxxxxxxx
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 117210206
Partitions will be aligned on 2048-sector boundaries
Total free space is 9277 sectors (4.5 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         1026047   500.0 MiB   8300  Linux filesystem
   2         1026048        31746047   14.6 GiB    0700  Microsoft basic data
   5        31748096        72708095   19.5 GiB    8300  Linux filesystem
   6        72710144       108607487   17.1 GiB    8300  Linux filesystem
   7       108609536       117209087   4.1 GiB     8200  Linux swap
Wo ist jetzt ein Unterschied zu der bs=2K Option?

chrbr
Beiträge: 550
Registriert: 29.10.2022 15:53:26

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von chrbr » 04.03.2023 11:02:20

Vor ewig und drei Tagen als die Festplatten eher MByte als GByte hatten, da hat man je nach erwarteten Dateigrößen den Sektor Size konfiguriert. Wenn ich zum Beispiel viele kleine Dateien mit 100 Bytes habe, dann wird trotzdem jeder Block mit nur den 100 Bytes genutzt. Bei 512 Byte Sektorgröße sind also 412 Bytes verschwendet, bei 2k=2048 Bytes sind 1948 Bytes verschwendet. Heute spielt das allerdings keine Rolle mehr. Die Festplatten sind groß genug.

chrbr
Beiträge: 550
Registriert: 29.10.2022 15:53:26

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von chrbr » 04.03.2023 11:18:06

Mal sehen, wie es bei mir mit einer nvme aussieht:

Code: Alles auswählen

# gdisk -l /dev/disk/by-uuid/06CD-A6C7 
...
Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present
 ...
Disk /dev/disk/by-uuid/06CD-A6C7: 1048576 sectors, 512.0 MiB
Sector size (logical/physical): 512/512 bytes
Das ist also praktisch gleich. Hier hätte ich auch 4k Sektor Size erwartet. Wahrscheinlich (TM) wird das im Treiber zur Hardware passend umgesetzt.

Zum bs= bei dd: Das spielt keine Rolle. Nur sollte der bs ein ganzzahliges Vielfaches der Sektor Size sein. Bei SSDs ist auch nicht klar, was die Firmware macht. Zum Teil wird gesagt, dass wenn man zum Beispiel 1k schreiben will letztendlich ein viel größerer Block geschrieben wird.

Da ist es sinnvoll, den bs auf 1M = 1024*1024 Bytes zu setzen.

Benutzeravatar
cosinus
Beiträge: 3423
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von cosinus » 04.03.2023 16:36:02

chrbr hat geschrieben: ↑ zum Beitrag ↑
04.03.2023 11:02:20
Vor ewig und drei Tagen als die Festplatten eher MByte als GByte hatten, da hat man je nach erwarteten Dateigrößen den Sektor Size konfiguriert. Wenn ich zum Beispiel viele kleine Dateien mit 100 Bytes habe, dann wird trotzdem jeder Block mit nur den 100 Bytes genutzt. Bei 512 Byte Sektorgröße sind also 412 Bytes verschwendet, bei 2k=2048 Bytes sind 1948 Bytes verschwendet. Heute spielt das allerdings keine Rolle mehr. Die Festplatten sind groß genug.
Wie hat man denn das gemacht?! 8O
Die Sektorgröße war ein fester Wert, den konnte man nicht ändern.
Meinst du vllt die Clustergrößen im Dateisystem? Selbst da hatte man beim damaligen Betriebssystem DOS nur FAT zur Auswahl und nicht wirklich die Option da was zu drehen.
Aktuelle Dateisysteme setzen standardmäßig auf Clustergrößen von 4096 Byte.

AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 04.03.2023 16:55:39

Aktuelle Dateisysteme setzen standardmäßig auf Clustergrößen von 4096 Byte.
Defaultinstallation / Neuinstallation viewtopic.php?p=1321486#p1321462

Warum sieht das bei mir anders aus?

Benutzeravatar
cosinus
Beiträge: 3423
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von cosinus » 04.03.2023 17:11:34

AxelMD hat geschrieben: ↑ zum Beitrag ↑
04.03.2023 16:55:39
Warum sieht das bei mir anders aus?
Was bitte soll da anders aussehen?

Code: Alles auswählen

Disk /dev/sda: 117210240 sectors, 55.9 GiB
Model: HTS541060G9SA00 
Sector size (logical/physical): 512/512 bytes
Deine SSD hat eine physikalische Sektorgröße von 512 Byte. Beim Advanced Format geht es um Festplatten, nicht um SSDs.
Und die physische Sektorgröße hat nichts mit der Blocksize des Dateisystems zu tun. Die ist bei ext4 standardmäßig 4096 Byte.

AxelMD
Beiträge: 1378
Registriert: 15.03.2009 08:02:11

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von AxelMD » 04.03.2023 17:16:37

Bei meiner SSD (anderer PC) Crucial MX500 sieht es auch so aus.

512/512 bytes

Code: Alles auswählen

 sudo gdisk -l /dev/sda
GPT fdisk (gdisk) version 1.0.8

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 3907029168 sectors, 1.8 TiB
Model: CT2000MX500SSD1 
Sector size (logical/physical): 512/512 bytes

Benutzeravatar
cosinus
Beiträge: 3423
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: [gelöst] dd mit UUID - Debian System übertragen

Beitrag von cosinus » 04.03.2023 17:26:57

Ja, und? Genau so soll es sein. SSDs haben immer eine physische Sektorgröße von 512 Byte. Hat meine 1-TB-SSD von Samsung auch :)

Code: Alles auswählen

Disk /dev/sda: 1953525168 sectors, 931.5 GiB
Model: Samsung SSD 870 
Sector size (logical/physical): 512/512 bytes

Antworten