Ich bin gerade dabei, ein Debian Testing auf meinem SheevaPlug zu installieren und werde hier parallel mitschreiben, was ich mache und was ich anders als die Anleitung mache.
Ich habe eine 8GB SD-Karte Class 6 von Kingston gekauft und sie mit FAT32 formatiert. Auf die Karte habe ich anschliessend die Dateien uInitrd und uImage des Debian Installers für Testing kopiert. Dann musste ich nur ein Terminal aufmachen, ein USB-Kabel mit dem Mini-USB-Port meines SheevaPlug verbinden und das Geräte neustarten. Danach schnell folgenden Befehl im Terminal absetzen:
screen /dev/cu.usbserial-FTSY9OWRB 115200
Damit bin ich im u-boot und kann mit folgenden Befehlen die Images von der SD-Karte laden:
mmcinit
fatload mmc 0:2 0x01100000 /uInitrd
fatload mmc 0:2 0x00800000 /uImage
Hier gibt es schon eine kleine Abweichung, denn auf meiner Karte liegen die Images auf der zweiten Partition (obwohl ich nur 1 Partition angelegt habe). Also musste ich statt mmc 0:1 in den Befehl mmc 0:2 verwenden.
Anschliessend habe ich mit folgenden Befehlen das Debian gestartet
setenv bootargs console=ttyS0,115200n8 base-installer/initramfs-tools/driver-policy=most BOOT_DEBUG=3 DEBIAN_FRONTEND=text
bootm 0x00800000 0x01100000
Wichtig dabei ist auf der Parameter DEBIAN_FRONTEND=text, da ansonsten nur Zeichenmüll angezeigt wird. Ob das am Installer liegt, der in der Variante newt evtl UTF-8 anzeigen will, kann ich nicht sagen. Das gute alte Plain Text gefällt mir sowieso am besten.
Nachdem die Ländereinstellungen gesetzt sind (Sprache: Englisch/US, Land: Deutschland), verbindet sich der Installer zum nächsten Debian-Server und lädt einige Komponenten nach. Eine Internetverbindung mit DHCP ist also angebracht.
Die Fragen nach der Partitionierung beantworte ich auf einfachstem Weg: Benutze die SD-Karte und installiere alles in eine einzige Partition.
Etwas überrascht habe ich dann gesehen, dass der Installer 3 Partition angelegt hat: /boot, / und swap. Anschliessend bin ich noch in folgenden Fehler gelaufen, der in der Anleitung beschrieben ist:
There’s one bug in the partitioner of the current version of the installer that you should be aware of. In some cases, you’ll get a error message saying that the installer failed to inform the kernel about modifications to a partition. In the majority of cases, you can simply choose ignore (for each partition) and it will work just fine.
Ich ignoriere das also zweimal und hoffe auf eine Fortsetzung der Installation. Klappt natürlich nicht und ich musste die Partitionierung neu starten und auf das beste hoffen.
Nach der dritten Runde lief die Partitionierung dann durch und die Installation des Basissystems wurde gestartet. Danach konnte ich dann erstmal ein gutes Stück von Stargate Universe gucken. Die Basis-Installation brauchte ca. 1h…
Anschliessend muss nur noch das root-Passwort vergeben und ein Benutzeraccount angelegt werden. Danach wird noch einmal nach der Software-Auswahl gefragt, die ich aber jetzt nicht weiter verändere, da ich nur ein Basis-System installieren will und den Rest über das Netzwerk erledigen will. Ein SSH-Zugang ist doch bequemer als das kurze USB-Kabel und die serielle Konsole.
Nachdem die Installation fertig ist, wird das System neu gestartet. Jetzt muss noch einmal der Bootvorgang unterbrochen werden, damit das System für das Booten des Debian Testing eingerichtet werden kann. Dazu müssen die Boot-Parameter des u-boot angepasst werden (falls sie nicht schon korrekt sind, weil man ein SheevaPlug für den Multi-Boot-Betrieb hat):
bootargs_console=console=ttyS0,115200
bootargs_root_mmc=root=/dev/mmcblk0p2 rootdelay=5
bootcmd_mmc_image=mmc 0 0x00800000 /uImage
bootcmd_mmc_initrd=mmc 0 0x01100000 /uInitrd
bootcmd_mmc=setenv bootargs $(bootargs_console) $(bootargs_root_mmc); mmcinit; ext2load $(bootcmd_mmc_initrd); ext2load $(bootcmd_mmc_image); bootm 0x00800000 0x01100000
bootcmd=run bootcmd_mmc; run bootcmd_nand
Jetzt wird das Debian geladen, wenn die SD-Karte eingesteckt ist, ansonsten wird das interne NAND-Flash mit dem installierten Ubuntu geladen. Mein System läuft jetzt und ich gehe ins Bett.