RaspiOS installieren ohne komplette SD bzw. Datenträger(partition) dabei zu löschen

  • RaspiOS installieren ohne komplette SD bzw. Datenträger(partition) dabei zu löschen? Schau mal ob du hier fündig wirst!

  • Richtig? - Ob das geht und das System startet ?

    Ja und theoretisch ja. :) Wie ich oben schon geschrieben habe, wäre das meine Theorie dazu. Ich habe das nie gemacht und kann dir nicht versichern das es funktioniert. Ich wüsste aber nicht, warum es nicht funktionieren sollte, wenn beim übertragen nichts schief läuft. Ein Backup wäre aber ein gute Idee.

  • Da fehlen aber die beiden Partitionen.

    Servus !

    Die hatte ich doch schon bereits gepostet.

    Hier nochmal:

    Die FAT Bootpartition

    Disk /dev/sda1: 256 MiB, 268435456 bytes, 524288 sectors

    Units: sectors of 1 * 512 = 512 bytes

    Sector size (logical/physical): 512 bytes / 512 bytes

    I/O size (minimum/optimal): 512 bytes / 33553920 bytes

    Disklabel type: dos

    Disk identifier: 0x00000000

    Die RaspiOS EXT4 Partition (wurde vergrößert)

    Disk /dev/sda2: 9,8 GiB, 10485760000 bytes, 20480000 sectors

    Units: sectors of 1 * 512 = 512 bytes

    Sector size (logical/physical): 512 bytes / 512 bytes

    I/O size (minimum/optimal): 512 bytes / 33553920 bytes

    Hier die NTFS:

    Disk /dev/sda3: 921,5 GiB, 989445750784 bytes, 1932511232 sectors

    Units: sectors of 1 * 512 = 512 bytes

    Sector size (logical/physical): 512 bytes / 512 bytes

    I/O size (minimum/optimal): 512 bytes / 33553920 bytes

    Disklabel type: dos

    Disk identifier: 0x00000000

    und hier das auf die NTFS kopierte RaspiOS image:

    Disk /media/ntfs/RaspiOS.img: 3,6 GiB, 3821010944 bytes, 7462912 sectors

    Units: sectors of 1 * 512 = 512 bytes

    Sector size (logical/physical): 512 bytes / 512 bytes

    I/O size (minimum/optimal): 512 bytes / 512 bytes

    Disklabel type: dos

    Disk identifier: 0x58ce116e

  • Ja und theoretisch ja. :) Wie ich oben schon geschrieben habe, wäre das meine Theorie dazu. Ich habe das nie gemacht und kann dir nicht versichern das es funktioniert. Ich wüsste aber nicht, warum es nicht funktionieren sollte, wenn beim übertragen nichts schief läuft. Ein Backup wäre aber ein gute Idee.

    Gut - OK, bei einem Linux System habe ich das nie probiert - Aber bei einem Windows System wäre das so nie gegangen (Ist schon eine Ewigkeit her, als ich solche Experimente gemacht hatte) . Da hätten dann irgendwelche Zeiger nicht nicht mehr gestimmt oder relevante EInträge im MBR etc.

    Ich bin mal gespannt auf was RTFM raus will.

    Aber, wenn hier Deine These keiner wiederlegen kann, werde ich das zumindest einmal probieren. Bevor ich die Standardinstallationsvariante wähle - denn gelöscht ist schnell. Aber ein paar 100GB der NTFS jedes Mal rüberzuschieben, nervt.

  • Nur aus der "Struktur" sind der Sektoranfang und das Sektorende der jeweiligen Partitionen zu erkennen.

    Du hast jetzt mehrere Möglichkeiten.

    a.) Du steckst die SSD wieder an Windows an und flasht das .img auf die SSD. Keine Angst, es werden nur 7,462.911 Sektoren beschrieben (3,4 GB), die NTFS Partition beginnt erst am Sektor 21,012.480

    Danach trägst Du die Partition 3 mit Sektoranfang 21012480 und Sektorende 1953523711 (Plattenende) ein und dehnst die Partition 2 auf Sektorende 21012479 aus und dehnst das EXT4 Filesystem mit resize2fs aus

    Das hat den Vorteil, dass Du in cmdline.txt und /etc/fstab keine Änderungen vornehmen musst.

    b.) Du mountest als Loopdevice /media/ntfs/RaspiOS.img1 und überträgst alle Dateien nach /dev/sda1 = /boot.

    Dann vom Loopdevice /media/ntfs/RaspiOS.img2 nach /dev/sda2 = /root

    Da musst Du cmdline.txt und /etc/fstab anpassen.

    In allen Fällen musst Du das First-Boot-Service deaktivieren, da es nicht ausgeschlossen ist, dass das root-Filesystem bis zum Plattenende nochmals ausgedehnt wird. Kann, muss aber nicht, das hängt vom Scriptinhalt ab, ob auch nach einer weiteren Partition gesucht wird. Das First-Boot-Service wird bei einer Neuinstallation vermutlich durch einen Eintrag in der cmdline.text aktiviert.

    Die anderen hier genannten Varianten sind natürlich auch möglich und ob < dd if=/media/ntfs/RaspiOS.img1 of=/dev/sda1 > funktioniert, weiss ich nicht, die Partitionsgrössen würden passen.

    Servus !

    zu b.)

    mount -o loop,offset=4194304,sizelimit=268435456 /media/ntfs/RaspiOS.img /mnt/

    umount /mnt

    mount -o loop,offset=272629760,sizelimit=3548381184 /media/ntfs/RaspiOS.img /mnt/

    umount /mnt

    Für alle Fälle cmdline.txt:

    console=serial0,115200 console=tty1 root=PARTUUID=58ce116e-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh splash plymouth.ignore-serial-consoles

    RTFM = Read The Factory Manual, oder so

    Einmal editiert, zuletzt von RTFM (12. November 2020 um 22:35)

  • Eine weitere Alternative die ich persoenlich nutzen wuerde:

    1) Installation von Raspbian auf einer spare SD

    2) Anlegen der beiden Raspian Partitionen /boot und / auf ZielSD sofern sie noch nicht existieren

    3) Kopieren von /boot und / von der Spare SD auf die ZielSD

  • Ich habe auch noch einen Fehler in #27 entdeckt.

    Für alle Fälle cmdline.txt:

    console=serial0,115200 console=tty1 root=PARTUUID=58ce116e-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh splash plymouth.ignore-serial-consoles

    Da fehlt jetzt das init= ?/?/init, das erst nach Durchlaufen des raspi-config/init_resize.sh in die cmdline.txt eingetragen (und rebooted) wird.

    Ich habe mir das /usr/lib/raspi-config/init_resize.sh angesehen. Es führt ein resize der root-Partition nur dann durch, wenn die root-Partition die letzte Partition auf der Platte ist. Sobald eine weitere Partition Nr.3 in der Partitionstabelle aufscheint, wird gar nicht resized. Das init=/usr/lib/raspi-config/init_resize.sh kann daher belassen bleiben, um die Einrichtung des frischen Systems nicht zu stören.

    Servus !

    RTFM = Read The Factory Manual, oder so

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!