Archiso

Aus wiki.archlinux.de

Archiso wird verwendet um monatlich aktuelle Arch Linux ISO-Images herauszugeben.
Auch einige Arch Linux Derivate nutzen das Programm um Live Medien unter dem eigenen Label herauszugeben.

Installation

Das Programm ist als archiso in extra verfügbar, und kann von dort mittels Pacman installiert werden.

pacman -S archiso


Baseline Profil

Das Baseline Profil enthält nur die aller nötigsten Pakete zum Booten mit der Live-ISO und anschließender Installation von Arch Linux.
Das zu erstellende archlinux-baseline-<date>-x86_64.iso wird etwa 340 MB groß werden.

Vorgehensweise

Kopieren des Profils ins eigene /home Verzeichnis:

cp -r /usr/share/archiso/configs/baseline ~/archiso


Wechsel ins Verzeichnis:

cd ~/archiso


Erstellen des Arch-ISOs:

# mkarchiso ~/archiso

Der Befehl benötigt die Ausführung mit Root-Privilegien und kann einige Minuten in Anspruch nehmen.
Das fertige Image befindet sich danach im Ordner ~/archiso/out


Releng Profil

Die Releng Imagedatei hat eine Größe von ca. 530MB.

Vorgehensweise

cp -r /usr/share/archiso/configs/releng ~/archiso
cd ~/archiso
# mkarchiso ~/archiso

Der letzte Befehl benötigt die Ausführung mit Root-Privilegien und kann einige Minuten in Anspruch nehmen.
Das fertige Image befindet sich danach im Ordner ~/archiso/out


Anfertigen eines USB-Sticks

Laufwerksabfrage:

# fdisk -l


Übertragen des ISO-Images auf einen USB-Stick:

# dd bs=4M if=~/archiso/out/archlinux-<profil><date>-x86_64.iso of=/dev/<sdx> status=progress


Individuelle Anpassungen

Die beiden in den vorigen Abschnitten erstellten Images entsprechen bis auf die Aktualität den Images, die man auch von offizeillen Stellen herunterladen könnte. Will man allerdings Anpassungen vornehmen, was ja in den meisten Fällen der Sinn hinter dem ganzen Vorgehen ist, muss man Anpassungen vornehmen.


Konfiguration des Releng Profils

  • pacman-conf - In der pacman.conf Datei können die Software Repositorien ausgewählt werden. Standardmäßig sind hier core,extra und community vorgewählt. Hier kann z.B. das multilib Repositorium mit eingebunden werden.
  • packages.x86_64 - In der packages.x86_64 Datei können zusätzliche Software Pakete oder Paketgruppen zeilenweise gelistet werden. Beispielsweise könnten hier X11 und Treiber zusätzlich gelistet werden.
xorg-server 
xorg-xinit
xorg-drivers
lxqt
firefox
thunderbird

Anpassung des Profil-Skripts

Die nun folgende Änderung des Skriptes erlaubt es vor der Erstellung einer ISO-Datei zusätzliche Einstellungen vorzunehmen.


  • Mehrmaliges Ausführen: - Der mkarchiso Befehl hat einen Schutzmechanismus, der die mehrmalige Ausführung verhindert. Es empfiehlt sich den gesamten ~/archiso/work Ordner zu löschen bzw. mit der Option -w einen anderen Ordner zu verwenden.

Konfiguration des Filesystems

Durch das Kopieren des Profiles wurde ein neu erstellter Verzeichnisbaum eines typischen Systems im Ordner ~/archiso/work/x86_64/airootfs angelegt. Dieser kann direkt bearbeitet werden.

Die nun aufgeführten Konfigurationshinweise beziehen sich ausschließlich auf das Filesystem im Ordner ~/archiso/releng/airootfs (bzw. ~/archiso/baseline/airootfs)

Löschen von speziellen Skripten

Die ausschließlich für das Installations-Medium vorinstallierten Skripte können wieder entfernt werden.

# rm ~/archiso/releng/airootfs/etc/mkinitcpio-archiso.conf
Hinzufügen oder Ändern von Dateien

Die Möglichkeiten sind schier unbegrenzt. Zum Beispiel könnte man durch Editieren der Dateien ~/archiso/releng/airootfs/etc/passwd, ~/archiso/releng/airootfs/etc/shadow, ~/archiso/releng/airootfs/etc/group und ~/archiso/releng/airootfs/etc/gshadow einen User einrichten, oder ausgewählte Dateien aus dem eigenen /home-Ordner mit in das ISO übernehmen. Dazu bildet man einfach entsprechenden Verzeichnisbäume unter ~/archiso/releng/ nach.


Chrooten

Das neu erstellte System kann eingehängt und in einer Chrootumgebung gestartet werden. Die Einrichtung von Benutzern ist hier leider nicht möglich, da in der Chroot dbus und einige systemd Kommandos nicht funktionieren.

sudo mount -o bind ~/archiso/work/x86_64/airootfs /mnt
sudo arch-chroot /mnt /bin/bash

Anschließend wird die Chrootumgebung wieder verlassen

exit
sudo umount /mnt

Anschließend kann eine ISO-Datei erstellt werden

sudo ./mkiso.sh

Zusätzliche Tipps zur Einrichtung

Import der archlinux keys

# pacman-key --init
# pacman-key --populate archlinux

Aktivierung des graphischen Login (optional)

Ändern des 'systemd default target' von 'multi-user.target' in eines das ein graphische Login erlaubt.

# systemctl disable multi-user.target
# systemctl enable graphical.target

Siehe auch