Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
ArchLinux - Archiso anpassen
Das hier verwendete Installations-ISO-Image ist die einzige verfügbare Variante von ArchLinux in der Version 2020.12.01. archios
ist ein Werkzeuge zum Erstellen von ArchLinux Live- und Installations-ISO-Images.
Beschreibung | Externer Link |
---|---|
Homepage | https://www.archlinux.de/ |
Herunterladen | https://www.archlinux.de/download |
Dokumentation | https://wiki.archlinux.de/title/Hauptseite |
Archiso | https://wiki.archlinux.org/index.php/Archiso |
Ab hier werden root
-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um der Benutzer root
zu werden, geben Sie bitte nachfolgenden Befehl ein:
$ su - Password:
Installation: archiso
Nachfolgendes Paket ermöglichen die Installation der Bearbeitungsmöglichkeit für ArchLinux ISO-Images (archiso
) und die Möglichkeit personalisierte ArchLinux-ISO Images unter ArchLinux zu erstellen.
archiso
- Werkzeuge zum Erstellen von ArchLinux Live- und Installations-ISO-Images.
# pacman -S --noconfirm archiso resolving dependencies... looking for conflicting packages... Package (7) New Version Net Change Download Size extra/arch-install-scripts 23-2 0.04 MiB 0.01 MiB extra/libburn 1.5.2-2 0.70 MiB 0.28 MiB extra/libisoburn 1.5.2-2 1.63 MiB 0.71 MiB extra/libisofs 1.5.2-2 0.75 MiB 0.25 MiB extra/mtools 4.0.26-1 0.38 MiB 0.20 MiB community/squashfs-tools 4.4-2 0.31 MiB 0.12 MiB extra/archiso 50.1-1 0.15 MiB 0.08 MiB Total Download Size: 1.65 MiB Total Installed Size: 3.95 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... arch-install-scr... 14.2 KiB 1421 KiB/s 00:00 [######################] 0% libburn-1.5.2-2-... 298.6 KiB 2.92 MiB/s 00:00 [######################] 17% libisofs-1.5.2-2... 556.9 KiB 3.02 MiB/s 00:00 [######################] 32% libisoburn-1.5.2... 1280.3 KiB 4.47 MiB/s 00:00 [######################] 75% mtools-4.0.26-1-... 1489.8 KiB 4.55 MiB/s 00:00 [######################] 88% archiso-50.1-1-any 1571.6 KiB 3.94 MiB/s 00:00 [######################] 92% squashfs-tools-4... 1690.7 KiB 3.75 MiB/s 00:00 [######################] 100% (7/7) checking keys in keyring [######################] 100% (7/7) checking package integrity [######################] 100% (7/7) loading package files [######################] 100% (7/7) checking for file conflicts [######################] 100% (7/7) checking available disk space [######################] 100% :: Running pre-transaction hooks... (1/1) Performing snapper pre snapshots for the following configurations... ==> root: 65 :: Processing package changes... (1/7) installing arch-install-scripts [######################] 100% (2/7) installing libburn [######################] 100% (3/7) installing libisofs [######################] 100% (4/7) installing libisoburn [######################] 100% Optional dependencies for libisoburn tk: for xorriso-tcltk frontend (5/7) installing mtools [######################] 100% Optional dependencies for mtools libx11: required by floppyd [installed] libxau: required by floppyd [installed] (6/7) installing squashfs-tools [######################] 100% (7/7) installing archiso [######################] 100% Optional dependencies for archiso edk2-ovmf: for emulating UEFI with run_archiso qemu: for run_archiso :: Running post-transaction hooks... (1/3) Arming ConditionNeedsUpdate... (2/3) Updating the info directory file... (3/3) Performing snapper post snapshots for the following configurations... ==> root: 66
Nachfolgender Befehl listet den installierten Inhalt des Pakets pacman-contrib
auf:
# pacman -Qil archiso Name : archiso Version : 50.1-1 Description : Tools for creating Arch Linux live and install iso images Architecture : any URL : https://gitlab.archlinux.org/archlinux/archiso Licenses : GPL3 Groups : None Provides : None Depends On : arch-install-scripts bash dosfstools e2fsprogs libisoburn mtools squashfs-tools Optional Deps : edk2-ovmf: for emulating UEFI with run_archiso qemu: for run_archiso Required By : None Optional For : None Conflicts With : None Replaces : None Installed Size : 149.29 KiB Packager : David Runge <dvzrv@archlinux.org> Build Date : Tue 01 Dec 2020 09:23:05 AM CET Install Date : Sun 27 Dec 2020 07:07:15 AM CET Install Reason : Explicitly installed Install Script : No Validated By : Signature archiso /usr/ archiso /usr/bin/ archiso /usr/bin/mkarchiso archiso /usr/bin/run_archiso archiso /usr/share/ archiso /usr/share/archiso/ archiso /usr/share/archiso/configs/ archiso /usr/share/archiso/configs/baseline/ archiso /usr/share/archiso/configs/baseline/airootfs/ archiso /usr/share/archiso/configs/baseline/airootfs/etc/ archiso /usr/share/archiso/configs/baseline/airootfs/etc/mkinitcpio.conf archiso /usr/share/archiso/configs/baseline/airootfs/etc/mkinitcpio.d/ archiso /usr/share/archiso/configs/baseline/airootfs/etc/mkinitcpio.d/linux.preset archiso /usr/share/archiso/configs/baseline/airootfs/etc/shadow archiso /usr/share/archiso/configs/baseline/efiboot/ archiso /usr/share/archiso/configs/baseline/efiboot/loader/ archiso /usr/share/archiso/configs/baseline/efiboot/loader/entries/ archiso /usr/share/archiso/configs/baseline/efiboot/loader/entries/archiso-x86_64-linux.conf archiso /usr/share/archiso/configs/baseline/efiboot/loader/loader.conf archiso /usr/share/archiso/configs/baseline/packages.x86_64 archiso /usr/share/archiso/configs/baseline/pacman.conf archiso /usr/share/archiso/configs/baseline/profiledef.sh archiso /usr/share/archiso/configs/baseline/syslinux/ archiso /usr/share/archiso/configs/baseline/syslinux/syslinux-linux.cfg archiso /usr/share/archiso/configs/baseline/syslinux/syslinux.cfg archiso /usr/share/archiso/configs/releng/ archiso /usr/share/archiso/configs/releng/airootfs/ archiso /usr/share/archiso/configs/releng/airootfs/etc/ archiso /usr/share/archiso/configs/releng/airootfs/etc/hostname archiso /usr/share/archiso/configs/releng/airootfs/etc/locale.conf archiso /usr/share/archiso/configs/releng/airootfs/etc/localtime archiso /usr/share/archiso/configs/releng/airootfs/etc/mkinitcpio.conf archiso /usr/share/archiso/configs/releng/airootfs/etc/mkinitcpio.d/ archiso /usr/share/archiso/configs/releng/airootfs/etc/mkinitcpio.d/linux.preset archiso /usr/share/archiso/configs/releng/airootfs/etc/modprobe.d/ archiso /usr/share/archiso/configs/releng/airootfs/etc/modprobe.d/broadcom-wl.conf archiso /usr/share/archiso/configs/releng/airootfs/etc/motd archiso /usr/share/archiso/configs/releng/airootfs/etc/passwd archiso /usr/share/archiso/configs/releng/airootfs/etc/resolv.conf archiso /usr/share/archiso/configs/releng/airootfs/etc/shadow archiso /usr/share/archiso/configs/releng/airootfs/etc/ssh/ archiso /usr/share/archiso/configs/releng/airootfs/etc/ssh/sshd_config archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/journald.conf.d/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/journald.conf.d/volatile-storage.conf archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/logind.conf.d/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/logind.conf.d/do-not-suspend.conf archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/network/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/network/20-ethernet.network archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/network/20-wireless.network archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/choose-mirror.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/dbus-org.freedesktop.network1.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/dbus-org.freedesktop.resolve1.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/etc-pacman.d-gnupg.mount archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/getty@tty1.service.d/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/getty@tty1.service.d/autologin.conf archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/livecd-alsa-unmuter.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/livecd-talk.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/multi-user.target.wants/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/multi-user.target.wants/choose-mirror.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/multi-user.target.wants/iwd.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/multi-user.target.wants/livecd-talk.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/multi-user.target.wants/pacman-init.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/multi-user.target.wants/reflector.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/multi-user.target.wants/systemd-networkd.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/multi-user.target.wants/systemd-resolved.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/network-online.target.wants/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/pacman-init.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/reflector.service.d/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/reflector.service.d/archiso.conf archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/sockets.target.wants/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/sockets.target.wants/systemd-networkd.socket archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/sound.target.wants/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/sound.target.wants/livecd-alsa-unmuter.service archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/systemd-networkd-wait-online.service.d/ archiso /usr/share/archiso/configs/releng/airootfs/etc/systemd/system/systemd-networkd-wait-online.service.d/wait-for-only-one-interface.conf archiso /usr/share/archiso/configs/releng/airootfs/etc/xdg/ archiso /usr/share/archiso/configs/releng/airootfs/etc/xdg/reflector/ archiso /usr/share/archiso/configs/releng/airootfs/etc/xdg/reflector/reflector.conf archiso /usr/share/archiso/configs/releng/airootfs/root/ archiso /usr/share/archiso/configs/releng/airootfs/root/.automated_script.sh archiso /usr/share/archiso/configs/releng/airootfs/root/.zlogin archiso /usr/share/archiso/configs/releng/airootfs/root/customize_airootfs.sh archiso /usr/share/archiso/configs/releng/airootfs/usr/ archiso /usr/share/archiso/configs/releng/airootfs/usr/local/ archiso /usr/share/archiso/configs/releng/airootfs/usr/local/bin/ archiso /usr/share/archiso/configs/releng/airootfs/usr/local/bin/Installation_guide archiso /usr/share/archiso/configs/releng/airootfs/usr/local/bin/choose-mirror archiso /usr/share/archiso/configs/releng/airootfs/usr/local/bin/livecd-sound archiso /usr/share/archiso/configs/releng/airootfs/usr/local/share/ archiso /usr/share/archiso/configs/releng/airootfs/usr/local/share/livecd-sound/ archiso /usr/share/archiso/configs/releng/airootfs/usr/local/share/livecd-sound/asound.conf.in archiso /usr/share/archiso/configs/releng/efiboot/ archiso /usr/share/archiso/configs/releng/efiboot/loader/ archiso /usr/share/archiso/configs/releng/efiboot/loader/entries/ archiso /usr/share/archiso/configs/releng/efiboot/loader/entries/archiso-x86_64-linux.conf archiso /usr/share/archiso/configs/releng/efiboot/loader/entries/archiso-x86_64-speech-linux.conf archiso /usr/share/archiso/configs/releng/efiboot/loader/loader.conf archiso /usr/share/archiso/configs/releng/packages.x86_64 archiso /usr/share/archiso/configs/releng/pacman.conf archiso /usr/share/archiso/configs/releng/profiledef.sh archiso /usr/share/archiso/configs/releng/syslinux/ archiso /usr/share/archiso/configs/releng/syslinux/archiso_head.cfg archiso /usr/share/archiso/configs/releng/syslinux/archiso_pxe-linux.cfg archiso /usr/share/archiso/configs/releng/syslinux/archiso_pxe.cfg archiso /usr/share/archiso/configs/releng/syslinux/archiso_sys-linux.cfg archiso /usr/share/archiso/configs/releng/syslinux/archiso_sys.cfg archiso /usr/share/archiso/configs/releng/syslinux/archiso_tail.cfg archiso /usr/share/archiso/configs/releng/syslinux/splash.png archiso /usr/share/archiso/configs/releng/syslinux/syslinux.cfg archiso /usr/share/doc/ archiso /usr/share/doc/archiso/ archiso /usr/share/doc/archiso/AUTHORS.rst archiso /usr/share/doc/archiso/CONTRIBUTING.rst archiso /usr/share/doc/archiso/README.altbootmethods archiso /usr/share/doc/archiso/README.bootparams archiso /usr/share/doc/archiso/README.build archiso /usr/share/doc/archiso/README.knownissues archiso /usr/share/doc/archiso/README.profile.rst archiso /usr/share/doc/archiso/README.rst archiso /usr/share/doc/archiso/README.transfer
Vorbereiten eines benutzerdefinierten Profils
Archiso wird mit zwei Profilen geliefert,
releng
- wird verwendet, um das offizielle monatliche Installations-ISO zu erstellen. Es kann als Ausgangspunkt für die Erstellung eines angepassten ISO-Images verwendet werden.- baseline - ist eine minimalistische Konfiguration, die nur die nötigsten Pakete enthält, um die Live-Umgebung vom Medium zu booten.
Um nun auf Basis des Profils releng
ein persönlich angepasstes ArchLinux Live- und Installations-ISO-Image zu erstellen, kann nun eine Kopie von
/usr/share/archiso/configs/releng
in ein beschreibbares Verzeichnis mit einem angepassten Namen wie folgt durchgeführt werden:
# cp -ar /usr/share/archiso/configs/releng /home/klaus/customarch
Anpassen des ISO-Image Profils
Nachfolgend soll ein persönlich angepasstes ArchLinux Live- und Installations-ISO-Imageerstellt werden, mit
- aktiviertem und laufendem
sshd
Dienst/Daemon - einem gesetzten Passwort für den Benutzer
root
- deaktivierten des Auto-Login (automatische Anmeldung des Benutzer
root
)
Start sshd.service
Wie im externen Link unter
beschrieben, werden systemd
-Dienste in der Live-Umgebung aktiviert, indem die richtigen symbolischen Links erstellt werden. Nachfolgende Befehle, können somit verwendet werden, um den sshd.service
zu aktivieren, damit dieser beim Starten (booten) in eine Live-Umgebung mit gestartet wird.
Zunächst muss eine neues Verzeichnis in der zuvor kopierten Verzeichnisstruktur mit nachfolgendem Befehl geschaffen werden:
# mkdir -p /home/klaus/customarch/airootfs/etc/systemd/system/multi-user.target.wants
Anschliessend kann dann symbolischer Link in soeben neu erstellten Verzeichnis mit nachfolgendem Befehl erstellt werden:
# ln -s /usr/lib/systemd/system/sshd.service /home/klaus/customarch/airootfs/etc/systemd/system/multi-user.target.wants/
Ob die beiden zuvor durchgeführten Befehl erfolgreich waren, kann mit nachfolgendem Befehl überprüft werden, welchen den Inhalt des neu erstellten Verzeichnisses, gefiltert auf den sshd.service
, darstellen sollte und eine Ausgabe in etwa wie die nachfolgende zum Vorschein bringen sollte:
# ls -l /home/klaus/customarch/airootfs/etc/systemd/system/multi-user.target.wants/ | grep sshd.service lrwxrwxrwx 1 root root 36 Dec 27 07:32 sshd.service -> /usr/lib/systemd/system/sshd.service
root-Passwort
Nachfolgende Befehl erstellt eine Passwort im Format, welches auch in der Konfigurationsdatei /etc/sahdow
erwartete wird:
# openssl passwd -6 Password: Verifying - Password: $6$pKK8Kb2GcpFrP.Mo$90CchGXA7/Xxq3Efgsg9oHoG1j3vRLP5FiEvv0FxyRjwS2atGoxO8jgsbGPl1G2lx4zSOfNF8PCRbY4x6aVxU/
Die so erhaltene Zeichenkette muss nun wie folgt in die Konfigurationsdatei
/home/klaus/customarch/airootfs/etc/shadow
an die entsprechende Stelle, kopiert werden, was nachfolgende Darstellung zeigt:
Vorher:
root::14871::::::
Nachher*¹:
root:$6$pKK8Kb2GcpFrP.Mo$90CchGXA7/Xxq3Efgsg9oHoG1j3vRLP5FiEvv0FxyRjwS2atGoxO8jgsbGPl1G2lx4zSOfNF8PCRbY4x6aVxU/:14871::::::
*¹ Die Zeichenkette mit dem kodierten Passwort muss zwischen dem ersten und zweiten Doppelpunkt eingefügt werden!
Deaktivierung Auto-Login
Nachfolgender Befehl löscht die Konfiguration zum Auto-Login, der automatischen Anmeldung als Benutzer root
direkt nach dem Starten des personalisierten ArchLinux-ISO Images:
# rm -f /home/klaus/customarch/airootfs/etc/systemd/system/getty@tty1.service.d/autologin.conf
Erstellen des ISO-Images
Nachfolgender Befehl erstellt ein personalisiertes ArchLinux-ISO Image, das dann auf CD oder USB gebrannt bzw. kopiert werden kann:
# mkarchiso -v -w /home/klaus/work -o /home/klaus/out /home/klaus/customarch/
Erklärungen:
-v
-v
gibt eine erweiterte Ausgabe aus.
-w /home/klaus/work
-w
gibt das Arbeitsverzeichnis an. Wenn die Option nicht angegeben wird, wird standardmässig im aktuellen Verzeichnis gearbeitet.
-o /home/klaus/out
-o
gibt das Verzeichnis an, in dem das erstellte ISO-Abbild abgelegt wird. Wenn die Option nicht angegeben wird, wird standardmässig out im aktuellen Verzeichnis verwendet.
# mkarchiso -v -w /home/klaus/work -o /home/klaus/out /home/klaus/customarch/