.IMG auf SD-Karte schreiben mit DD

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
Steve1
Beiträge: 562
Registriert: 21.09.2022 16:42:47
Kontaktdaten:

.IMG auf SD-Karte schreiben mit DD

Beitrag von Steve1 » 14.03.2023 07:49:22

Hi, Guten Morgen,

ich brauche nochmal grundlegend eine Erklärung zu dd, wie ich ein .img auf eine SD-Karte schreibe. Es ist ein Raspberry Image .img und ich möchte gerne dd verwenden.

Die generelle Syntax ist mir klar

Code: Alles auswählen

dd if=Quelle of=Ziel <Optionen>
Doch wie muss es bei mir lauten?

df -h bei gemounteter SD-Karte (16 GB Groß)

Code: Alles auswählen

/dev/mmcblk0p1   15G    8,0K   15G    1% /media/user/SD
Auch das mit einer Status-Anzeige weiß ich nicht mehr, wäre sehr hilfreich.

Muss ich die SD-Karte wieder auswerfen bevor ich den dd-Befehl anwende?

Ich habe ein Deja-Vu und habe so einen ähnlichen Thread schon mal eröffnet, ich finde den allerdings nicht mehr.

Ich würde mich über Hilfe freuen.

Gruß, Steve
Samsung R519: Debian 12 Bookworm XFCE
Dell 7480: Windows 11

schwedenmann
Beiträge: 5525
Registriert: 30.12.2004 15:31:07
Wohnort: Wegberg

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von schwedenmann » 14.03.2023 07:52:17

Hallo

df -h bei gemounteter SD-Karte (16 GB Groß)
Die Karte (das Blockdevice) darf nicht gemountet sein,

dd if=Quelle of=Ziel

dd if=Pfadzumimage of=/dev/mmcblk0p1

wenn mmcblk0p1 die Karte ist

mfg
schwedenmann

DeletedUserReAsG

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von DeletedUserReAsG » 14.03.2023 07:55:29

Es ist drauf zu achten, dass das Image auf die Karte selbst, und nicht in die Partition geschrieben wird: Das Ziel wäre in diesem Fall also mmcblk0, ohne p1.
Steve1 hat geschrieben: ↑ zum Beitrag ↑
14.03.2023 07:49:22
Auch das mit einer Status-Anzeige weiß ich nicht mehr, wäre sehr hilfreich.
status=progress wird gerne genommen. Kann man aber auch weglassen, dann bekommt man am Ende die Zusammenfassung angezeigt. Dran denken, dass am Ende noch die Caches weggeschrieben werden müssen, oder am besten gleich ein oflag=sync mitgeben.

Nähere Details zur Bedienung von dd wie immer in der Manpage des Programms: man dd

--
Edit: Typo
Zuletzt geändert von DeletedUserReAsG am 14.03.2023 16:25:13, insgesamt 2-mal geändert.

Benutzeravatar
Steve1
Beiträge: 562
Registriert: 21.09.2022 16:42:47
Kontaktdaten:

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von Steve1 » 14.03.2023 07:57:56

Code: Alles auswählen

dd if=RPi.img of=/dev/mmcblk0 status=progress oflag=sync
So?
Samsung R519: Debian 12 Bookworm XFCE
Dell 7480: Windows 11


uname
Beiträge: 12046
Registriert: 03.06.2008 09:33:02

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von uname » 14.03.2023 11:21:50

Also ich verwende immer noch ganz altmodisch

Code: Alles auswählen

fdisk -l
Vielleicht wird dort der Device-Name auch angezeigt.
Sonst einfach mal ausprobieren. Was hat man schon zu verlieren.

mat6937
Beiträge: 2927
Registriert: 09.12.2014 10:44:00

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von mat6937 » 15.03.2023 16:32:25

Steve1 hat geschrieben: ↑ zum Beitrag ↑
14.03.2023 07:49:22
df -h bei gemounteter SD-Karte (16 GB Groß)

Code: Alles auswählen

/dev/mmcblk0p1   15G    8,0K   15G    1% /media/user/SD
Auf welchem Gerät siehst Du die SD.Karte, so (d. h. als /dev/mmcblk0p1) gemountet? Auf welchem Gerät/OS willst Du dd benutzen? Poste von dort (mit angeschlossener SD-Karte), die Ausgabe von:

Code: Alles auswählen

lsblk -fp
BTW: Für _gelegentliche_ Status-Abfragen kannst Du an dd, auch das Signal -USR1 senden. Z. B.:

Code: Alles auswählen

pkill -USR1 -n -x dd
(oder gleichwertig).

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

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von chrbr » 16.03.2023 11:36:14

Steve1 hat geschrieben: ↑ zum Beitrag ↑
14.03.2023 07:49:22
df -h bei gemounteter SD-Karte (16 GB Groß)
Per Default werden 512Byte Blöcke schrittweise geschrieben. Bei so einer SD Karte bieten sich größere Blöcke an, zum Beispiel bs=1M.

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

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von cosinus » 16.03.2023 14:10:28

Steve1 hat geschrieben: ↑ zum Beitrag ↑
14.03.2023 07:57:56

Code: Alles auswählen

dd if=RPi.img of=/dev/mmcblk0 status=progress oflag=sync
So?
Alternativ gehts auch mit pv (pipeviewer, musst man idR per apt nachinstallieren), dann haste gleich ne Frotschrittsanzeige

Code: Alles auswählen

pv RPI.img > /dev/mmcblk0

Benutzeravatar
Daemonscript
Beiträge: 1
Registriert: 18.03.2023 15:35:22
Lizenz eigener Beiträge: GNU General Public License

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von Daemonscript » 18.03.2023 16:03:00

Hallo,

also ich mache es immer so:

Code: Alles auswählen

	sudo dd if=quelle.iso of=SD-Karte bs=Blockgröße status=progress && sync
	
	Beispiel:
	sudo dd if=debian.iso of=/dev/sda bs=4096 status=progress && sync

Benutzeravatar
Steve1
Beiträge: 562
Registriert: 21.09.2022 16:42:47
Kontaktdaten:

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von Steve1 » 18.03.2023 21:28:08

lettztlich war mir das mit mmcblk0p1 neu und p1 steht wahrscheinlich für Partition 1? Ich hatte es bisher immer nur mit sdb USB-Sticks zu tun und da war mir klar, dass ich aus sdb1, sdb schreibe im dd Befehl.

Es läuft auf dem Pi, von daher hat alles funktioniert.
Samsung R519: Debian 12 Bookworm XFCE
Dell 7480: Windows 11

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

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von cosinus » 18.03.2023 21:46:28

Steve1 hat geschrieben: ↑ zum Beitrag ↑
18.03.2023 21:28:08
lettztlich war mir das mit mmcblk0p1 neu und p1 steht wahrscheinlich für Partition 1?
Ja. Das Device heißt mmcblk0, mit mmcblk0p1 wird als die erste Partition von /dev/mmcblk0 gemeint. Ist bei NVM-SSDs auch so, da heißt es dann /dev/nvme0n1 und die erste Partition wäre /dev/nvme0n1p1

mat6937
Beiträge: 2927
Registriert: 09.12.2014 10:44:00

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von mat6937 » 18.03.2023 21:51:11

Steve1 hat geschrieben: ↑ zum Beitrag ↑
18.03.2023 21:28:08
Es läuft auf dem Pi, von daher hat alles funktioniert.
Ja, aber als 2. SD-Karte auf bzw. am PI, oder? Wie war dann, genau unmittelbar vor der Ausführung von dd, auf dem PI die Ausgabe von:

Code: Alles auswählen

lsblk -fp
?

Benutzeravatar
Steve1
Beiträge: 562
Registriert: 21.09.2022 16:42:47
Kontaktdaten:

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von Steve1 » 19.03.2023 03:31:07

Nein, als Haupt-SD-Karte, es ist RetroPie und das System läuft und das Spiel läuft.
Samsung R519: Debian 12 Bookworm XFCE
Dell 7480: Windows 11

wanne
Moderator
Beiträge: 7448
Registriert: 24.05.2010 12:39:42

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von wanne » 21.03.2023 10:21:02

cosinus hat geschrieben: ↑ zum Beitrag ↑
16.03.2023 14:10:28
Alternativ gehts auch mit pv (pipeviewer, musst man idR per apt nachinstallieren), dann haste gleich ne Frotschrittsanzeige

Code: Alles auswählen

pv RPI.img > /dev/mmcblk0
btw schneller und schrottet die SD-Karte nicht mit maximaler Geschwindigkeit.
Insbesondere der schießt den Vogel absolut ab.

Code: Alles auswählen

dd if=RPi.img of=/dev/mmcblk0 status=progress oflag=sync && sync
Der schafft vermutlich ein paar hundert Schreibzyklen pro Block (die auf ner SD-Karte limitiert sind) und hat noch 2 weitere Sachen angehängt die den Schreibvorgang weiter vollständig sinnlos ausbremsen. Wenn irgend jemand die man pages gelesen (und verstanden) hätte, statt sinnlos zeug zu kopieren hätte man das nicht gemacht. Kleiner Tipp: Normalerweise wissen Programmierer relativ gut über ihr Programm bescheid und setzen sinnvolle defaults. Ändert die nicht, wenn ihr nicht ganz genau wisst, warum ihr jetzt besondere Interessen habt.

Alternativ:
rsync --info=progress2,name0 RPi.img /dev/mmcblk0
Ich glaube rsync ist in der default Installation
rot: Moderator wanne spricht, default: User wanne spricht.

DeletedUserReAsG

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von DeletedUserReAsG » 21.03.2023 12:23:26

wanne hat geschrieben: ↑ zum Beitrag ↑
21.03.2023 10:21:02
Wenn irgend jemand die man pages gelesen (und verstanden) hätte, statt sinnlos zeug zu kopieren hätte man das nicht gemacht.
Wenn du’s gelesen und verstanden hättest, hättest du zu conv=fsync und zum Weglassen des dadurch überflüssigen sync-Aufrufs geraten, statt unspezifisch rumzuranten.

wanne
Moderator
Beiträge: 7448
Registriert: 24.05.2010 12:39:42

Re: .IMG auf SD-Karte schreiben mit DD

Beitrag von wanne » 27.03.2023 18:53:53

niemand hat geschrieben: ↑ zum Beitrag ↑
21.03.2023 12:23:26
Wenn du’s gelesen und verstanden hättest, hättest du zu conv=fsync und zum Weglassen des dadurch überflüssigen sync-Aufrufs geraten, statt unspezifisch rumzuranten.
Um ehrlich zu sein wäre ich mir da gar nicht so sicher in wie fern ich das verstanden habe. Ich glaube nicht, dass das in dem Fall nötig ist, bin mir aber auch nicht sicher. (Oder ob das sogar kernelversinsabhänig ist.) Auf jen Fall reicht fdatasync oder schlicht && sync /dev/mmcblk0p1. Schaden tuts auch nichts
Bleibt die viel zu kleine Blockgröße, die dir den Stick ruiniert. Auch dafür wurden ja schon Abhilfe von Daemonscript gepostet Genau damit du dich um sowas nicht kümmern musst, willst du high level tools wie pv cp oder rsync nutzen.
rot: Moderator wanne spricht, default: User wanne spricht.

Antworten