Anleitung für Einsteiger: Unterschied zwischen den Versionen
Tuxnix (Diskussion | Beiträge) |
Tuxnix (Diskussion | Beiträge) |
||
Zeile 317: | Zeile 317: | ||
====/etc/....==== | ====Konfigurationsdateien (/etc/....)==== | ||
Es wird in dieser Anleitung von einer deutschen Standardinstallation ausgegangen. | Es wird in dieser Anleitung von einer deutschen Standardinstallation ausgegangen. | ||
Folgende Konfigurationsdateien werden hierzu bearbeitet. | Folgende Konfigurationsdateien werden hierzu bearbeitet. |
Version vom 30. November 2020, 17:34 Uhr
Vorwort
Willkommen bei Arch!
Dieses Dokument soll dich durch den Installationsprozess und die Konfiguration von Arch-Linux führen. Es richtet sich in erster Linie an neue Arch-Linux-Nutzer und stellt gleichzeitig eine gute Informationsquelle für bestehende Anwender dar. Obwohl man mit dieser Anleitung ein nahezu vollständig konfiguriertes Arch-Linux-System mit grafischer Benutzeroberfläche und gängigen Anwendungen erhält, können hier niemals alle Möglichkeiten aufgezeigt werden. Diese Dokumentation beschränkt sich daher auf die wichtigsten Schritte der Grundinstallation, von denen sich das System weiter ausbauen lässt. Zusätzliche Hilfe findet man im englischen Arch Linux-Wiki, im englischen Arch Linux-Forum, aber auch auf der deutschen Seite, die auch ein deutschsprachiges Forum bereitstellt. Häufig gestellte Fragen werden in der FAQ gesammelt und beantwortet. Vielleicht ist man auch an den Grundprinzipien der Arch Linux-Distribution interessiert, die im englischem Wiki im Artikel The Arch Way erklärt werden.
Dieser Artikel ist in Teile gegliedert:
Dem Anwender sollte bewusst sein, dass sich, im Gegensatz zu anderen Linux-Distributionen, die Installation von Arch-Linux deutlich unterscheidet: Das Arch-Linux-System wird im besonderen Maße vom Benutzer geformt. Die Installation liefert ein Grundsystem mit einer Kommandozeilen-Eingabe (bash-Konsole) und grundlegenden Systemprogrammen. Über die Kommandozeilen-Eingabe werden Pakete (Programme und Bibliotheken) unter Zuhilfenahme des Arch-Linux eigenen Paketmanagers pacman von den Arch-Linux-Servern heruntergeladen und installiert, bis das System nach den Bedürfnissen des Benutzers eingerichtet ist. Dies erlaubt maximale Flexibilität, Entscheidungsfreiheit und Kontrolle der Systemressourcen. Dadurch, dass der Anwender an vielen Stellen Konfigurationsschritte durchführen muss, wird er mit dem System vertraut und wird es von Grund auf kennenlernen. Diese Vorgehensweise richtet sich einerseits an kompetente GNU/Linux Benutzer, sowie Anwender, die ihr System grundlegend erforschen wollen.
Die Entwicklungs-Prinzipien hinter Arch-Linux liegen darin, die Dinge einfach zu halten.
Bedenke, dass 'einfach' in diesem Zusammenhang nicht 'benutzerfreundlich' bedeutet, sondern eher 'ohne unnötige Zusätze, Änderungen oder Komplikationen'. Kurz gesagt: ein eleganter, minimalistischer Ansatz. (http://de.wikipedia.org/wiki/KISS-Prinzip)
Falls Du denkst, dass etwas Wichtiges fehlt oder nicht funktioniert, schick mir eine Mitteilung an <freigeist [at] elfenbeinturm.cc>. Oder füge die Verbesserung, oder was auch immer Du anfangs gebraucht hast, ein (was die Hauptidee eines Wikis ist :)). Es gibt auch ein englisches Arch Forum-Eintrag, der Anfängern gewidmet ist. Oder gehe zum deutschen Arch Forum.
- Falls Du zu diesem Wiki beitragen möchtest, füge bitte das 'Weshalb' und das 'Wie' ein, wenn es passend ist. Die beste Dokumentation lehrt uns das Wie sowie das Warum!
Das neueste ISO-Abbild beziehen
Hinweis: Arch Linux kann auch von einem bereits installierten Arch Linux-System installiert werden. Hierzu werden die benötigten tools mittels pacman -S arch-install-scripts
installiert. Danach kann die Installation mit dem Kapitel Partitionieren des Datenträgers fortgesetzt werden.
Das neueste ISO-Abbild kann von www.archlinux.org/download/ heruntergeladen werden.
Das ISO-Abbild beinhaltet nur die nötigen Programme, um ein minimales GNU/Linux Grundsystem zu installieren. Beachte, dass ein minimales Grundsystem keine grafische Oberfläche enthält. Der Rest des Arch-Linux-Systems - einschließlich grafischer Oberfläche - wird von der Kommandozeile aus eingerichtet. Dieser Prozess wird detailliert weiter unten besprochen.
ISO-Abbild prüfen
Beim Download mittels Torrent oder Magnet Link wird die ISO-Datei automatisch nach dem Download auf Übereinstimmung mit dem Original überprüft. Wird das ISO-Abbild per HTTPS heruntergeladen, sollte eine Prüfung mit der MD5- oder SHA1-Summe stattfinden. Soll eine CD oder DVD erstellt werden, ist es besser die Prüfung auf Übereinstimmung erst nach dem Brennvorgang zu tätigen.
md5sum archlinux-*-x86_64.iso
oder
sha1sum archlinux-*-x86_64.iso
( * ist mit dem Datum der Arch.iso Datei zu ersetzen.)
Die so ermittelte Zeichenkette sollte mit den Angaben auf der Webseite übereinstimmen.
ISO-Abbild auf CD oder DVD brennen
Generell ist es ratsam, mit einer Geschwindigkeit von maximal 12x zu brennen, um verlässliche CDs bzw. DVDs zu erhalten. Von einem Linux System, kann dies mit Anwendungen wie k3b und Brasero oder per Kommandozeile durchgeführt werden:
wodim dev=/dev/sr0 speed=12 -dao -eject -v archlinux-*-x86_64.iso
oder mit
cdrecord dev=/dev/sr0 speed=12 -dao -eject -v archlinux-*-x86_64.iso
oder mit
cdrskin dev=/dev/sr0 speed=12 -dao -eject -v archlinux-*-x86_64.iso
Nach dem Brennen sollte die MD5-Prüfsumme oder die SHA1-Prüfsumme der CD/DVD mit den Angaben auf www.archlinux.org/download/ verglichen werden.
md5sum /dev/sr0
für MD5-Prüfsumme und
sha1sum /dev/sr0
für SHA1-Prüfsumme, wobei der Pfad des Laufwerks (sr0) abweichen kann.
Stimmt eine der Prüfsummen mit der Angabe auf www.archlinux.org/download/ überein, ist das gebrannte Medium fehlerfrei.
Wenn die CD mit Windows gebrannt werden soll, kann das mit dem kostenlosen Programmen CDBurnerXP oder cdrtfe durchgeführt werden.
ISO-Abbild auf USB-Stick übertragen
Der USB-Stick darf nicht gemountet sein darf. Zunächst sollte mit folgendem Befehl die Partitionsbezeichnung des USB-Stick ermittelt werden:
# fdisk -l
Danach kann die ISO-Datei auf den Stick übertragen werden.
# dd bs=4M if=/pfad/archlinux-*-x86_64.iso of=/dev/sdX status=progress oflag=sync
Dabei ist sdX der erkannte USB-Stick. (X ist durch den entsprechenden Buchstaben zu ersetzen.) Beachte: Alle Daten auf dem USB-Stick werden gelöscht!
USB-Stick mit ISO-Abbild auf Windows erstellen
Umbenennen der Endung des Arch-ISO-Images von .iso nach .img .
Herunterladen des Programms von http://sourceforge.net/projects/win32diskimager/ . Entpacken und starten.
Auswählen des Arch .img Images und des USB-Sticks. Klicken auf write.
Ab jetzt kann vom USB-Stick neu gebootet und von dort aus Arch-Linux installiert werden.
Teil 1: Installation des Grundsystems
Die Hardware-Uhr auf UTC einstellen
Die Hardware-Uhr (real time clock) im Bios des PC's sollte auf UTC eingestellt sein. Die Umrechnnung auf die zeitzonenspezifische Lokalzeit wird standardmäßig durch das jeweilige Betriebssystem nach den Einstellungen des Benutzers vorgenommen. Um UTC zu erhalten, muss man von unserer aktuellen Lokalzeit in Deutschland im Winter 1h und im Sommer 2h abziehen.
Starten mit dem Arch Linux ISO
Es kann jetzt per CD oder USB-Stick gestartet werden. Es kann sein, dass die Startreihenfolge der Laufwerke des Computers im BIOS geändert oder eine Taste (normalerweise F11 oder F12) während der BIOS-Phase gedrückt werden muss. Es ist bei UEFI-Rechnern empfehlenswert, „Secure Boot“ im BIOS zu deaktivieren. Falls der PC später einmal mit „Secure Boot“ starten soll, so ist nach der Grundinstallation hier nachzuschlagen: UEFI_Installation#Secure_Boot.
Arch Linux unterstützt standardmäßig nur 64-Bit-Rechner (x86_64). Ein 32-Bit-System (i686) kann nur über das Community-Projekt Arch Linux 32 installiert werden. Wenn man nicht weiß, ob der Rechner bzw. der Prozessor 64-Bit-tauglich ist, so kann man unter „Hardware Information (HDT)“ → „Processor“ → „Main Processor“ die Information erhalten. – Wird dort „X86_64 Yes“ angezeigt, ist der Rechner 64-Bit-tauglich. (Zurücknavigieren kann man mit den Cursor-Tasten.)
Es kann jetzt „Boot Arch-Linux x86_64“ ausgewählt werden.
Mit der Taste Tab ↹ können einige nützliche Startoptionen eingegeben werden:
- ide-legacy falls Probleme mit IDE-Laufwerken bestehen.
- noapic acpi=off pci=routeirq nosmp wenn sich das System beim Starten aufhängt.
- lowmem ist für ältere Maschinen nützlich. Dies braucht nur 96 MB Arbeitsspeicher entgegen 256 MB bei normaler Installation.
Anstatt Arch Linux zu booten, können noch folgende Funktionen ausgeführt werden:
- memtest86+, um den Arbeitsspeicher auf Fehler zu prüfen.
- Hardware-Informationen anzeigen lassen.
- Neu starten.
- Herunterfahren und ausschalten.
Information: Der Installationsprozess kann jederzeit abgebrochen werden mit den Befehlen:
reboot
oder:
poweroff
Der Befehl reboot
startet den Computer neu, poweroff
fährt ihn herunter. – Der Computer wird dabei also nicht einfach ausgeschaltet/„stromlos gemacht“, wie der Name des Befehls eventuell vermuten lässt.
Ändern der 'Tastaturbelegung'
Hinweis: Da zu diesem Zeitpunkt noch das US-englische Tastaturlayout eingestellt ist, muss man die Taste Z drücken, um das Zeichen y (Ypsilon) zu erhalten und ß für - (Minus).
Zum deutschsprachigen Tastaturlayout kann wir folgt gewechselt werden:
loadkeys de
Für die Schweiz:
loadkeys de_CH-latin1
Installiert man auf einem System mit einer anderen Tastaturbelegung, bspw. einem Laptop, kann man unter /usr/share/kbd/keymaps/ die gewünschte Keymap suchen und anschließend bspw. mit
loadkeys /usr/share/kbd/keymaps/i386/qwertz/de-mobii.map.gz
laden.
Partitionieren des Datenträgers
Hinweis: Vor dem Partitionieren sollte man sich mit dem Befehl fdisk -l oder lsblk über die angeschlossenen Festplatten und deren Partitionen einen Überblick verschaffen.
Die Art der Partitionierung richtet sich nach der verwendeten Hardware, dem gewünschten Bootloader
, der Verwendung von Swapspeicher, Verschlüsselung und nicht zuletzt auch von persönlichen Präferenzen.
Die große Felexibilität hierbei, ist eine der Stärken von Arch Linux. Dabei ist folgendes zu berücksichtigen:
BIOS-Systeme
- Bei Systemen die mittels verbautem BIOS booten, können die Datenträger bis zu einer Größe von 2TiB mit fdisk unter Verwendung einer Dos-Partitionstabelle partitioniert werden.
Im Wiki-Artikel fdisk werden hierzu konkrete Beispiele aufgezeigt. - Wird zur Partitionierung gdisk eingesetzt, dass mit der modernen GUID-Partitionstabelle arbeitet, verlangt der Bootmanager Grub eine zusätzliche Partition mit der Größe 1MiB vom Partitionstyp ef02.
UEFI-Systeme
- Systeme die mit UEFI booten, werden immer mit gdisk partitioniert und benötigen auch immer eine zusätzliche Bootpartition von der Größe 512MiB (empfohlen) mit dem Partitionstyp ef00. Im Wiki-Artikel gdisk werden hierzu konkrete Beispiele aufgezeigt.
Swap-Speicher
- Möchte man die Möglichkeit haben den Suspend-to-disk-Modus zu nutzen, sollte die anzulegende Swap-Partition mindestens die Größe des RAM-Speichers besitzen.
Alternativ kann auch später noch eine Swap-Datei angelegt werden. Bei verschlüsselten Systemen wird der Auslagerungsspeicher (swap) innerhalb des LVM Volumes angelegt.
Verschlüsselte Dateisysteme
- Für das Anlegen eines verschlüsselten Dateisystems folgt hier je ein Bsp. für einen BIOS- bzw. UEFI-Boot-Rechner:
BIOS - verschlüsseltes root/swap - syslinux. Bei diesem Beispiel wird ein LVM Volume angelegt und syslinux als Bootmanager eingesetzt.
UEFI - verschlüsseltes root/home - systemd-boot (bootctl). Komplette Anleitung einer modernen Grundinstallation.
BtrFS (Dateisystem)
- Dieses Beispiel zeigt die Einrichtung mit BtrFS auf.
Anlegen der Dateisysteme (Formatieren)
Hinweis: Das x von xY steht für den Laufwerksbuchstaben, das Y für die Nummer der betreffenden Partition. Diese Angaben müssen jeweils mit dem konkreten Fall abgeglichen werden.
Die Partitionen welche, zuvor angelegt wurden, werden je nach ihrem Partitionstyp mit den folgenden Befehlen formatiert:
(Die konkrete Label Bezeichnung ist nur für das Installationsbeispiel dieser Anleitung von Belang)
mkfs.fat -F 32 -n EFIBOOT /dev/sdxY
- Für die ef00 Partition (/boot) - FAT32 Dateisystem, Label "EFIBOOT".mkfs.fat -F 32 -n ef02 /dev/sdxY
- Für die ef02 Partition - FAT32 Dateisystem, Label "ef02".mkfs.ext4 -L p_arch /dev/sdxY
- Für die 83 bzw, 8300 Partition root (/) - ext4 Dateisystem, Label "p_arch".mkfs.ext4 -L p_home /dev/sdxY
- Für die 83 bzw, 8300 Partition (/home) - ext4 Dateisystem, Label "p_home".mkswap -L p_swap /dev/sdxY
- Für die 82 bzw. 8200 Partition - swap Dateisystem, Label "p_swap".
Einbinden der Partitionen (Mounten)
Bevor, wie weiter unten im Kapitel Das Basissystem installieren beschrieben, Arch Linux auf den Datenträger aufgespielt werden kann, müssen die entsprechenden Partitionen in das laufende System eingebunden werden. Zuerst wird die Rootpartition nach /mnt gemountet.
mount -L p_arch /mnt
Für die Partition "EFIBOOT" die bei UEFI-Systemen nötig ist, wird das Verzeichnis /mnt/boot angelegt und dort eingebunden:
mkdir /mnt/boot mount -L EFIBOOT /mnt/boot
Wurde eine separate p_home als "Home-Partition" angelegt, kann damit analog verfahren werden:
mkdir /mnt/home mount -L p_home /mnt/home
Einschalten der Swappartition
per Label:
swapon -L p_swap
oder per Devicename:
swapon /dev/sdaY
Internetverbindung prüfen
Eine Internetverbindung wird an dieser Stelle der Installation nur dann benötigt, wenn hier schon Pakete installiert werden sollen, die nicht auf dem Installationsmedium verfügbar sind. Man kann diesen Schritt auch jederzeit später noch durchführen.
Das Bestehen einer Internetverbindung kann wie folgt geprüft werden:
ping -c3 www.archlinux.de PING www.archlinux.de (144.76.107.12) 56(84) bytes of data. 64 bytes from allison.archlinux.de (144.76.107.12): icmp_seq=1 ttl=50 time=19.6 ms 64 bytes from allison.archlinux.de (144.76.107.12): icmp_seq=2 ttl=50 time=19.5 ms 64 bytes from allison.archlinux.de (144.76.107.12): icmp_seq=3 ttl=50 time=30.6 ms --- www.archlinux.de ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2001ms rtt min/avg/max/mdev = 19.555/23.312/30.687/5.216 ms
Wenn hier ping unknown host .. angezeigt wird, konnte keine Netzwerkverbindung hergestellt werden.
Um eine Verbindung herzustellen sollten zunächst die Namen der vorhandenen Netzwerkadapter ermittelt werden:
ip link 1: lo: <LOOPBACK..... 2: enp4s0: <BROADCAST... . . 3: wlp0s1: <BROADCAST...
Die Netzwerkkarte heißt in diesem Beispiel enp4s0.
Der Wlanadapter heißt hier wlp0s1.
Internetverbindung herstellen über:
- LAN und Router
Mit dem folgenden Befehl wird die kabelgebundene Netzwerkverbindung (LAN) mit einem Router aufgebaut.
dhcpcd enp4s0
- DSL-Modem
Mit Strg+Alt+F2 auf die TTY Nr. 2 wechseln und als root anmelden:
archiso login:root
Alles weitere wie hier beschrieben: PPPoE mit rp-pppoe
Ist die Verbindung hergestellt, kehrt man wieder zurück zur Konsole 1 mit Strg+Alt+F1.
- WLAN mit Dreizeiler
SSID ist der Name des Netzwerkes, Passwort ist das Passwort des WLANs. wlp0s1
ist in unserem Beispiel der Name des WLAN-Adapters.
wpa_passphrase SSID Passwort > /etc/wpa_supplicant/wpa_supplicant.conf wpa_supplicant -i wlp0s1 -D wext -c /etc/wpa_supplicant/wpa_supplicant.conf -B dhcpcd wlp0s1
Sollte es sich um ein WLAN handeln, das "hidden" ist, muss in der erzeugten Datei /etc/wpa_supplicant/wpa_supplicant.conf noch der Parameter scan_ssid=1 gesetzt werden.
- WLAN mit netctl
Netctl stellt Beispielprofile für die WLAN-Konfiguration bereit.
Wechseln auf eine zweite Konsole mit Strg+Alt+F2 und Anmelden als root.
Die Profile erreicht man unter:
cd /etc/netctl/examples ls
Für ein einfaches Heim-WLAN mit WPA reicht zumeist die Datei wireless-wpa:
cp wireless-wpa /etc/netctl/ cd .. nano wireless-wpa
In das Feld ESSID den Namen des Netzwerkes, in das Passwort-Feld das WLAN-Passwort eintragen. Speichern der Datei. Starten des WLAN-Netzwerkes
netctl start wireless-wpa
Ist die Verbindung hergestellt, kehrt man wieder zurück zur Konsole 1 mit Strg+Alt+F1.
- Konfiguration eines Proxyservers
Soll die Installation per 'FTP' und über einen Proxyserver mit dem Internet verbunden werden, so kann das mit folgender Kommandozeile eingegeben werden:
export http_proxy="http://<servername>:<port>" export ftp_proxy="ftp://<servername>:<port>"
Wobei <servername> entweder der Hostname oder die IP-Adresse des Proxyservers ist und <port> die Portnummer (meistens 8080 oder 3128).
Das Basissystem installieren
Im Folgenden werden die grundlegenden Softwarekomponenten installiert.
pacstrap /mnt base base-devel linux linux-firmware dhcpcd nano
base
: Metapaket für ein minimales System.
base-devel
: Gruppe für Pakete zum Paketbau (empfohlen).
linux
: Der Arch Linux Standardkernel. (Alternativen: linux-lts, linux-hardened)
linux-firmware
: Firmware für verschiedene Hardware.
dhcpcd
: Aufbau einer Internetverbindung
nano
: Als Texteditor. Dieser wird in diesem Wiki vorausgesetzt.
Installation zusätzlicher Pakete
Je nach System kann es nützlich sein die folgenden Pakete schon jetzt zu installiert:
intel-ucode
: Intel-CPUs
amd-ucode
: AMD-CPUs
wpa_supplicant
: Herstellen eine Wlan-Verbindung
netctl
unddialog
: WLAN-Einrichtung mit wifi-menu
lvm2
: Einbinden einer LVM-Partition
bash-completion
: Autovervollständigung von bash Befehlen mittels Tab-Taste
Hierzu kann auch der folgende Befehl genutzt werden:
pacman --root /mnt -S <paket-name>
fstab erzeugen
Die fstab (file system table) ist eine Datei, in der festgelegt wird, welche Laufwerke wo in den Verzeichnisbaum eingehängt werden.
Zur Erzeugung einer fstab mit UUIDs (empfohlen):
genfstab -Up /mnt > /mnt/etc/fstab
Oder zur Erzeugung einer fstab mit Dateisystem-Labels. Hierbei müssen zuvor die Dateisysteme mit eindeutigen Labels versehen sein. Wurden mehrere Dateisysteme mit dem gleichen Label bezeichnet kann es zu Problemen kommen.
genfstab -Lp /mnt > /mnt/etc/fstab
Die fstab-Datei wird mit allen eingebundenen Laufwerken erzeugt. Zur Kontrolle kann man die Datei noch einmal ansehen.
cat /mnt/etc/fstab
Sie sollte dann so aussehen:
Mit UUIDs:
UUID=3eb2e7eb-1ef2-464f-8783-f888d4f630f2 / ext4 rw,relatime,data=ordered 0 1 UUID=67bed99b-1f51-42a5-8e32-35046df4f66e none swap defaults 0 0
Mit Labels:
LABEL=p_arch / ext4 rw,relatime,data=ordered 0 1 LABEL=p_swap none swap defaults 0 0
Systemkonfiguration
Zum Konfigurieren des Systems wird in eine chroot-Umgebung (Change root) gewechselt.
arch-chroot /mnt/
root@archiso /#
Konfigurationsdateien (/etc/....)
Es wird in dieser Anleitung von einer deutschen Standardinstallation ausgegangen. Folgende Konfigurationsdateien werden hierzu bearbeitet.
/etc/hostname
Den Rechnernamen festlegen, im Beispiel myhost:
echo myhost > /etc/hostname
/etc/locale.conf
Die Spracheinstellung (Locale) auf Deutsch festlegen:
echo LANG=de_DE.UTF-8 > /etc/locale.conf
Hinweis: de_DE bedeutet Deutsch wie in Deutschland gesprochen. de_CH ist Schwyzerdütsch, de_AT ist das Deutsche in Östereich. Mit dem Konsolenbefehl 'cat /etc/locale.gen' kann man sich die übrigen, hier möglichen Werte anzeigen lassen.
/etc/locale.gen
Konfiguration von /etc/locale.gen
nano /etc/locale.gen
Suchen und das # am Anfang folgender Zeilen entfernen:
#de_DE.UTF-8 UTF-8 #de_DE ISO-8859-1 #de_DE@euro ISO-8859-15
Hinweis: Suchen im Editor nano: Strg+WSUCHBEGRIFF↵ Enter Weitersuchen mit gleichem Suchbegriff erneut: Alt+W oder F16
Anschließend Speichern. Hinweis: Es ist zu empfehlen, en_US.UTF-8 ebenfalls zu installieren, da u. a. Fehlermeldungen bzw. Hinweismeldungen diverser Programme vermieden werden können.
Locale generieren:
locale-gen
Generating locales... de_DE.UTF-8... done de_DE.ISO-8859-1... done de_DE.ISO-8859-15@euro... done Generation complete.
/etc/vconsole.conf
Die Tastaturbelegung und Schriftart festlegen:
echo KEYMAP=de-latin1 > /etc/vconsole.conf echo FONT=lat9w-16 >> /etc/vconsole.conf
/etc/localtime
Die Zeitzone durch einen symbolischen Link festlegen:
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
/etc/hosts
Konfiguration von /etc/hosts
cat /etc/hosts
#<ip-address> <hostname.domain.org> <hostname> 127.0.0.1 localhost.localdomain localhost ::1 localhost.localdomain localhost
/etc/resolv.conf
Konfiguration von /etc/resolv.conf
Diese Datei muss nur verändert werden, wenn das Netzwerk über statische Adressvergabe eingestellt wird:
cat /etc/resolv.conf
nameserver DNS-Server des Providers
Module zusätzlich laden
In der Datei /etc/modules-load.d/meinemodule.conf
werden Kernel-Module angegeben, welche zusätzlich geladen werden müssen. Pro Zeile nur ein Kernel-Modul eintragen:
nano /etc/modules-load.d/meinemodule.conf
modul_1 modul_2
/etc/pacman.conf
Konfiguration /etc/pacman.conf
Dort wird im Normalfall nichts geändert. Für den Fall, dass 32bit-Bibliotheken gebraucht werden, ist das [multilib]-Repository zu aktivieren. Hierzu ist das Kommentarzeichen in den betreffenden Zeilen zu entfernen.
[multilib] SigLevel = PackageRequired TrustedOnly Include = /etc/pacman.d/mirrorlist
Anschließend muss die pacman Datenbank neu geladen werden.
pacman -Sy
Initramfs erzeugen
Bevor die Initramfs erzeugt wird, sollte die Datei /etc/mkinitcpio.conf geprüft werden, ob zusätzliche Module geladen werden müssen. Sofern z.B. das Root Filesystem auf einem logical Volume liegt, muss in der Zeile "HOOKS" das lvm2 Modul ergänzt werden. Mit LVM2 sieht die Zeile dann so aus:
HOOKS=(base udev autodetect modconf block lvm2 filesystems keyboard fsck)
lvm2 muss zwischen "block" und "filesystems" stehen.
Danach kann die initramfs Datei mit
mkinitcpio -p linux
erzeugt werden.
Root Password
Setzen des Root-Passworts. Man vergewissere sich, dass man es nicht vergisst.
passwd
Enter new UNIX password: geheim Retype new UNIX password: geheim
Installation eines Bootloaders
- Als Bootmanager für BIOS-Boot-Systeme stehen Grub und syslinux zur Verfügung.
- Für UEFI-BOOT-Syteme kan als Bootloader systemd-boot oder EFISTUB oder Grub oder rEFInd eingesetzt werden.
Installation des GRUB Bootloaders
Für Benutzer von intel-ucode bitte folgende Seite zusätzlich beachten: Microcode.
Falls bei einen BIOS-Boot-System von einem Datenträger mit GPT-Partitionstabelle gebootet werden soll, benötigt Grub eine zusätzliche Partition von der Größe von 1MiB und dem Partitionstyp ef02. Siehe Grub.
Installation des Pakets:
pacman -S grub
Booten per BIOS
grub-install /dev/sda
Booten per UEFI
Installation des EFI Bootmanagers (sonst kommt die Fehlermeldung: efibootmgr: not found):
pacman -S efibootmgr grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=<Boot-Name>
Alternativ kann man
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=<Boot-Name> --recheck --debug
verwenden, um zusätzliche Informationen zu bekommen, falls es zu einem Fehler kommt.
Wenn man einen etwas längeren Namen mit Leerzeichen für Grub geben möchte, muss man einfach 2 Anführungszeichen anbringen:
--bootloader-id="Ein sehr langer Name für den Grub Bootloader, der auch so im UEFI angezeigt wird :D"
Weitere Konfiguration nach BIOS oder UEFI grub-install:
Es kann jetzt die Grub Konfiguration generiert werden.
grub-mkconfig -o /boot/grub/grub.cfg
Sollte grub-mkconfig dabei eine Fehlermeldung wie
... error: out of memory. error: syntax error. error: Incorrect command. error: syntax error. Syntax error at line 164 ...
liefern (siehe auch: "FS#38041 - grub 1:2.00.1282.g5ae5c54-1 will not generate grub.cfg file syntax errors", sollte das Anhängen folgender Zeile an /etc/default/grub:
# fix broken grub.cfg gen GRUB_DISABLE_SUBMENU=y
und ein erneuter Aufruf von grub-mkconfig Abhilfe schaffen.
Installation des Syslinux Bootloader
Wenn bereits ein Linux-Bootloader installiert ist, kann dieser Punkt übersprungen werden. Der bereits vorhandene Bootloader muss natürlich entsprechend konfiguriert werden.
Zur Beachtung, der Syslinux Bootloader funktioniert nicht bei allen 64bit Dateisystemen wie z.B. ext4. Es muß dann ein anderer Bootloader gewählt werden wie z.B. Grub. Dieser Fehler macht sich erst nach dem Reboot mit folgender Meldung bemerkbar: Failed to load ldlinux.c32 . Boot failed: Please change disks and press a key to continue.
Syslinux kann jetzt installiert werden.
Bei einer GPT-Partitionstabelle muss das Paket gptfdisk zusätzlich installiert werden.
pacman -S gptfdisk pacman -S syslinux
Mit einem Editor (nano) die Konfigurationsdatei anpassen:
nano /boot/syslinux/syslinux.cfg
Die Zeilen APPEND root=/dev/sda3 ro ändern in
APPEND root=/dev/sda1 rw
oder wenn man die LABEL-Partitionsbezeichnung bevorzugt:
APPEND root=LABEL=p_arch rw
Anschließend syslinux auf den Bootsektor installieren
syslinux-install_update -iam
Manuelle Installation von syslinux
Falls nicht alles reibungslos ablief, kann Syslinux manuell installiert werden.
Dazu wird mit dem Programm fdisk das Bootflag auf die Partition gesetzt, von der die Bootdaten gebootet werden sollen.
Beispiel, um für /dev/sda1 das Bootflag zu setzen:
fdisk /dev/sda x a p r w
Dann wird die Partition der Bootdaten, wie z. B. /dev/sda1, unter /boot gemountet und der Bootloader installiert.
mount /dev/sda1 /boot mkdir /boot/syslinux extlinux --install /boot/syslinux
Jetzt muss noch der MBR von Syslinux auf die Festplatte geschrieben werden.
cat /usr/lib/syslinux/bios/mbr.bin > /dev/sda
Arch Linux neu booten
Zum Schluss das installierte Arch-Linux verlassen und wieder in das Installationsmedium zurückkehren:
exit umount /dev/sda1
und neu starten.
reboot
Hinweis: Man sollte im BIOS die Startreihenfolge zurückstellen, z.B. Starten von Festplatte vor CD-Rom oder USB-Stick.
Wenn alles einwandfrei verlaufen ist, wird das Arch Linux-System nun starten und mit einer Login-Eingabe enden.
myhost login: root password: geheim [root@myhost ~]# _
Herzlichen Glückwunsch und Willkommen zu Deinem Arch Linux-Basissystem.
Netzwerk erneut herstellen
Das Netzwerk kann jetzt, wie oben im Kapitel Netzwerkverbindung herstellen, mit dem richtigen Gerätenamen eingerichtet oder wieder mit dhcpcd enp4s0
gestartet werden.
Anmerkung: Sollte die Netzwerk-Verbindung via "netctl -u wireless-wpa" gestartet worden sein, funktioniert dies nach der Installation nicht mehr, da "wpa" nicht mit installiert wird. Dies kann man wie folgt abändern: Erneutes Starten mit der boot-CD, mounten der root-Partition mit "mount /dev/sda1 /mnt". Dann erneutes verbinden mit dem Netzwerk und installieren des Paketes wpa_supplicant ins root-Verzeichnis: "pacstrap /mnt wpa_supplicant". Nach einem Neustart kann sich nun auch die Festplatteninstallation via wpa mit dem Netzwerk verbinden!
Regelmäßiges Aktualisieren
Arch Linux gehört zu den Distributionen, welche sehr schnell aktuelle Softwarepakete zur Verfügung stellen. Darum sollte man ein installiertes Arch Linux mittels pacman aktualisieren und sich angewöhnen, dies regelmäßig zu tun. Es ist sehr hilfreich, vorher auf Arch Linux - Aktuelle Neuigkeiten nachzusehen, ob sich etwas Wichtiges am Gesamtsystem oder an einzelnen Komponenten geändert hat. Es werden erforderliche Lösungsvorschläge und Anleitungen beschrieben.
Der Paketmanager pacman
Pacman ist der package manager von Arch Linux. Er verwaltet das gesamte Paketsystem, also die Installation, das Löschen, das Downgraden von Paketen u.v.m.; er ist auch zuständig für die Verwaltung selbst kompilierter Programme, das automatische Lösen von Paket-Abhängigkeiten sowie das entfernte und lokale Suchen nach Paketen.
Konfiguration von pacman
- /etc/pacman.conf
pacman wird über die Datei /etc/pacman.conf
konfiguriert. Siehe weitere Infos unter pacman.
- /etc/pacman.d/mirrorlist
pacman benötigt die Datei /etc/pacman.d/mirrorlist
, welche die Serveradressen für den Download von Paketen enthält. Siehe weitere Infos unter pacman.
Eine Optimierung der Liste der Spiegelserver kann mittels reflector
erfolgen.
Die Schönheit des Rolling Release
Arch Linux ist eine Rolling Release Distribution, was bedeutet, dass es im Vergleich zu anderen Linux-Distributionen keine Versionsnummern oder -namen gibt. Diese Form der Verwaltung verzichtet darauf, das ganze System neu installieren zu müssen, um es aktuell und damit auch sicher zu halten – man hat es nun selbst in der Hand, jederzeit upzudaten. Die Benutzung eines Rolling-Release setzt auch ein gewisses Maß an Eigenverantwortung voraus. So ist man z.B. gut beraten, sich vor einer Systemaktualisierung über aktuelle Änderungen oder Schwierigkeiten, die dabei auftreten könnten, zu informieren. Aktuelle Informationen findet man hier, hier,hier und hier. Außerdem ist es empfehlenswert, die Arch-Announce Mailingliste zu abonnieren, um stets auf dem neuesten Wissenstand etwaige Änderungen betreffend zu sein.
Achtung bei Systemupdates mit neuem Kernel
Falls der Kernel ein größeres Update erfährt, werden Module, wie zum Beispiel nvidia und madwifi (wird später installiert, falls nötig), unbenutzbar, da die neuen, aktualisierten Paketversionen solcher Module gegen den neueren Kernel gebaut wurden, aber das System derzeit einen älteren verwendet. Ein Neustart wird nötig sein.
Ebenso könnte nach einer langen Pause ohne Aktualisierung bzw. bei der Aktualisierung eines frischen Systems der Fall eintreten, dass gleichzeitig mit dem neuen Kernel andere Programmpakete oder neue Versionen von bereits vorhandenen mitinstalliert werden, die wichtige Neuerungen beinhalten, auf die der neue Kernel angewiesen ist. Dann ist es wahrscheinlich, dass der Kernel zwar aktualisiert wird, aber mkinitcpio Fehler beim Durchlaufen der Hooks meldet (wie etwa fehlende Udev-Regeln beim Hook "filesystems"). Das würde dazu führen, dass das System dann nicht mehr startet und etwa von einem anderen Linux-System oder der Live-CD repariert werden muss! Um dergleichen zu vermeiden, genügt es nach so einem Update i.d.R., das Initramfs noch einmal neu zu generieren, und zwar folgendermaßen:
mkinitcpio -p linux
Einen Benutzer hinzufügen und Gruppen wählen
Tägliche Arbeiten sollten nicht mit dem Root-Account gemacht werden, da dieser für administrative Aufgaben vorgesehen ist und ein Arbeiten damit gefährlich sein kann. Deshalb wird nun ein normaler Benutzer hinzugefügt. Beachte, dass Benutzernamen nur Kleinbuchstaben und Sonderzeichen enthalten dürfen:
In diesem Beispiel heißt der Benutzer duda
useradd -m -g users -s /bin/bash duda
passwd duda Geben Sie ein neues UNIX-Passwort ein:geheim Geben Sie das neue UNIX-Passwort erneut ein:geheim passwd: Passwort erfolgreich geändert
Falls der Benutzer wieder entfernt werden soll, so kann das mit
userdel -r duda
gemacht werden.
Ein weiteres wichtiges Werkzeug könnte noch installiert werden, um ein Kommando mit Root-Rechten ausführen zu können.
pacman -S sudo
Damit der Benutzer Root-Rechte bekommt, muss eine Konfiguration verändert werden. Eingabe von:
EDITOR=nano visudo
oder
nano /etc/sudoers
Suchen der folgenden Zeile (steht unterhalb von "## Uncomment to allow members of group wheel to execute any command"):
# %wheel ALL=(ALL) ALL
und entfernen des Kommentatorzeichens und des Leerzeichens.
%wheel ALL=(ALL) ALL
Den Benutzer zu der Gruppe wheel hinzufügen
gpasswd -a duda wheel
Um dem Nutzer noch Rechte für Audio etc. zu geben, kann er noch in die Gruppen audio
, video
, games
, power
hinzugefügt werden.
Weitere nützliche Dienste
Sollte das System auf einer SSD betrieben werden, welche TRIM unterstützt, sollte der fstrim.timer
aktiviert werden:
# systemctl enable --now fstrim.timer
Jetzt, das heißt bevor wir uns der grafischen Oberfläche und/oder Multimedia zuwenden, ist ein guter Zeitpunkt, ein paar zusätzliche Dienste zu installieren und zu aktivieren.
# pacman -S acpid dbus avahi cups
Diese Dienste müssen natürlich auch jeweils explizit gestartet werden. Um dies automatisch beim Booten zu tun, muss systemd dazu angewiesen werden. Dies geschieht durch:
# systemctl enable <Dienstname>
Für diese Beispiele:
# systemctl enable acpid # systemctl enable avahi-daemon # systemctl enable cups.service
Auch ist es sinnvoll, einen Netwerkservice für den Internetzugang automatisch zu laden:
Dies können Services wie NetworkManager erledigen. Mehr dazu unter https://wiki.archlinux.de/title/Daemons und unter https://wiki.archlinux.de/title/Daemons/Liste.
Cronjobs ausführen lassen
Einige Pakete legen sogenannte Cronjobs an. Das sind Befehle, die zu bestimmten Zeiten automatisch ausgeführt werden. Im Normalfall braucht man sich um die Cronjobs nicht zu kümmern. Mehr zu diesem Thema unter cron
# pacman -S cronie # systemctl enable --now cronie
Als Alternative zu o.g. klassischen Conrojobs können oft auch systemd.timers genutzt werden, ohne zusätzliche Software installieren zu müssen.
Automatische Zeiteinstellung
Wer die Zeit automatisch korrigieren lassen will, kann das mit systemd-timesyncd machen.
systemctl enable --now systemd-timesyncd.service
Die Zeit wird nach wenigen Sekunden korrekt sein.
Um zu sehen, ob die Uhrzeit nun auch wirklich korrekt ist, kann man folgenden Befehl nutzen:
date
Anschließend kann man die Hardwareuhr oder auch RTC oder CMOS-Uhr auf der Hauptplatine korrigieren.
hwclock -w
Man muss unterscheiden zwischen einer sogenannten Systemzeit und einer Hardwareuhr auf der Hauptplatine des Rechners. Die Hardwareuhr ist die CMOS-Uhr, auch Echtzeituhr oder RTC (real time clock) genannt. Die Systemzeit ist die Zeit, die der Linuxkernel gerade hat (nur so grob). Beim Einschalten übernimmt Linux (Systemzeit) die Hardwareuhrzeit. Beim Herunterfahren wird die Systemzeit nicht an die Hardwareuhr wieder übergeben. Zur Beachtung: Werden mehrere Betriebssysteme benutzt, sollte nur ein Betriebssystem die Hardwareuhr korrigieren.
Teil 2: Installation von X und Konfiguration
Installation und Konfiguration von X
Das X Window System (gemeinhin X11, oder einfach nur X) ist ein Netzwerk- und Anzeigeprotokoll, das das Darstellen von Fenstern auf Bildschirmen erlaubt. Es liefert das Standardwerkzeug, um grafische Benutzeroberflächen (graphical user interfaces oder GUIs) auf Unix-ähnlichen Betriebssystemen zu bilden.
X bietet den grundlegenden Rahmen oder die Grundfunktion, GUI Umgebungen zu bilden: zeichnen und bewegen von Fenstern auf dem Bildschirm sowie Interaktion mit einer Maus und/oder einer Tastatur. X ordnet nicht das Nutzer-Interface - individuelle Client-Programme bewerkstelligen dies. Nun werden wir mithilfe von pacman die Basis-Pakete von Xorg installieren. Dies ist der erste Schritt, eine GUI zu bilden.
Mit folgendem Befehl installiert man die dafür notwendigen Basis-Pakete:
pacman -S xorg-server xorg-xinit
Grafiktreiber installieren
Jetzt sind die Basispakete installiert, die für die Benutzung des X Servers gebraucht werden. Man sollte zunächst den Treiber der Grafikkarte hinzufügen (z.B. xf86-video-<name>).
Welchen Treiber man braucht, bekommt man am einfachsten wie folgt heraus:
lspci |grep VGA 01:00.0 VGA compatible controller: nVidia Corporation G86 [GeForce 8500 GT] (rev a1)
In diesem Beispiel ist das eine nvidia Grafikkarte. Der freie Grafiktreiber dafür nennt sich "nouveau". Das Paket dazu xf86-video-nouveau.
Wenn man eine Liste aller open-source Videotreiber braucht, so kann man eingeben:
pacman -Ss xf86-video | less
Dies ist eine Liste von open source Treibern und ihren korrespondierenden Chipsets.
Paketname | Kurzbeschreibung | Mehr Informationen |
---|---|---|
Für die neuesten Grafikkarten von Intel, AMD und Nvidia | ||
xf86-video-intel | Intel i810/i830/i915/945G/G965+ HDGraphics HDGraphics2 HD4000 Videotreiber | intel-ArchWiki | X.Org WIKI |
xf86-video-amdgpu | Neuester AMD Videotreiber ab Grafikkarten ab Volcanic Islands (VI) und neuer (GCN 1) | AMDGPU |
xf86-video-nouveau | Nvidia Open Source Treiber | nvidia |
Für ältere Grafikkarten von Intel, AMD und Nvidia | ||
xf86-video-ati | Grafikkarten älterer AMD / ATI Grafikkarten | ATI |
xf86-video-nv | nvidia nv Videotreiber | |
xf86-video-i128 | Intel i128 Videotreiber | |
xf86-video-i740 | Intel i740 Videotreiber | |
Grafiktreiber für Virtualisierungssoftware | ||
xf86-video-vmware | vmware Videotreiber | |
xf86-video-voodoo | voodoo Videotreiber | |
virtualbox-guest-utils | Virtualbox Videotreiber | |
Sonstige Treiber | ||
xf86-video-vesa | Der allgemeinste Videotreiber welcher mit vielen modernem Chipsets funktioniert | |
xf86-video-apm | Alliance ProMotion Videotreiber | |
xf86-video-ark | ark Videotreiber | |
xf86-video-chips | Chips and Technologies Videotreiber | |
xf86-video-cirrus | Cirrus Logic Videotreiber | |
xf86-video-glint | GLINT/Permedia Videotreiber | |
xf86-video-imstt | Integrated Micro Solutions Twin Turbo Videotreiber | |
xf86-video-mga | mga Videotreiber (Matrox Graphikadapter) | |
xf86-video-neomagic | neomagic Videotreiber | |
xf86-video-rendition | Rendition Videotreiber | |
xf86-video-s3 | S3 Videotreiber | |
xf86-video-s3virge | S3 Virge Videotreiber | |
xf86-video-savage | savage Videotreiber | |
xf86-video-siliconmotion | siliconmotion Videotreiber | |
xf86-video-sis | SiS Videotreiber | |
xf86-video-sisusb | SiS USB Videotreiber | |
xf86-video-tdfx | tdfx Videotreiber | |
xf86-video-trident | Trident Videotreiber | |
xf86-video-tseng | tseng Videotreiber | |
xf86-video-unichrome | unichrome Videotreiber | |
xf86-video-v4l | v4l Videotreiber | |
xf86-video-vga | VGA 16 color Videotreiber | |
xf86-video-via | via Videotreiber |
Beachte: Der vesa Treiber ist der allgemeinste und sollte mit fast jedem modernem Chipset funktionieren. Falls man keinen passenden Treiber für das Videochipset finden kann, sollte vesa funktionieren.
Falls man eine nVIDIA oder ATI Videoadapter hat, besteht auch die Möglichkeit, die proprietären nVIDIA oder ATI Treiber zu installieren. Die Installation proprietärer Videotreiber wird unter Nvidia und unter ATI bzw für neuere AMD Karten auf AMDGPU beschrieben.
Installieren des passenden Videotreibers z.B.:
pacman -S xf86-video-nouveau
- Falls man immer noch nicht weiß, welcher Videotreiber zu installieren ist, so kann man die gesamte Videotreiber-Pakete-Gruppe installieren. Xorg lädt dann selbst den passenden Treiber.
pacman -S xorg-drivers
Sonstige Treiber
Bei manchen Laptops kann es mit dem Touchpad zu Problemen kommen. Xorg stellt hierfür auch einen Touchpad-Treiber zur Verfügung. Sollte das Touchpad nur eingeschränkt funktionieren, kann dieser auch ganz zum Schluss noch nachinstalliert werden.
pacman -S xf86-input-synaptics
Deutsche Tastaturbelegung einstellen
Hinweis: Die Datei 00-keyboard.conf kann auch mit dem Befehl localectl set-x11-keymap <layout> <model> <variant> <options> generiert werden.
Über 00-keyboard.conf
Eine Datei erzeugen /etc/X11/xorg.conf.d/00-keyboard.conf und folgendes hinzufügen:
Section "InputClass" Identifier "keyboard" MatchIsKeyboard "yes" Option "XkbLayout" "de" Option "XkbModel" "pc105" Option "XkbVariant" "deadgraveacute" EndSection
Oder über localectl set-x11-keymap
localectl list-x11-keymap-layouts |less
Zeigt eine Liste mit allen verfügbaren Tastaturlayouts. Mehrere Layouts können durch Komma getrennt angegeben werden. de sollte für deutsche Tastaturen funktionieren.
localectl list-x11-keymap-models |less
Zeigt eine Liste mit allen verfügbaren Tastaturmodellen. pc104 oder pc105 sollte ohne zusätzliche Tasten standartmäßig funktionieren. Für Tastaturen mit speziellen zusätzlichen Tasten muss man um sie zu benutzen das richtige Model finden.
localectl list-x11-keymap-variants |less
Zeigt eine Liste mit allen verfügbaren Tastaturvarianten. Bei Verwendung von deadgraveacute können mit `
und ´
Buchstaben wie é
eingegeben werden, während ^
wie eine normale Taste behandelt wird. nodeadkeys dagegen deaktiviert dies, und wenn gar keine Variante angegeben wird, ist auch ^
ein "dead key".
localectl list-x11-keymap-options |less
Zeigt eine Liste mit allen verfügbaren zusätzlichen Tastaturoptionen. Muss nicht angegeben werden. Sollten mehrere Tastaturlayouts verwendet werden, können zum Beispiel Optionen zum hin- und herwechseln zwischen den Layouts über Tastenkombinationen angegeben werden. Mit grp:alt_shift_toggle wechselt man dann mit alt+shift zwischen den Layouts.
localectl set-x11-keymap [layout] [model] [variant] [options]
setzt die Parameter.
Nach obigem Beispiel für eine deutsche Standardtastatur, einem einzelnen Layout, ohne zusätzliche Optionen oder Tasten folgende Eingabe:
localectl set-x11-keymap de pc105 deadgraveacute
[Optional] Schönere Schriftarten installieren
pacman -S ttf-dejavu
Empfehlenswert ist der Artikel über Schriftarten.
Desktopumgebung installieren
Archlinux bietet eine große Anzahl Benutzeroberflächen zur Auswahl an. Die Installation der gewünschten Desktopumgebung, des passenden Fenster- und Loginmanagers wird in den einzelnen Beiträgen beschrieben.
Damit ist die Grundinstallation von Arch Linux abgeschlossen.
Mit der Eingabe von
reboot
kann nun ein Neustart herbeigeführt werden und ein Einloggen als Benutzer stattfinden. (Desktopumgebungen laufen nicht als Root)
++++ VIEL FREUNDE MIT ARCH LINUX ++++