Arch Linux kann beim ODROID-U3 auf einer SD-Speicherkarte oder einem eMMC Speicherchip installiert werden. In diesem Beitrag wird gezeigt, wie das System auf eine externe Festplatte verschoben und gestartet wird.
Es wird vorausgesetzt, dass Arch Linux bereits auf einer SD-Karte installiert ist und das System davon gestartet wurde.
Ausgegangen wird von einer bereits partitionierten USB-Festplatte. In
dem vorliegenden Fall befinden sich zwei Partitionen auf ihr. Dabei ist
die zweite Partition mit einem ext4 Dateisystem formatiert, steht im
System als /dev/sda2
zur Verfügung und wird später als neue
Root-Partition verwendet.
Natürlich ist es auch möglich die Partitionierung an dieser Stelle vorzunehmen. In diesem Fall müssen die Parameter im weiteren Verlauf möglicherweise angepasst werden.
Zur Vorbereitung wird zunächst die neue und leere Root-Partition eingebunden.
$ mount /dev/sda2 /mnt/
Anschließend wird das Tool rsync für die Synchronisation der Dateien benötigt und muss installiert werden.
$ pacman -S rsync
Nach der Installation können die Daten von der SD-Karte auf die Festplatte synchronisiert werden. Dies kann mit dem folgendem Befehl geschehen. Wichtig dabei ist jedoch, dass alle Berechtigungen für die Dateien und Ordner erhalten bleiben.
$ rsync -aAXv --progress --verbose /* /mnt/ --exclude={/dev/*,/proc/*,/sys/*,/tmp/*,/run/*,/mnt/*,/media/*,/lost+found}
Anschließend muss die Boot-Konfiguration für das U-Boot angepasst
werden. Hierfür muss in der Datei /boot/uEnv.txt
folgende Zeile
einkommentiert und der Wert für mmcroot
so angepasst werden, dass er
der Root-Partition entspricht.
mmcroot=/dev/sda2 rw rootwait
Damit die Daten der SD-Karte später auch zur Verfügung stehen, wird
folgende Zeile in die Datei /mnt/etc/fstab
eingetragen.
/dev/mmcblk0p1 /media/mmc ext4 rw,relatime,data=ordered 0 1
Danach wird noch das später für das Einhängen benötigte Verzeichnis angelegt.
$ mkdir -p /mnt/media/mmc
Damit der Kernel bei einem Update nicht nur auf der Festplatte, sondern
auch auf der SD-Karte aktualisiert wird, wird das Verzeichnis /boot
von der SD-Karte verwendet.
$ cd /mnt
$ rm -rf boot/
$ ln -s /media/mmc/boot boot
Vor dem Neustart sollten alle eingehängten Medien ausgehängt werden.
$ cd ~
$ sync
$ umount /mnt
Zum Abschluss des Vorgangs ist ein Neustart notwendig.
$ reboot
Nach dem Bootvorgang sollte die externe Festplatte und die SD-Karte entsprechen eingehängt sein.
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 115G 30G 80G 27% /
[ ... ]
/dev/mmcblk0p1 976M 473M 453M 52% /media/mmc
[ ... ]
Links
- Webseite: ODROID (englisch)
- Webseite: Arch Linux ARM (englisch)