30. Juli 2013

Arch Linux: Umstieg von Ubuntu auf Arch Linux - Zusätzliche Konfigurationen (Teil 3)

Nachdem im vorherigen Teil dieser Serie über den Umstieg auf Arch Linux die Installation des Basissystems beschrieben wurde, werden in diesem Artikel zusätzliche Konfigurationen aufgezeigt, die bei einem solchen, neu installierten, System angepasst werden sollten. Hierzu gehören etwa die Konfiguration der Soundausgabe, die Installation von Treibern für die Grafikkarte und Eingabegeräte, sowie die Installation des Fenstersystems X.

1 Erstellen eines neuen Benutzers


Da bisher nur der Root-Benutzer existiert, der nicht für alltägliche Arbeiten an dem System verwendet werden sollte, sollte nun als erstes ein neuer Benutzer mit eingeschränkten Rechten angelegt werden. Der folgende Befehl bewerkstelligt das, wobei "username" durch den gewünschten Benutzername ersetzt werden muss:
 # useradd -m -g users -s /bin/bash username  
Über den folgenden Befehl können außerdem zusätzliche Information wie z.B. der volle Name des Benutzers angegeben werden:
 # chfn username
Um außerdem ein Passwort für den neu angelegten Benutzer zu vergeben, kann folgender Befehl genutzt werden:
 # passwd username  

Damit man, wenn man mit dem neuen Benutzer angemeldet ist, trotz der eingeschränkten Rechte Befehle ausführen kann, die Root-Rechte benötigen, kann es nützlich sein, einen sogenannten sudo-Zugang für den Benutzer einzurichten. Über das Voranstellen des Schlüsselwortes "sudo" und die anschließende Eingabe des Root-Passworts können somit Befehle mit Root-Rechten ausgeführt werden.

Um einen solchen Root-Zugang einzurichten, muss zunächst das Paket sudo installiert werden:
 # pacman -S sudo  
Anschließend muss der Benutzer durch Editieren der Datei /etc/sudoers in die Liste derjenigen Benutzer aufgenommen werden, für die ein solcher sudo-Zugang erlaubt ist. Hierfür wird die Datei zunächst in einem Editor geöffnet:
 # nano /etc/sudoers  
Anschließend muss die folgende Zeile, die den jeweiligen Benutzernamen enthält, unter der Zeile "root ALL=(ALL) ALL" in die Datei aufgenommen werden. Es ist dabei unbedingt auf eine korrekte Schreibweise zu achten, da ansonsten die Anmeldung am System zerstört werden kann.
 username ALL=(ALL) ALL 
Falls außerdem die Auto-Vervollständigung von Konsolenbefehlen für den neuen Benutzer aktiviert werden soll, muss noch das Paket bash-completion installiert werden:
 # pacman -S bash-completion

Nachdem der neue Benutzer angelegt und eventuell ein sudo-Zugang eingerichtet wurde, kann man sich über den folgenden Befehl vom System abmelden, um sich anschließend mit dem neuen Benutzernamen und Passwort neu anzumelden:
 # logout 
In den folgenden Schritten wird angenommen, dass unter dem neuen Benutzerkonto gearbeitet wird, weshalb Befehlen, die Root-Rechte benötigen "sudo" vorangestellt wird.

2 Konfiguration der Soundausgabe


Zur Soundausgabe wird unter Arch Linux standardmäßig ALSA genutzt. Dieses Kernel-Modul ist bei der Installation des Basissystems bereits enthalten, jedoch ist die Soundausgabe zunächst stumm geschalten. Um den Sound zu aktivieren, ist es zunächst nötig, das Paket alsa-utils zu installieren, was durch folgenden Befehl über den Paketmanager Pacman möglich ist:
 $ sudo pacman -S alsa-utils  
Zum Einstellen der Lautstärke des Master-Audiokanals kann eine der beiden folgenden Vorgehensweisen genutzt werden:
  1. Das, in dem gerade eben installiertem Paket enthaltene, Programm alsamixer bietet eine einfache grafische GUI zur Einstellung der einzelnen Lautstärken der verschiedenen Audiokanäle. Es kann über den folgenden Befehl gestartet werden. Mit den linken und rechten Pfeiltasten kann anschließend der jeweilige Kanal ausgewählt werden, die "m"-Taste ändert die Stummschaltung, und über die nach-Oben-, bzw. nach-Unten-Taste kann der Lautstärkepegel angepasst werden.
     $ alsamixer  
    
  2. Alternativ kann die Lautstärke des Master-Kanals direkt per Konsolenbefehl gesetzt werden:
     $ amixer sset Master unmute  
    

Das Programm alsamixer unter Arch Linux (Bildquelle: r11networks.com, Klicken zum Vergrößern)
Die korrekte Soundausgabe kann über den folgenden Befehl getestet werden, wobei über den Wert des c-Parameters die Anzahl der Kanäle gesetzt werden kann. Auf den verschiedenen Kanälen sollte bei korrekte Funktion nacheinander ein Ton erklingen.
 $ speaker-test -c 2  

3 Installation des Fenstersystems


Das Fenstersystem X is ein Netzwerk- und Display-Protokol, das die Darstellung von Fenstern auf Bitmap-Displays erlaubt. Seine Installation stellt die Grundlage für die Einrichtung eines Desktopsystems dar, auf die im nächsten Artikel eingegangen werden wird.

Um das Fenstersystem zu installieren genügt es zunächst, die Pakete xorg-server, xorg-server-utils und xorg-xinit mittels dem folgenden Befehl zu installieren:
 $ sudo pacman -S xorg-server xorg-server-utils xorg-xinit  
Für 3D-Unterstützung sollte darüber hinaus noch das Paket mesa installiert werden:
 $ sudo pacman -S mesa  

Installation des Grafikkarten-Treibers:


Der Linux-Kernel enthält bereits OpenSource-Grafiktreiber, doch für die Unterstützung von OpenGL und 2D-Grafikbeschleunigung im Zusammenspiel mit X11 muss ein Grafiktreiber installiert werden, der auf die konkrete Grafikkarte des Systems abgestimmt ist.

Falls man nicht weiß, welcher Grafikkartenchipsatz verwendet wird, lässt sich diese Information über den folgenden Befehl herausfinden:
 $ lspci | grep VGA  
Über den unten stehenden Befehl lässt sich außerdem eine komplette Liste aller verfügbaren OpenSource-Grafikkartentreiber ausgeben:
 $ sudo pacman -Ss xf86-video | less  
Die am häufigsten benötigten dieser OpenSource-Grafiktreiber, sowie ihre proprietäre Pendants, sind in der folgenden Tabelle aufgelistet:

Hersteller
Lizenz
Treiber
Multilib-Package
AMD/ATI
OpenSource
xf86-video-ati
lib32-ati-dri

Proprietär
catalyst-dkms
lib32-catalyst-utils
Intel
OpenSource
xf86-video-intel
lib32-intel-dri
Nvidia
OpenSource
xf86-video-nouveau
lib32-nouveau-dri
Proprietär
nvidia
lib32-nvidia-libgl

Um beispielsweise den Treiber für Intel-Grafikchipsätze zu installieren, genügt der folgende Konsolenbefehl. Für alle anderen Treiber erfolgt die Installation analog.
 $ sudo pacman -S xf86-video-intel  
Die, in der Spalte "Multilib-Package" angegebenen, Pakete sollten zusätzlich zur Unterstützung der Grafikbeschleunigung in 32 Bit-Programmen installiert werden, wenn es sich um ein 64 Bit-System handelt. Hierfür muss zuerst das Multilib-Repository in der Pacman-Konfigurationsdatei /etc/pacman.conf aktiviert werden, indem die folgenden Zeilen hinzugefügt, bzw. die #-Zeichen am Zeilenanfang entfernt werden:
 [multilib]  
 Siglevel = PackageRequired  
 Include = /etc/pacman.d/mirrorlist  
Die Änderungen in der Konfigurationsdatei können dann durch Ausführen des folgenden Befehls übernommen werden:
 $ sudo pacman -Syy  
Anschließend kann das jeweilige Multilib-Paket über Pacman installiert werden. Hierfür genügt etwa in diesem Beispiel, in dem angenommen wird, dass ein Intel-Grafikchipsatz verwendet wird, der folgende Befehl:
 $ sudo pacman -S lib32-intel-dri  
Außerdem sollte der Vesa-Treiber installiert werden. Das ist ein Treiber, der mit fast jeder GPU zusammenspielt, jedoch keine 2D- und 3D-Beschleunigung anbietet. Er wird von X verwendet, wenn kein anderer Treiber zur Verfügung steht:
 $ sudo pacman -S xf86-video-vesa  

Installation der Treiber für Eingabegeräte:


In der Regel ist eine Installation von Treibern für Standard-Eingabegeräten, wie Tastaturen oder Mäuse, nicht notwendig, da der dafür zuständige Treiber bereits in der Basisinstallation enthalten ist. Falls es sich bei dem Rechner jedoch um einen Laptop oder ein ähnliches Gerät mit Touchpad oder Touchscreen handelt, sollte für dessen Unterstützung das folgende Paket installiert werden:
 $ sudo pacman -S xf86-input-synaptics  

Konfiguration und Testen von X:


X bietet eine automatische Erkennung der zu verwendenden Treiber an, weshalb die manuelle Erstellung einer Konfigurationsdatei meist nicht nötig ist. Wenn jedoch ein Tastaturlayout genutzt werden soll, das nicht dem Standard-US-Layout entspricht, muss hierfür noch über den folgenden Befehl die Konfigurationsdatei /etc/X11/xorg.conf.d/10-keyboard.conf angelegt werden:
 $ sudo nano /etc/X11/xorg.conf.d/10-keyboard.conf  
Für die Benutzung des deutschen Tastaturlayouts muss sie beispielsweise den folgenden Inhalt haben:
 Section "InputClass"  
   Identifier       "Keyboard Defaults"  
   MatchIsKeyboard  "yes"  
   Option           "XkbLayout" "de"  
 EndSection  
Die Kürzel weiterer Layouts finden sich in der Datei /usr/share/X11/xkb/rules/base.lst in dem Abschnitt, der mit "! layout" beginnt. Weitere Informationen über die Konfigration von X finden sich in diesem Artikel des englischsprachigen Arch-Wikis.

Zum Testen der X-Installation müssen zunächst die Pakete xorg-twm, xorg-xclock und xterm installiert werden, die anschließend wieder entfernt werden können:
 $ sudo pacman -S xorg-twm xorg-xclock xterm  
Anschließend kann die Test-Session über den folgenden Befehl gestartet werden:
 $ sudo startx  
Dadurch sollten einige Konsolen-Fenster erscheinen. Es sollte sichergestellt werden, dass die Tastatur und die Maus funktioniert. Falls dies der Fall ist, kann die Test-Umgebung durch Eingabe des folgenden Befehls in alle angezeigten Konsolen beendet werden:
 $ exit  

4 Installation von zusätzlichen Schriftarten


Zuletzt sollte noch das Schriftartenpaket DejaVu installiert werden, das eine Menge hochwertiger TrueType-Schriftarten mit sich bringt, da die Basisinstallation nur unskalierbare Bitmap-Fonts enthält. Das Paket lässt sich über den folgenden Befehl installieren:
 $ sudo -pacman -S ttf-dejavu 
Falls das Font-Rendering weiter konfiguriert werden soll, bietet dieser Artikel des Arch-Wikis Informationen über dementsprechende Möglichkeiten.

Weiterführende Links:

29. Juli 2013

Arch Linux: Umstieg von Ubuntu auf Arch Linux - Installation (Teil 2)

In diesem zweiten Teil der Serie von Artikeln über den Umstieg auf Arch Linux soll die Installation des Basissystems dieser Linux-Distribution erläutert werden. Eine ausführliche Dokumentation über den Installationsvorgang für Einsteiger ist im offiziellen, englischsprachigen Arch-Wiki unter diesem Link verfügbar. Eine Dokumentation die sich an erfahrene Arch-Benutzer richtet ist dagegen unter diesem Link zu finden.

Die Beispiele dieser schrittweisen Anleitung orientieren sich an den Konfigurationen, die ich bei der Installation von Arch Linux auf meinem System getroffen habe. Dazu gehört die Partitionierung mittels GPT, wobei eine separate Boot-Partitiion genutzt wird. Der übrige Festplattenplatz wird mittels LVM verschlüsselt und in eine logische Root-, Var- und Home-Partition aufgeteilt. Als Boot-Manager wird Syslinux eingesetzt. Es bestehen darüber hinaus zahlreiche weitere Konfigurationsmöglichkeiten, die in diesem Artikel zwar erwähnt, jedoch aufgrund der Komplexität nicht näher aufgezeigt werden.

1 Schreiben des Images auf einen Datenträger


Als erster Schritt zur Installation von Arch Linux muss zunächst das ISO-Image, das die hierfür notwendigen Daten enthält, über die Download-Seite bezogen werden. Das Image unterstützt dabei sowohl 32-, als auch 64-Bit-Architekturen.

Anschließend muss das Image auf eine CD oder DVD gebrannt werden. Alternativ kann auch ein bootfähiger USB-Stick zur Installation genutzt werden. Wie das Image hierfür unter Ubuntu auf den USB-Stick kopiert werden kann, wurde in diesem Blog bereits in diesem Artikel thematisiert. Ergänzend soll an dieser Stelle erwähnt werden, dass ebenfalls eine Netzwerk-Installation möglich ist, welche in diesem Artikel jedoch außen vor gelassen werden soll. Die Vorgehensweise hierfür ist in den eingangs erwähnten Wiki-Artikeln beschrieben.

2 Starten der Installation


Zum Starten der Installation muss nun von dem gewählten Installationsmedium gebootet werden. Aus dem erscheinenden Menü lassen sich dann zur Installation, je nach Rechnerarchitektur, die Optionen Boot Arch Linux (x86_64) oder Boot Arch Linux (i686) auswählen. Nachdem der darauffolgende Ladevorgang abgeschlossen ist, erscheint eine Kommandozeile, über die folgenden Schritte der Installation abgewickelt werden.


Das Boot-Menü von Arch Linux (Bildquelle: linuxuser.co.uk, Klicken zum Vergrößern)

3 Sprachauswahl


Zunächst muss über die Konsole das korrekte Keyboard-Layout geladen werden. Für das deutsche Layout muss hierfür folgender Befehl ausgeführt werden (Zu diesem Zeitpunkt ist noch das englische Tastaturlayout aktiv, weshalb das y-Zeichen auf der z-Taste und der Bindestrich auf der ß-Taste liegt). Eine komplette Liste der verfügbaren Keyboard-Layouts findet sich unter diesem Link.
 # loadkeys de-latin1  
Anschließend sollte die verwendete Schriftart geändert werden, so dass mehr als die 26 Zeichen des englischen Standard-Alphabets dargestellt werden können.
 # setfont Lat2-Terminus16  
Optional kann nun die Sprache geändert werden, die für die Installation genutzt werden soll. Die zu verwendende Sprache ist dabei in der Datei /etc/locale.gen definiert. Über den unten stehenden Befehl lässt sich die Datei in einem Editor bearbeiten. Das #-Zeichen vor der Zeile, die die gewünschte Sprache enthält, muss darin entfernt werden (in diesem Beispiel wird de_DE.UTF-8 für Detusch verwendet) un der Editor anschließend über die Tastenkombination Strg+X beendet werden. Dabei muss das Speichern der Änderungen mit Y und Enter bestätigt werden.
 # nano /etc/locale.gen  
 
Abschließend müssen zur erfolgreichen Übernahme der geänderten Sprachkonfiguration die beiden folgenden Befehle ausgeführt werden:
 # locale-gen  
 # export LANG=de_DE.UTF-8  

 

4 Herstellen der Internetverbindung


Im nächsten Schritt gilt es, die Internetverbindung, die später für das Herunterladen der zu installierenden Pakete verwendet wird, zu konfigurieren. Es ist hierfür ratsam, auf eine kabelgebundene Netzwerkverbindung zurückzugreifen, da der hierfür notwendige DHCPCD-Daemon beim Start der Installation automatisch gestartet wird. Alternativ soll im Folgenden auch die Möglichkeit zur Einrichtung einer WLAN-Verbindung erläutert werden.

Konfiguration einer direkten LAN-Verbindung:


Die Konnektivität der LAN-Verbindung lässt sich beispielsweise über den folgenden ping-Befehl testen:
 # ping -c 3 www.google.com  
Wenn eine funktionierende Internetverbundung besteht, sollte als Ergebnis des Befehls eine Ausgabe, die der unten aufgeführten ähnelt, erscheinen. Falls stattdessen der Fehler "ping: unknown host" zurück gegeben wird, wurde die Internetverbindung nicht korrekt konfiguriert. Dies is etwa der Fall wenn eine statische IP-Adresse oder ein Proxy-Server verwendet werden muss. Für die Behandlung solcher Fälle ist es ratsam, einen der eingangs erwähnten Artikel aus dem Arch-Wiki zu Rate zu ziehen.
 PING www.l.google.com (74.125.132.105) 56(84) bytes of data.  
 64 bytes from wb-in-f105.1e100.net (74.125.132.105): icmp_req=1 ttl=50 time=17.0 ms  
 64 bytes from wb-in-f105.1e100.net (74.125.132.105): icmp_req=2 ttl=50 time=18.2 ms  
 64 bytes from wb-in-f105.1e100.net (74.125.132.105): icmp_req=3 ttl=50 time=16.6 ms  
   
 --- www.l.google.com ping statistics ---  
 3 packets transmitted, 3 received, 0% packet loss, time 2003ms  
 rtt min/avg/max/mdev = 16.660/17.320/18.254/0.678 ms  


Konfiguration einer WLAN-Verbindung:


Soll stattdessen eine WLAN-Verbindung genutzt werden, muss zunächst der Name des hierfür zu verwendenden WLAN-Adapters ermittelt werden. Dies ist über den folgenden Befehl möglich:
 # iw dev  
Die Ausgabe des Befehls könnte etwa wie folgt aussehen. Die Bezeichnung "wlp12s0" entspricht dabei dem gesuchten Namen.
 phy#0  
     Interface wlp12s0  
         ifindex 3  
         wdev 0x1  
         addr 00:21:6a:5e:52:bc  
         type managed  
Unter Verwendung des zuvor ermittelten Namens kann das Netzwerkinterface durch den folgenden Befehl aktiviert werden:
 # ip link set wlp12s0 up  
Falls bei der Ausführung dieses Befehls die Fehlermeldung "SIOCSIFFLAGS: No such file or directory" zurück gegeben wird, handelt es sich bei dem verwendeten Netzwerkinterface um eines der wenigen, dessen Firmware manuell geladen werden muss. Für die Behandlung eines solchen Falles sei an dieser Stelle einmal mehr auf die eingangs erwähnten Artikel des Arch-Wikis verwiesen.

Um die Verbindung zu einem Drahtlosnetzwerk herzustellen, kann das Programm wifi-menu verwendet werden, das über den unten stehenden Befehl gestartet werden kann. Es ermöglicht die Auswahl von gefundenen Netzwerken und die anschließende Eingabe des, für die Verbindungsherstellung notwendige, Passworts.
 # wifi-menu wlp12s0  
Die Konnektivität der auf diese Weise hergestellten drahtlosen Internetverbindung, kann ebenfalls über den oben erwähnten ping-Befehl getestet werden.

5 Partitionierung der Festplatte


Bevor das System auf die Festplatte installiert werden kann, muss in diesem Schritt deren Partitionierung durchgeführt werden. Für die Partitionierung gibt es viele verschiedene Varianten, die abhängig von den persönlichen Wünschen und der Hardware des Computers sind. Aufgrund des Umfangs ist es in diesem Artikel nicht möglich alle Varianten abzudecken. Stattdessen wird im Folgenden die Einrichtung einer einzigen dieser möglichen Partitionierungen vorgestellt und lediglich auf unterschiedliche Möglichkeiten hingewiesen. Für deren Umsetzung ist bei Bedarf wieder einmal das Arch-Wiki heranzuziehen. Außerdem ist zu beachten, dass das Partitionieren der Festplatte zu Datenverlust führen kann, weshalb es ratsam ist, relevante Daten zuvor zu sichern.

Vor der eigentlichen Partitionierung gilt es zunächst, zu entscheiden, welche Art von Partitionstabelle verwendet werden soll. Zur Auswahl stehen eine GUID-Partitionstablle (GPT) oder ein Master Boot Record (MBR). GPT stellt dabei die modernere Variante dar und ist auf aktuellen Systemen zu empfehlen, weshalb diese Anleitung im Folgenden diese Variante verwenden wird.

Desweiteren muss für UEFI-Motherboards eine UEFI System-Partition eingerichtet werden, während BIOS-Mainboards eine BIOS Boot-Partition benötigen. Im folgenden Beispiel wird angenommen, dass eine solche Boot-Partition, auf der später der Bootloaded GRUB zum Einsatz kommen soll, eingerichtet werden muss.

Die Einrichtung der GPT-Partitionen erfolgt durch das Tool cgdisk, das über den unten stehenden Befehl gestartet werden kann, wobei es sich bei /dev/sda um den Einhängepunkt der Festplatte handelt, die partitioniert werden soll.
 # cgdisk /dev/sda  
Über das Tool sollen im Folgenden die notwendige Boot-Partition, sowie eine weitere System-Partition, die den restlichen Festplattenspeicher einnimmt, erstellt werden. Diese zweite Partition wird dann im Folgenden, wie im nächsten Abschnitt erklärt, mit LVM verschlüsselt und über sogenannte Logical Volumes in weitere virtuelle Partitionen aufgeteilt, die die Aufgaben einer Swap-Partition für das Auslagern von Daten bei überfülltem RAM, einer Root-Partition auf der das eigentliche Betriebssystem installiert wird, einer Var-Partition für Caching und Logging, sowie einer Home-Partition auf der getrennt die Benutzerdaten gespeichert werden, erfüllen.

Boot-Partition:


Um die Boot-Partition anzulegen, muss zunächst der Menüpunkt New ausgewählt werden. Anschließend wird der Sektor abgefragt, in dem die Partition starten soll. Da diese Partition die erste auf der Festplatte sein soll, kann der Standardwert 2048 mit Enter bestätigt werden. Der Bereich von Sektor 0 bis 2047 bleibt ungenutzt. Als nächstes wird die gewünschte Größe der Partition abgefragt. Hierfür eine solche Boot-Partition eignet sich ein Wert von etwa 100 MiB, was dem Wert 100M entspricht. Für den daraufhin abgefragten Hex-Code muss dann der Wert EF02 eingegeben werden, welcher die Partition als BIOS Boot-Partition identifiziert. Zuletzt kann noch ein Name für die neu erstellte Partition angegeben werden, welcher in diesem Beispiel für boot sein soll. Die Einrichtung der Boot-Partition ist hiermit abgeschlossen und das Ergebnis sollte in der angezeigten Partitionstabelle sichtbar sein.

System-Partition:


Über die Cursor-Tasten navigiert man nun in der angezeigten Partitionstabelle zu dem ungenutzten Bereich hinter der zuvor erstellten Boot-Partition und wählt erneut den Menüpunkt New um die eine zweite Partition anzulegen, die den restlichen Festplattenplatz einnimmt. Für den Startsektor kann wieder mit Enter der Standardwert übernommen werden, so dass die Partition direkt an die bereits angelegte Boot-Partition anschließt. Auch die Abfrage zur Größe der Partition kann mit Enter bestätigt werden um den kompletten freien Speicherbereich zu belegen. Das selbe gilt für die Abfrage des Hex-Codes, der den Partitionstyp beschreibt. Der Standardwert beschreibt hierbei eine Standard-Linux-Datenpartition. Als Name wird zuletzt noch system vergeben. Damit ist die Erstellung der Partition abgeschlossen und sie sollte ebenfalls in der Partitionstabelle angezeigt werden.

Bevor die angelegten Partitionen auf die Festplatte geschrieben werden, sollte man die Partitionstabelle noch einmal prüfen. Falls man mit dem Ergebnis nicht zufrieden ist, kann das Programm über die Tastenkombination Strg+C beendet werden, ohne das die Änderungen angewandt werden. Ist man dagegen mit den Einstellungen zufrieden, können die Änderungen über den Menüpunkt Write und ein anschließendes Bestätigen durch die Eingabe von yes geschrieben werden.

6 Einrichten von LVM


Das sogenannte Logical Volume Management, das in diesem Schritt der Installation eingerichtet werden soll, ist nicht zwingend erforderlich, bietet aber einige zusätzliche Möglichkeiten, indem es von dem physikalischen Festplattenspeicher abstrahiert. Dazu gehört zum Beispiel, dass Partitionen später konfortabler vergrößert oder verkleinert werden können oder dass mehrere Festplatten zu einer einzigen virtuellen Festplatte zusammengeschlossen werden können. Der für mich jedoch wichtigste Punkt ist, Partitionen komplett zu verschlüsseln, so dass auf die Daten, die sich darauf befinden, nur nach der Eingabe eines Passwortes beim Bootvorgang zugegriffen werden kann. Wie eine solche Verschlüsselung mittels LVM eingerichtet werden kann, soll im Folgenden erläutert werden.

Die beiden, im vorherigen Schritt angelegten, Partitionen sind den Einhängepunkten /dev/sda1 für die Boot-Partition, sowie /dev/sda2 für die System-Partition, zugeordnet. Die Boot-Partition kann aus technischen Gründen nicht verschlüsselt werden, da ansonsten nicht gebootet werden kann. Dies schränkt die Sicherheit jedoch nicht ein, da auf die verschlüsselten Daten der System-Partition trotzdem nicht zugegriffen werden kann. Um eine optimale Sicherheit zu erzielen, sollte man den Inhalt der zu verschlüsselnden Partition zunächst mit Nullen überschreiben, was über den folgenden Befehl erreicht werden kann:
 # shred -vzn 0 /dev/sda2  
Anschließend müssen für die Einrichtung der Verschlüsselung die dafür notwendigen Kernel-Module geladen werden:
 # modprobe dm-crypt  
Die eigentliche Verschlüsselung kann dann über den unten stehenden Befehl eingerichtet werden (Falls eine Partition mit einer Größe von mehr als 2 TiB verschlüsselt werden soll, sollte stattdessen der Befehl aes-xts-plain64 verwendet werden). Der Befehl muss zunächst durch Eingabe von YES quittiert werden, anschließend muss das Passwort eingegeben und bestätigt werden, das für die Verschlüsselung genutzt werden soll.
 # cryptsetup -c aes-xts-plain -y -s 512 luksFormat /dev/sda2  
Für die weitere Verwendung der eben verschlüsselten Partition für den weiteren Verlauf der Installation, muss diese anschließend durch Eingabe des gewählten Passworts eingebunden werden. Dies geschieht über folgenden Befehl, woraufhin eine neue Gerätedatei mit dem Namen lvm in dem Verzeichnis /dev/mapper erscheint.
 # cryptsetup luksOpen /dev/sda2 lvm  
Das eigentliche LVM und die zugehörige Volume Group kann nun über die folgenden Befehle eingerichtet werden:
 # pvcreate /dev/mapper/lvm  
 # vgcreate main /dev/mapper/lvm  
Abschließend müssen noch die einzelnen Logical Volumes, also die virtuellen Partitionen des LVM definiert werden. In diesem Beispiel handelt es sich dabei um eine Swap-Partition, eine Root-Partition und eine Home-Partition. Die optimale Größe ist dabei abhängig von der Größe des verfügbaren Arbeitsspeichers. Bei weniger als 512 MiB RAM sollte die Größe der Swap-Partition das Doppelte betragen. Ansonsten genügt eine Swap-Partition deren Größe der Größe des RAMs entspricht. In diesem Beispiel wird angenommen dass der RAM 4 GiB beträgt. Die Swap-Partition soll also ebenfalls 4 GiB umfassen. Die Root-Partition dagegen soll einen Speicherbereich von 12 GiB umfassen und die Home-Partition den übrigen freien Speicher für sich beanspruchen. Diese Logical Volumes lassen sich über die folgenden Befehle einrichten. Falls die Größe eines Logical Volumes im Megabyte-Bereich statt im Gigabyte-Bereich liegen soll, muss hierfür als Einheit statt GB das Zeichen M verwendet werden.
 # lvcreate -n swap -L 4G -C y main
 # lvcreate -n root -L 12G main
 # lvcreate -n var  -L 4G  main
 # lvcreate -n home -l 100%FREE main

7 Formatieren der Partitionen


Um auf die zuvor erstellten Partitionen Datein kopieren zu können, müssen diese außerdem noch formatiert werden. Als Dateisystem soll hierfür in diesem Beispiel ext4 zum Einsatz kommen. Die Boot-, Root-, und Home-Partition können durch die folgenden Befehle mit diesem Dateisystem formatiert werden:
 # mkfs.ext4 /dev/sda1  
 # mkfs.ext4 /dev/mapper/main-root
 # mkfs.ext4 /dev/mapper/main-var  
 # mkfs.ext4 /dev/mapper/main-home  
Um die Swap-Partition zu formatieren und zu aktivieren muss stattdessen wie folgt vorgegangen werden:
 # mkswap /dev/mapper/main-swap  
 # swapon /dev/mapper/main-swap  

8 Mounten der Partitionen


Um die einzelnen Partitionen für den weiteren Verlauf der Installation zu nutzen, müssen diese in diesem Schritt gemountet werden. Eine hilfreiche Übersicht über die existierenden Partitionen lässt sich über den folgenden Befehl anzeigen:
 # lsblk /dev/sda  
Die Mount-Reihenfolge ist sehr wichtig. Zuerst muss die Root-Partition folgendermaßen im Verzeichnis /mnt gemountet werden:
 # mount /dev/mapper/main-root /mnt  
Anschließend können die übrigend Partitionen gemountet werden. Zunächst wird hierfür die Home-Partition in dem Verzeichnis /mnt/home eingehängt:
 # mkdir /mnt/home  
 # mount /dev/mapper/main-home /mnt/home  
Anschließend wird die Var-Partition unter /mnt/var gemountet:
 # mkdir /mnt/var  
 # mount /dev/mapper/main-var /mnt/var  
Zuletzt wird dann noch die Boot-Partition unter /mnt/boot gemountet: 
 # mkdir /mnt/boot  
 # mount /dev/sda1 /mnt/boot  
Die Swap-Partition muss dagegen nicht gemountet werden.

9 Auswahl eines Mirrors


Mit Mirrors sind an dieser Stelle die Online-Quellen für Software-Installationen und -Updates gemeint. Die Liste aller Server, die als Quellen herangezogen werden, ist unter /etc/pacman.d/mirrorlist gespeichert und lässt sich in diesem Schritt optional edititieren. Hierfür ist unter dieser Adresse ein Generator-Tool verfügbar, über das sich Kriterien wie die etwa die Region des Servers oder ob das HTTP- bzw. HTTPS-Protokol genutzt wird, einstellen lassen und eine Ergebnisliste angezeigt wird. Zu beachten ist hierbei, dass Server, die das HTTP- oder HTTPS-Protokol nutzen, in der Regel schneller sind als FTP-Server.

Falls die Liste von Mirrors edititert werden soll, lässt sich die entsprechende Datei über folgenden Befehl in einem Editor öffnen. Die Datei enthält Standardmäßig alle verfügbaren Mirrors. Die nicht erwünschten Adressen müssen aus der Datei gelöscht, oder die jeweilige Zeile durch das Voranstellen eines #-Zeichens auskommentiert werden. Über Strg-X kann der Editor anschließend wieder beendet werden. Die Änderungen müssen dabei bestätigt werden.
 # nano /etc/pacman.d/mirrorlist  

10 Installation des Basissystems


Nach den bereits getätigten Konfigurationen ist es nun an der Zeit, das Basissystem zu installieren. Die Installation wird folgendermaßen über das pacstrap-Skript durchgeführt (Falls die Installation ohne Benutzerinteraktion zur Bestätigung der Installation der einzelnen Pakete erfolgen soll, kann der i-Parameter weggelassen werden):
 # pacstrap -i /mnt base  

11 Generierung der "File System Table"


Bei der sogenannten File System Table handelt es sich um eine Datei, die alle zu mountenden Dateisysteme des Systems enthält. Diese Datei, die nach diesem Schritt unter /mnt/etc/fstab zu finden sein wird, lässt sich einfach über den folgenden Befehl generieren:
 # genfstab -U -p /mnt >> /mnt/etc/fstab  
Falls Dateisysteme, die durch die File System Table gemountet werden sollen, auf einer SSD liegen, sollte die fstab-Datei außerdem editiert werden, um den Verschleiß des Datenträgers durch unnötige Schreibvorgänge zu verhindern. Hierfür ist die Datei über den unten stehenden Befehl in einem Editor zu öffnen und die vierte Spalte, die die Mount-Optionen enthält, aller betroffenen Dateisysteme zu edititeren, so dass sie den Wert "discard, noatime, commit=600, defaults" enthält. Ausnahmen bilden hierbei eine eventuell vorhandene Swap-Partition, für die die Mount-Optionen "sw, discard" gesetzt werden sollte, sowie die Root-Partition für die die Mount-Optionen "discard, noatime, commit=600, errors=remount-ro" gewählt werden sollten.
 # nano /mnt/etc/fstab  
Die fstab-Datei für das in diesem Artikel verwendete Beispiel könnte dann in etwa folgendermaßen aussehen:
 #  
 # /etc/fstab: static file system information  
 #  
 # <file system>                    <dir>    <type>    <options>  <dump>                                           <pass>  
   
 # /dev/mapper/main-root  
 UUID=a6d24c4e-d92b-4dba-8dc0-271f52c24698    /        ext4       discard, noatime, commit=600, errors=remount-ro  0    1  
   
 # /dev/mapper/main-home  
 UUID=0e93cfe2-b2dd-4f56-8efe-496c6f79a1b8    /home    ext4       discard, noatime, commit=600, defaults           0    2  
   
 # /dev/mapper/main-var
 UUID=5c6d2937-e84d-41c0-a730-57b17780af2c    /var     ext4       discard, noatime, commit=600, defaults           0    2

 # /dev/sda1  
 UUID=e3bb6038-7a1d-42b2-be37-f90f388b43ca    /boot    ext4       discard, noatime, commit=600, defaults           0    2  
   
 # /dev/mapper/main-swap  
 UUID=9335ef5f-8a8c-425b-ac5f-b5a2e8f45cc3    none     swap       sw, discard                                      0    0  
Außerdem sollte die Datei /etc/lvm/lvm.conf so edititert werden, dass die Zeile "issue_discards = 0" auf den Wert 1 gesetzt wird.

Die hier aufgeführten Optimierungen für SSD-Laufwerke wurden diesem Artikel des Debian-Wikis entnommen, der eben dieser Thematik gewidmet ist.

12 Konfiguration des Basissystems


In dem nun folgenden Schritt gilt es, das zuvor installierte Basissystem zu konfigurieren. Hierfür muss das aktuell verwendete Rootverzeichnis zunächst über folgenden Befehl auf den Einhängepunkt /mnt geändert werden:
 # arch-chroot /mnt  

Locales:


Die sogenannten Locales werden von Programmen dazu genutzt länderspezifische Währungseinheiten, Zeit- und Datumsformate, sowie andere regional abhängige Werte korrekt darzustellen. Um hierfür die Unterstützung für die jeweilige Region einzurichten, in der man sich befindet, ist das Editieren der beiden Dateien /ect/locale.gen und /etc/locale.conf nötig.

Um die Datei /etc/locale.gen zu editieren, muss sie über folgenden Befehl in einem Editor geöffnet werden:
 # nano /etc/locale.gen  
Standardmäßig sind alle Zeilen der Datei auskommentiert. Für diejenigen Einträge, die genutzt werden sollen, muss das voran gestellte #-Zeichen entfernt werden. Neben dem Eintrag "en_US.UTF-8 UTF 8" für die US-englische Region sollte auf diese Weise der Eintrag "de_DE.UTF-8 UTF 8" für Deutschland aktiviert werden.

Die Änderungen in der Datei müssen nach dem Editieren über den folgenden Befehl übernommen werden:
 # locale-gen  

Die Datei /etc/locale.conf existiert standardmäßig nicht. Um auch sie für den deutschsprachigen Raum zu konfigurieren, kann sie über die folgenden  beiden Konsolenbefehle erzeugt werden:
 # echo LANG=de_DE.UTF-8 > /etc/locale.conf  
 # export LANG=de_DE.UTF-8  

Tastaturlayout und Schriftart:


Bereits ganz zu Beginn der Installation wurden das Tastaturlayout und die verwendete Schriftart geändert. Dieser Schritt ist nun erneut nötig:
 # loadkeys de-latin1  
 # setfont Lat2-Terminus16  
Damit diese Einstellung nach einem Neustart des Systems immer noch verfügbar sind, muss außerdem noch die Datei /ect/vconsole.conf editiert werden, wofür sie über folgenden Konsolenbefehl in im Editor geöffnet werden kann:
 # nano /etc/vconsole.conf  
In die Datei müssen die beiden folgenden Zeilen eingetragen werden:
 KEYMAP=de-latin1  
 FONT=Lat2-Terminus16  

Zeitzone:


Anschließend muss die Zeitzone festgelegt werden, in der man sich befindet. Die verfügbaren Zeitzonen sind im Verzeichnis /usr/share/zoneinfo gespeichert. Um sich auf eine Zeitzone festzulegen, muss ein symbolischer Link auf das Verzeichnis /etc/localtime erstellt werden. Für Deutschland lautet der Befehl um diesen Link einzurichten beispielsweise:
 # ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime  

Echtzeituhr:


Im nächsten Schritt muss die Echtzeituhr des Systems gesetzt werden, was über den folgenden Befehl geschieht:
 # hwclock --systohc --utc

Hostname:


Letzendlich muss noch ein beliebiger Hostname für das System gesetzt werden, indem er in die Datei /etc/hostname geschrieben wird. Dies ist über folgenden Befehl zu bewerkstelligen, wobei "hostname" durch den gewünschten Hostnamen zu ersetzen ist:
 # echo hostname > /etc/hostname  

13 Netzwerkverbindung konfigurieren


Wie auch das Tastaturlayout und die Schriftart muss auch die Netzwerkverbindung in diesem Schritt erneut konfiguriert werden.

Konfiguration einer direkten LAN-Verbindung:


Wenn der Computer über eine direkte LAN-Verbindung angeschlossen ist, genügt hierfür der unten stehende Befehl:
 # systemctl enable dhcpcd.service  

Konfiguration einer WLAN-Verbindung:


Zur Konfiguration einer WLAN-Verbindung müssen zunächst die Pakete iw, wpa_supplicant und wpa_actiond installiert werden:
 # pacman -S iw wpa_supplicant wpa_actiond  
Für die Nutzung des Programms wifi-menu, wie sie bereits in einem vorherigen Abschnitt dieses Artikels erläutert wurde, muss außerdem noch das Paket dialog installiert werden. Dies ist über den unten stehenden Befehl möglich. Nach Abschluss der Installation und dem Neustart des Systems kann das Programm wifi-menu genutzt werden um eine Verbindung zu einem Drahtlosnetzwerk herzustellen.
 # pacman -S dialog  
Um den Service zu aktivieren, der dafür sorgt, dass die Verbindung zu bereits bekannten Drahtlosnetzwerken automatisch hergestellt wird, sollte außerdem noch der folgende Konsolenbefehl ausgeführt werden, wobei es sich bei "wlp12s0" um den Namen des WLAN-Interfaces handelt.
 # systemctl enable netctl-auto@wlp12s0.service  
Für abweichende Netzwerkkonstellationen sei an dieser Stelle wieder einmal auf die Dokumentation im Arch-Wiki verwiesen.

14 Ramdisk Environment konfigurieren


In diesem Schritt muss das sogenannte Ramdisk Environment kofiguriert weren. Da in dieser Installationsanleitung logische LVM-Partitionen erstellt wurde, werden hierfür Änderungen an der Datei /etc/mkinitcpio.conf notwendig. Hierfür lässt sich die Datei in einem Editor über folgenden Befehl starten:
 nano /etc/mkinitcpio.conf  
Die Zeile, die mit "HOOKS=..." beginnt, muss so editiert werden, dass sie darauf den folgenden Text enthält:
 HOOKS="base udev autodetect modconf block filesystems keyboard keymap encrypt lvm2 fsck"  
Die Änderungen in der editierten Datei müssen anschließend über folgenden Befehl angewandt werden:
 # mkinitcpio -p linux  

15 Setzen des Root-Passwortes


In diesem nächsten Schritt muss das Root-Passwort gesetzt werden. Hierfür muss der folgenden Befehl ausgeführt werden und anschließend das gewünschte Passwort, sowie eine Bestätigung dessen, eingegeben werden.
 # passwd  

16 Installation des Bootloaders


Nun muss ein Bootloader installiert werden, der später dafür sorgen wird, dass das Betriebssystem gestartet werden kann. Zur Auswahl für Systeme mit BIOS-Mainboards, wie das System, das in diesem Beispiel verwendet wird, stehen hierfür Syslinux und GRUB zur Verfügung. In diesem Beispiel soll Syslinux verwendet werden. Für die Einrichtung des Bootloaders auf einem UEFI-System sei auf die eingangs erwähnten Artikel des Arch-Wikis verwiesen.

Für die Einrichtung von Syslinux muss dieses zuerst installiert werden, was mittels des Arch-Linux eigenen Paketmanagers Pacman durch den folgenden Befehl erreicht wird:
 # pacman -S syslinux
Da in diesem Beispiel GPT zur Partitionierung genutzt wurde, muss für die korrekte Funktion von Syslinux noch das Paket gptfdisk installiert werden:
 # pacman -S gptfdisk  
Anschließend muss der Bootloader durch folgenden Befehl initialisiert werden:
 # syslinux-install_update -i -a -m 
Außerdem muss die Konfigurationsdatei /boot/syslinux/syslinux.cfg so editiert werden, dass auf die korrekte Root-Partition verwiesen wird, von der beim Booten gestartet werden soll. Hierfür muss die Datei über folgenden Befehl in einem Editor geöffnet werden muss:
 # nano /boot/syslinux/syslinux.cfg  
Für die beiden Einträge "arch" und "archfallback" muss jeweils die Zeile, die mit "APPEND" beginnt so editiert werden, dass sie wie folgt aussieht:
 APPEND cryptdevice=/dev/sda2:main root=/dev/mapper/main-root ro lang=de locale=de_DE.UTF-8  

17 Neustart des Systems


Die Installation desArch Linux-Basissystems ist hiermit abgeschlossen und das frisch installierte System kann neu gestartet werden. Zur Vorbereitung des Neustarts muss zunächst die chroot-Umgebung über folgenden Befehl verlassen werden:
 # exit  
Anschließend sollten die im Laufe der Installation eingehängten Partitionen ausgehängt werden, was über die folgenden Befehle geschieht:
 # umount /mnt/boot  
 # umount /mnt/home  
 # umount /mnt/var  
 # umount /mnt  
Über den folgenden Befehl wird der Rechner anschließend neu gebootet.
 # reboot  
Zur Anmeldung an dem System nach dem Neustart kann der Standard-Benutzer "root" mit dem zuvor vergebenen Passwort verwendet werden.

Weiterführende Links:

Arch Linux: Umstieg von Ubuntu auf Arch Linux - Motivation (Teil 1)

Ich nutze seit Jahren Ubuntu als Betriebssystem auf dem Laptop, welcher mein primäres Arbeitsgerät ist. Die Distribution hat mich dabei nicht nur zu einem endgültigen Umstieg von Windows auf Linux überzeugt, sondern mir auch stets einen sehr guten Dienst geleistet. Auch habe ich mich, anders als viele andere Ubuntu-User, nie an der Einführung der Benutzeroberfläche Unity gestört. Im Laufe der Zeit habe ich zudem sehr viele Veränderungen am System und insbesondere an der Benutzeroberfläche vorgenommen, um es meinen Bedürfnissen anzupassen und mir mein "persönliches" Ubuntu zu schaffen.

Gründe für einen Umstieg auf Arch Linux


Auch wenn mich Ubuntu stets sehr zufrieden gestellt hat, hat in letzter Zeit die recht junge Distribution Arch Linux meine Aufmerksamkeit erlangt. Arch Linux stellt ein sehr minimalistisches Linux-Grundsystem dar, dass auf jegliche grafische Benutzeroberfläche zur Installation und Konfiguration verzichtet. Aus diesem Grund eignet es sich vor allem für fortgeschrittene Benutzer, die bereits einige Erfahrungen mit Linux sammeln konnten. Trotzdem gewinnt die Distribution aufgrund ihrer Flexibilität immer mehr an Popularität. So können beispielsweise beliebige grafische Benutzeroberflächen installiert werden, um von Grund auf ein System nach den eigenen Wünschen aufzubauen. Auch ich möchte mich an der Installation und Konfiguration eines solchen Arch Linux-Systems versuchen und über mein Vorgehen und meine Erfahrungen mit diesem möglichen Umstieg auf Arch Linux in einer Reihe von Artikeln berichten. Ob mich Arch Linux letztendlich im Vergleich mit Ubuntu überzeugen wird, muss sich erst in der Praxis zeigen, jedoch möchte ich über den Ubuntu-Horizont hinaus blicken und Erfahrungen mit dem grundlegend unterschiedlichen Konzept sammeln.

Das Logo von Arch Linux (Bildquelle: danlynch.org, Klicken zum Vergrößern)

Freie Wahl der Benutzeroberfläche


Als Canonical, das Unternehmen das hinter Ubuntu steht, beschloss, die bisher verwendete Benutzeroberfläche GNOME 2 durch die Eigenentwicklung Unity zu ersetzen, anstatt auf den Nachfolger GNOME 3 zu setzen, stoß dies auf teilweise starken Widerwillen unter großen Teilen der Benutzer. Mich persönlich überzeugte das neue Konzept des Desktopsystems dagegen sehr schnell, während ich dem ebenfalls sehr geänderten Bedienkonzept von GNOME 3 aufgrund von anfänglichen Problemen sehr skeptisch gegenüber stand.

In letzter Zeit geht die Entwicklung von Ubuntu, bzw. Unity jedoch in eine Richtung, die man als Befürworter von OpenSource und der Freiheit der Benutzer nicht gut heißen kann. So wird die Community bisher von der Entwicklung ausgeschlossen und Unity ist in erste Linie dafür konzipiert mit Ubuntu zusammenzuarbeiten, anstatt für alle Distributionen zur Verfügung zu stehen. Auch wurde beispielsweise die lokale Suche des Unity-Dashboards bereits vor einiger Zeit um eine Amazon-Suche erweitert, die standardmäßig aktiviert ist und dem User nicht nur ungefragt Werbeeinträge in den Suchergebnissen anzeigt, sondern auch aus Datenschutzgründen fraglich ist. In Zukunft soll die Anzahl dieser sogenannten "Lenses", die es erlauben Online-Inhalte in die Suche einzuschließen, noch steigen. Diese Tendenz, leichtfertig mit den persönlichen Daten des Benutzers umzugehen, wobei die Einstellungsmöglichkeiten, was mit diesen Daten geschehen soll, bis heute gering blieben, ließen auch mich zunehmen an Ubuntu, bzw. vor allem an der Canonical-eigenen Benutzeroberfläche Unity zweifeln, weshalb ich beschlossen habe, einen erneuten Blick auf das mittlerweile gereifte GNOME 3 zu wagen.

Viele User, die statt Unity auf eine alternative Desktopumgebung wie etwa GNOME 3 setzen, mussten während der letzten Releases wohl eine zunehmende Verschlechterung derer Unterstützung unter Ubuntu hinnehmen. Diese Entwicklung, die wohl auf die zunehmende Fokusierung auf Unity zurück zu führen ist, führt nach Berichten einiger Benutzer zu häufigeren Abstürzen von Programmen und Diensten. Wenn es nun also für mich an der Zeit ist, die verwendete Desktopumgebung zu wechseln, ist es wohl besser, sich nach einer neuen Distribution als deren Basis umzusehen.

Der Betrieb von GNOME 3, mit dem ich zukünftig mein Glück versuchen will, funktioniert unter Arch Linux reibungslos. Auch für alle anderen verfügbaren Benutzeroberflächen wie etwa KDE, LXDE, Xfce, MATE, oder Cinnamon gilt diese vorbildliche Unterstützung, da das Konzept der Distribution es vorsieht, die verwendete Desktopumgebung nach Belieben wählen zu können. Diese Möglichkeit, die Wahl der Benutzeroberfläche und der verwendeten Programme flexibel gestalten zu können, ist ein großer Vorteil von Arch Linux.

Stets aktuelle Software aufgrund von Rolling-Releases


Eine weitere Hoffnung, die ich in Arch Linux setze, ist, aufgrund dessen Rolling-Release-Konzepts, stets über aktuelle Software zu verfügen. Unter Ubuntu ist dies nur schwer möglich, wenn man auch Programme nutzt, die nicht über die Ubuntu-PPAs verfügbar sind und hierüber regelmäßig mit Updates versorgt werden. Zwar lassen sich benutzerdefinierte PPA-Quellen nutzen, über die auch Updates bezogen werden können, doch weisen diese nach einem Update auf eine neue Ubuntu-Versionsnummer oftmals Inkompatibilitäten auf und werden deshalb bei einem solchen Update auch standardmäßig deaktiviert. Müssen Programme darüberhinaus sogar selbst kompiliert werden, sind automatische Updates aus den jeweiligen Quellen überhaupt nicht möglich. Über das sogenannten Arch User Repository (AUR) ist dagegen fast jede erdenkliche Linux-Software in aktueller Version für Arch Linux verfügbar, wobei sich neben Binaries auch zu kompilierende Quellen nutzen und aktualisieren lassen. Das Prinzip von Rolling-Releases unterscheidet sich grundlegend von dem Konzept der Release-Zyklen, wie sie bei Ubuntu definiert sind. Dabei werden die Software- und Kernel-Komponenten des Systems in regelmäßigen zeitlichen Abständen aktualisiert und zwischen diesen Zeitpunkten lediglich mit Sicherheitsupdates versorgt, während das Rolling-Release-Konzept es erlaubt, stets aktuelle Softwareversionen zu verwenden. Allerdings muss der Benutzer in diesem Fall selbstständig auf eventuelle Inkompatibilitäten zwischen den installierten Versionen achten.

In den folgenden Artikeln dieser Serie soll auf die Installation und die Konfiguration eines Arch Linux-Systems eingegangen werden und die Vor- und Nachteile gegenüber Ubuntu aufgezeigt werden. Dabei hinaus wird sich zeigen, ob sich die gewonnene Flexibilität in der Praxis gegenüber der steigenden Komplexität auszeichnet.

Weiterführende Links:

23. Juli 2013

Ubuntu: USB-Stick mit bootbarer Linux-Distribution erstellen

Es kann aus mehreren Gründen sehr hilfreich sein, einen bootbaren USB-Stick zu erstellen von dem eine Linux-Distribution gebootet werden kann. Etwa wenn es darum geht, eine solche Distribution auf einem Rechner zu installieren, der über kein CD- bzw. DVD-Laufwerk verfügt, oder um stets ein bootbares Linux zur Hand zu haben.

In diesem Artikel soll das Erstellen eines solchen bootbaren USB-Sticks unter Ubuntu anhand der Live-Distribution Knoppix erläutert werden. Ein solches Live-System kann ohne vorherige Installation gestartet werden, da die dafür notwendigen Daten beim Start lediglich in den Arbeitsspeicher geladen werden. Ein eventuell bereits installiertes Betriebssystem bleibt dadurch unangetastet. Knoppix eignet sich zum Beispiel zu Wartungs- oder Diagnose-Arbeiten oder zum sicheren Surfen, das System höchstens für die Dauer einer Sitzung kompromittiert werden kann.
Das Live-System Knoppix im Einsatz (Klicken zum Vergrößern)
Für das erstellen eines solchen bootbaren USB-Sticks eignet sich unter Ubuntu das Programm UNetbootin. Es ist über folgenden Konsolenbefehl installierbar:
 sudo apt-get install unetbootin   
UNetbootin bietet die Auswahl verschiedener Linux-Distributionen an, die anschließend automatisch heruntergeladen und auf den USB-Stick kopiert werden. Falls die gewünschte Distribution wie im Falle von Knoppix nicht zur Auswahl bereit steht, muss diese zunächst als ISO-Image heruntergeladen werden und in UNetbootin ausgewählt werden. Die folgenden Schritte zeigen, wie auf diese Weise die Installation eines Knoppix Live-Systems auf einem USB-Stick möglich ist:
  • Zunächst muss das Image von der Download-Seite der Knoppix-Webseite, welche unter diesem Link verfügbar ist, heruntergeladen werden.
  • Anschließend muss UNetbootin gestartet werden, wofür Root-Rechte nötig sind. Das entsprechende Passwort wird per Dialog abgefragt.
  • Anschließend kann die heruntergeladene ISO-Datei, wie in dem unten abgebildeten Screenshot dargestellt, in UNetbootin ausgewählt werden und der Kopiervorgang über die Schaltfläche "OK" gestartet werden. Hierfür muss als Typ "USB-Laufwerk" aktiv sein und der entsprechende Einhängepunkt des USB-Sticks gewählt sein. Die Option zur Angabe eines Speicherplatzes zum Speichern von Daten zwischen Neustarts ist für Knoppix nicht relevant.
Auswahl eines Images zur Installation auf einem USB-Stick durch UNetbootin (Klicken zum Vergrößern)
  • Das Knoppix Live-System kann anschließend beim Booten des Rechners, durch Auswahl der entsprechenden Option im Boot-Manager des BIOS, gestartet werden. 
Die Installation eines bootbaren Knoppix Live-Systems durch UNetbootin (Klicken zum Vergrößern)
Eine ausführlichere Dokumentation über die Funktionsweise des Tools UNetbootin findet sich außerdem unter diesem Link.