Achtung: diese Anleitung ist in weiten Zügen (Konfiguration des Systems) veraltet da per Default nun systemd als Init- und Systemverwaltung eingesetzt wird. Bitte zieht die Wikis zu Rate.
Installationsbericht 2012.07.15
================================
Installiert wird in eine 32-bit VirtualBox Umgebung mit 1GB RAM und 12GB Festplatte.
Eine bestehende Internetverbindung ist für die Installation Grundbedingung!!!
Diese Installation basiert auf dem Wiki-Beitrag zu den Arch-Install-Skripts:
https://wiki.archlinux.de/title/Arch_Install_Scripts
1. Medium runterladen, überprüfen
% cd /tmp
% wget https://downloads.archlinux.de/iso/2012.07.15/archlinux-2012.07.15-netinstall-dual.iso
% wget https://downloads.archlinux.de/iso/2012.07.15/archlinux-2012.07.15-netinstall-dual.iso.sig
% sha1sum archlinux-2012.07.15-netinstall-dual.iso
Prüfsumme muß mit der auf der Downloadseite übereinstimmen. Wer die korrekte Signatur noch überprüfen will: unter Archlinux mit eingerichtetem pacman-Keyring:
% pacman-key -v archlinux-2012.07.15-netinstall-dual.iso.sig
Bild:
Ohne pacman-key ist in meinem Post
HIER eine kurze Vorgehensweise mit gpg
2. Virtualbox-Maschine mit dem ISO-File als CD booten
Gebootet wird der aktuelle Kernel linux 3.4.4. Es wird beim Boot auch der Pacman-Keyring für die Paketsignierung erzeugt (was vorher über pacman-key --int gemacht werden mußte). Für ausreichend Entropie sorgt der haveged-Daemon. Somit steht in der LiveCD-Umgebung schon von Anfang an der komplette pacman-Keyring zur Verfügung (der händische Schritt wie bisher über pacman-key --populate archlinux bzw. trust/sign der Masterkeys entfällt). Dieser Keyring wird auch in das später installierte System übernommen, somit haben wir das erste Mal eine durchgehende Paketverifizierung ab Install-Medium.
Wie bisher landen wir in einer Bash-Shell auf tty1, root ist automatisch angemeldet.
Bild:
Als erstes stelle ich eine deutsche Tastaturbelegung ein (zweimal loadkeys, damit ich nicht mühsam nach dem Bindestrich suche muß; de sorgt für x/y ud z.B. den Bindestrich, latin1 für die Umlaute)
3. Festplatte partitionieren
Ich partitioniere so, wie es der Installer beim Punkt "automatische Partitionierung" gemacht hätte, v.a. um den Umgang auch mit den Partitionen zu zeigen. Also:
a) 100 MB Boot-Partition (Primary)
b) 7500 MB Root-Partition (ist zu knapp für X und Windowmanager, aber ich teste ja nur) (Logisch)
c) 500 MB Swap (Logisch)
d) Rest für die Home-Partition (Logisch)
# cfdisk /dev/sda
Bild:
sda1 = Bootpartition /boot
sda5 = Rootpartition /
sda6 = Swap (den FS-Typ auf 82 setzen!)
sda7 = Homepartition /home
Ich verzichte hier auf den Umgang mit LVM, RAID oder Verschlüsselung. Bei Bedarf bieten die jeweiligen Wiki-Seiten Anleitungen zum Einrichten.
4. Dateisysteme erstellen ("Formatieren")
In der VirtualBox-Maschine haben wir ja eine leere Festplatte vorgefunden. Real ist peinlichst darauf zu achten, daß keine bestehenden Partitionen (Windows z.B.) in Punkt 3 umpartitioniert würden, bzw. hier ein falsches Blockdevice formatiert würde. Deshalb am besten (bei Unsicherheit) die Partitionsbezeichner wie sda1 auf einem Papier notieren und die durchstreichen, die währed der Installation auf keinen Fall "angefaßt" werden dürfen, z.B.
sda1 = Windows = Format N
sda2 = / = Format Y
Wir formatieren jetzt unsere obigen Partitionen:
# mkfs.ext2 -L "Boot" /dev/sda1
# mkfs.ext4 -L "Root" /dev/sda5
# mkfs.ext4 -L "Home" /dev/sda7
# mkswap -L "Swap" /dev/sda6
Bild:
5. Partitionen des zu installierenden Systems einhängen
Das System, welches wir installieren, ist aus Sicht der LiveCD unterhalb /mnt zu finden. Als erstes müssen wir das Root-Device einhängen, dann die anderen Blockdevices.
# mount /dev/sda5 /mnt
# mkdir /mnt/boot
# mkdir /mnt/home
# mount /dev/sda1 /mnt/boot
# mount /dev/sda7 /mnt/home
6. Internetzugriff einrichten
# dhcpcd eth0
# ping -c3 www.google.de
Bild:
Als Texteditoren stehen der vi (nicht vim!) und nano zur Verfügung. Man kann sich aber in die LiveCD-Umgebung auch andere Editoren/Tools installieren, z.B. den vim. Ich nutze gerne als Editor den mcedit aus dem Paket mc (MidnightCommander), was mir noch einen Dateimanager mitbringt. Für vim und mc:
# pacman -Sy
# pacman -S vim mc
7. Basissystem einrichten
Wie bei den bisherigen Installationen geht es hier darum, erstmal nur das Basis-System zu installieren um nach dem ersten Boot ein funktionierendes System mit einer Login-Shell zu haben. Die eigentliche Systeminstallation (X, Programme) sollte also im gebooteten, "richtigen" System später passieren. Notwendige Pakete (WLan-Treiber/Module z.B.) kann/sollte man schon mitinstallieren, damit das neue System ebenfalls Inetrnetzugriff hat.
Ich installiere in das neue System ebenfalls noch den vim und den mc mit. Auf geht es mit:
# pacstrap /mnt base vim mc
base ist hier die Pakete aus der gleichnamigen Gruppe.
Bild:
Ein anderer Mirror kann wie immer über Editieren der /etc/pacman.d/mirrorlist verwendet werden, der erste Eintrag wird primär verwendet.
Bitte warten… Ich habe fertig!
8. Bootloader
Ich verwende hier syslinux, im MasterBootRecord von sda.
# pacstrap /mnt syslinux
# syslinux-install_update -i -a -m -c /mnt
Bild:
# mcedit /mnt/boot/syslinux/syslinux.cfg
Runterscrollen bis zu den Einträgen LABEL arch und archfallback. Hier muß bei beiden die APPEND-Zeile angepaßt werden:
root=/dev/sda5
da sda5 ja unser Rootdevice ist. Die initrd auf dem Boot-Device(sda1) wird von syslinux automatisch gefunden und bedarf hier keine besondere Einstellung. Speichern mit F2, verlasse von mcedit mit F10.
9. System konfigurieren
Ich entscheide mich für sysvinit als Initsystem, also die alte Variante mit der /etc/rc,conf. Als erstes lassen wir uns eine fstab-Datei erstellen mit den Partitonen, die wir auf dem neuen System verwede wollen. Deshalb ist es wichtig, daß oben alle erstellten Partitionen (auch die sda7 /home) uterhalb /mnt eingehängt wurden. Nur eingehängte Partitionen können von genfstab gefunden werden.
# genfstab -p /mnt >> /mnt/etc/fstab
# mcedit /mnt/etc/fstab
Hier sind nun alle unsere Blockdevices aufgeführt und entsprechend zum Einhängen für den Systemstart vorbereitet. genfstab "erkennt" keine Swap-Partitionen, deshalb tragen wir diese noch zusätzlich ein:
Bild:
Jetzt chroot'ten wir in das neu aufgesetzte System (arch-chroot kümmert sich automatisch um die Pseudo-dateisysteme wie proc, dev und sys).
# arch-chroot /mnt
Hierbei wird das Linux der LiveCD quasi "ausgeblendet", dafür unser neues System in /mnt "aktiviert" als hätten wir es gestartet. Die noch notwendigen Arbeiten wie initrd-Image generieren etc. geschehen also schon im neuen System - deshalb fällt ab jetzt das vorangestellte /mnt weg!
# mcedit /etc/rc.conf
Die wichtigsten Einstellungen vornehmen (Lokalisierung, Netzwerk). Das ist nichts anderes als in den bisherigen Anleitungen auch:
Bild:
Bild:
# ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
Dieser Symlink sorgt für die korrekte Zeitzone und Uhrzeit.
# mcedit /etc/locale.gen
Hier entferne ich die Kommentarzeichen(#) von alle 3 de_DE Einträgen. Danach die neuen Locales generieren lassen:
# locale-gen
Jetzt noch das Paßwort für root setzen. Man kann damit auch bis nach dem ersten Boot warten, wenn man Umlaute/Sonderzeichen darin verwenden möchte und erstmal sicherstellen will, daß die Lokale-Umgebung auf dem neues System richtig eingerichtet ist.
# passwd
Der letzte Schritt ist das Erzeugen der Initrd-Images. Die Default-Einstellungen sind für unser Setup ausreichend, lediglich LVM, RAID und Lukscrypt-User müßten hier noch weitere Hooks aktivieren. Ebenso andeer Einstellungen in der /etc/rc,conf. Aber das steht alles in den Wikiartikeln, für jetzt ohne Belang.
# mcedit /etc/mkinitcpio.conf
(Nichts zu ändern)
# mkinitcpio -p linux
Meldungen über Fehler mit der default locale können igoriert werden.
10. chroot verlassen und Reboot
Mit exit oder STRG+D das chroot verlassen, wir landen wieder in der LiveCD-Umgebung.
# exit
Dateisysteme aushängen und rebooten.
# umount /mnt/home
# umount /mnt/boot
# umount /mnt
# reboot
Bei Virtualbox noch die Bootreihenfolge von HD/CD umstellen, oder per F12 primary master auswählen. Sonst wird weiterhin von der CD gebootet.
Das war's!