Dies ist eine alte Version des Dokuments!
Installation von „Testing“ und „Unstable“
Vorabinformationen
Diese lockere Anleitung ist gedacht für eine Installation von Debian (Wikipedia) bzw. Devuan (Wikipedia) über den sog. Mini-Installer im Textmodus. Sie setzt grundlegende Kenntnisse über die Eigenarten von „Testing“ und „Unstable“ voraus (fosstopia). Auch ein Mindestmass an Kenntnissen im Umgang mit dem Terminal muss vorhanden sein. Die hier angesprochenen Details gelten für Devuan wie für Debian gleichermaßen (ich benutze Devuan, so dass sich die genannten Details primär darauf beziehen).
Der Mini-Installer ist nicht zu verwechseln mit den bei manchen Linux-Distributionen (Wikipedia) angebotenen Netzwerk-Installern, die umfangreicher, dafür aber auch flexibler sind (evtl. beinhalten sie unfreie WLAN-Treiber, die man ansonsten nach der Grundinstallation nachinstallieren muss). Der Mini-Installer ist dafür gedacht, dass er vollständig in den Arbeitsspeicher geladen wird, so dass nach seinem Start der USB-Stick gezogen werden kann - was den Vorteil hat, dass es zu keinen Verwechslungen mit den Datenträgern kommen kann (es sollte auch sonst kein externer Datenträger am Rechner angeschlossen sein). Somit wird die eingebaute Festplatte dann korrekt als /dev/sda erkannt. Übrigens: Das funktioniert sogar auf externen SSDs, wenn man diese rechtzeitig (d.h. bevor der Installer die Laufwerkserkennung durchführt) anschließt und (wozu ich dringend rate) die im Rechner eingebaute Festplatte vorher ausbaut. Dieses Szenario ist sehr attraktiv, da so auf einen externen Datenträger ein gesamtes System installiert werden kann, welches dann auf anderen Rechnern lauffähig ist, so dass man keinen Computer durch die Gegend schleppen muss, wenn man beispielsweise Freunden etwas zeigen will. Aber dies soll nur am Rande erwähnt werden und ist keine Spezialität von „Testing“ oder „Unstable“, sondern funktioniert genau so mit „Stable“.
Hinweis: Generell kann es mit den verschiedenen Installationsmedien (vor allem mit den populären Live-/Desktop-Installationsmedien, bei denen sich aufgrund deren Größe der USB-Stick nicht ziehen lässt, da sie sich meistens nicht vollständig in den Arbeitsspeicher laden lassen) zu Fehlerkennungen kommen, so dass die eingebaute Festplatte fälschlicherweise als /dev/sdb erkannt werden und dies zu einem nicht bootfähigen System führen kann. Genau aus diesem Grund favorisiere ich möglichst den text-basierten Mini-Installer, der sich stets ziehen lässt (was man wie beschrieben auch dringend tun sollte) und der sehr zuverlässig arbeitet.
Wer die Mini-Installation mit Ubuntu (Wikipedia) versuchen will, bekommt (vermutlich, ich habe das nicht überprüft!) den etwas umfangreicheren Mini-Installer für die Ubuntu-LTS-Versionen (ubuntuusers.de, Wikipedia) hier. Inwiefern er sich heutzutage vom Debian-/Devuan-Mini-Installer unterscheidet, kann ich nicht sagen, da ich Ubuntu seit Jahren nicht mehr installiere!
Wer sich eher bei Debian zuhause fühlt, kann evtl. auch gleich zur Distribution Siduction (Wikipedia) greifen. Diese liebevoll gepflegte Linux-Distribution basiert auf Debian „Unstable“, ist in mehreren Varianten verfügbar (die wie oben beschrieben, besser von CD/DVD als von einem USB-Stick aus installiert werden sollten), ist sehr gut (auf deutsch und englisch) dokumentiert und die Maintainer pflegen ein eigenes Repository, so dass wirklich „instabile“ Original-Debian-Pakete häufig gepatched und somit auf Siduction lauffähig sind. Diese Distribution ist für nicht ganz so terminal-fixierte Menschen möglicherweise der einfachste Einstieg in die Welt von „Unstable„. Alle Anderen bekommen auf die hier beschriebene Weise die volle Erfahrung von „Testing“ und „Unstable“!
Da der Installer für „Testing“ und „Unstable„ naturgemäß recht häufig defekt ist, wird hier der Installationspad über „Stable“ mit der anschließenden Aktualisierung auf „Testing“ (und je nach Bedarf dann in einem zweiten Arbeitsschritt auf „Unstable“) beschrieben. Den aktuellen „stabilen“ Devuan-Mini-Installer kann man sich hier herunterladen. Wer Debian favorisiert, bekommt den „stabilen“ Mini-Installer dort. Deren beider grundlegender Vorteil ist, dass er stets aktuell ist und alle weiteren Daten für den Installationsvorgang in der jeweils neusten Version direkt aus dem Netz bezieht.
Achtung: Soll ein System auf einen Wechseldatenträger installiert werden, wird dringend zum Ausbau der internen Festplatte geraten, weil sonst die Zerstörung des darauf installierten Systems durch den Installer droht, da dieser möglicherweise die beiden Datenträger verwechselt (was mir schon passiert ist und mir ein installiertes System zerlegt hat!) Nach der Installation kann man gerne die interne Festplatte wieder einbauen, so dass man nach dem Einschalten des Rechners per Bootmanager (üblicherweise per Tastendruck F11, F12 o.ä.) auswählen kann, welches System gestartet werden soll.
Wer „mutig“ ist, kann sich durch die Verzeichnisse klicken und gleich den evtl. verfügbaren Mini-Installer besorgen und kann sich somit die anschließend beschriebene Systemaktualisierung auf „Testing“ oder „Unstable“ ersparen. „Evtl.“ bedeutet, dass die Mini-Installer für „Testing“ und „Unstable“ nicht nur häufig defekt, sondern auch zeitweise gar nicht verfügbar sind (eben weil sie kaputt bzw. in Neuentwicklung sind). Ein funktionierender Mini-Installer für „Stable“ dagegen ist eigentlich immer verfügbar.
Zum Installationsvorgang
Es soll hier gar nicht auf alle speziellen Details der Grundinstallation eingegangen werden (weil vieles im Installer selbsterklärend und von der regulären „Stable-Installation her bekannt ist), sondern nur ein paar ergänzende Details genannt werden (zumal es im Netz zahlreiche Installationsanleitungen gibt, die gut bebildert oder sogar als Video verfügbar sind):
- Wenn die Aktualisierung von „Stable“ auf „Testing“ (und evtl. anschließend auf „Unstable“) gewünscht ist, dann sollte zunächst ein reines Terminal-System (d.h. ohne grafische Oberfläche, ubuntuusers.de, Wikipedia) installiert werden. Denn alles was nicht installiert ist, das kann auch nicht beim anschließenden Dist-Upgrade kaputt gehen. Erst nach dem hoffentlich erfolgreichen Dist-Upgrade installiert man sich dann die gewünschte grafische Oberfläche nach. Die Basis-Administration des Systems und somit der Umgang mit apt (ubuntuusers.de, Wikipedia) im Terminal muss beherrscht werden. Im Abschnitt der „task-selection“ während des Installationsvorgangs empfielt es sich, zunächst alle vorgeschlagenen Paketauswahlen (Desktopumgebung, Webserver, etc.) abzuwählen und nur die „task-console-productivity“ hinzuzunehmen. Somit bekommt man ein maximal flexibles Basis-Grundsystem installiert, welches anschließend zu einem voll einsatzfähigen System ausgebaut werden kann.
- Als sehr gute Anleitung für das Dist-Upgrade hat sich meiner Erfahrung nach diese Anleitung von Ionos erwiesen. Ihr Vorteil ist die Aufteilung des Dist-Upgrades in zwei Teilschritte („apt upgrade –without-new-pkgs“ und anschließend „apt full-upgrade“), so dass weniger kaputt gehen kann.
- Wenn man „Testing“ oder gar „Unstable“ als Produktivsystem einsetzen will, empfiehlt es sich, so wenig Software wie irgend möglich zu installieren. Denn alles was nicht installiert ist, das kann auch nicht kaputt gehen. Selbst eine grafische Paketverwaltung ist nicht nötig, da man die Systemadministration viel sicherer im Terminal erledigen kann (gerade im Kontext von „Testing“ und „Unstable“ wird dies auch dringend empfohlen). Es gibt allerdings ein paar Terminalprogramme, die durchaus sinnvoll sind zu installieren - z.B. der terminal-basierte Dateimanager und Editor MidnightCommander (ubuntuusers.de, Wikipedia, Debian) oder auch das Paket needrestart, welches Dämonen (Wikipedia) nach Bibliothek-Updates automatisch neu starten kann (Debian).
- Man kann sich durchaus mit der Snapshot-Funktion der entsprechenden Backup-Programme befassen. Ich habe aber sehr gute Erfahrungen damit gemacht, das System konsequent auf Ext4-Dateisystemen (Wikipedia, heise, ubuntuusers) zu installieren (idealerweise mit optimierten Journal-Optionen, Wikipedia) und mittels eines geeigneten Live-Mediums (Wikipedia) ein „Image“ (ein Abbild) des gesamten Systems auf einer nicht im System eingehängten Partition abzulegen (+ Backups der Header der relevanten Partitionen, ubuntuusers.de). Dies alles befindet sich idealerweise auf einer verschlüsselten Partition, weil das 1. sicherer ist und 2. auch hier weniger kaputt gehen kann (soweit man den Umgang mit verschlüsselten Partitionen im Terminal beherrscht und diese Sicherungspartition auch unbedingt nicht ins installierte Sytem einhängen sollte). Schon seit Jahren hat sich das Terminalprogramm FSArchiver (ubuntuusers, Wikipedia) als absolut zuverlässige und unkomplizierte Sicherungslösung erwiesen. Denn sollte mal das installierte System kaputt gehen, dann kann man statt der lästigen Neuinstallation viel einfacher das Backup einspielen, anschließend den Rechner neu starten und sich danach die Updates aus dem Netz holen. Auch kann man mit dieser Methode Zeiträume überstehen, in denen mal das „Unstable“-Repository seinem Namen alle Ehre macht und schlichtweg kaputt/inkonsistent ist. Das spart enorm viel Zeit und Nerven sowie ist quasi eine „Lebensversicherung„ für das „instabile“ System.
Systempflege
Ein „Testing“ oder „Unstable“ zu betreiben, bedeutet einiges an Mehrarbeit, da sich in einem derart dynamischen System immer wieder irgendwelche Paketabhängigkeiten ändern. Auch sammeln sich die häufiger aktualisierten Kernel-Versionen auf der Festplatte an und sollten daher manuell entfernt werden (nachdem sich der neue Kernel als lauffähig/bootbar erwiesen hat!). Siduction bietet dazu einen eigenen „kernel remover„ an. Da ich mit den im Netz verfügbaren Anleitungen unzufrieden war - da sie häufig die auf manchen Systemen zusätzlich zum Kernel („linux-image“) installierten Pakete „linux-base„, „linux-binary“ und „linux-modules„ nicht entfernen - habe ich mir eine halbautomatische Lösung erarbeitet: Im Verzeichnis /root deponiere ich eine ausführbare Datei mit dem Namen rm_old_kernels.sh, die folgenden Inhalt hat:
#!/bin/bash
echo $1|dpkg –purge linux-{base,binary,image,modules}-$1+deb14-amd64
Mittels der Befehlszeile „dpkg -l|grep linux-“ (ja, mit dem abschließenden Minuszeichen, welches in diesem Kontext uninteressante Treffer ausblendet) lassen sich die aktuell installierten Kernel (image- sowie base-, binary- und modules)-Pakete anzeigen. Das Skript ruft man als Benutzer root (ubuntuusers.de, Wikipedia) auf und übergibt ihm als Parameter die Versionsnummer der Kernelpakete, die man deinstallieren will, also beispielsweise “./rm_old_kernels.sh 6.19„.
Außerdem verwende ich immer wieder folgende Befehle (die nicht alle mit der Systempflege zu tun haben), mit denen man eine ganze Menge „Altlasten“ vom Rechner bekommt (die hier aufgeführten Programme dselect, hdparm, bleachbit und vlock sind optional und sollen an dieser Stelle nicht näher beschrieben werden - ihr könnt daher diese Zeilen ggfs. bei euch weglassen):
apt update
apt list –upgradable
apt-show-versions
apt upgrade
apt dist-upgrade
apt install
apt clean
apt autoclean
apt autoremove –purge
apt-cache search (PAKETNAME als Parameter übergeben)
apt-cache show (PAKETNAME als Parameter übergeben)
aptitude purge '~c' (soweit installiert)
apt purge – $(dpkg -l|awk '/^rc/{print$2}')
dpkg -l|grep -v ^ii
apt purge '?obsolete'
apt purge '?config-files'
uname -a
dpkg -l|grep linux-
./rm_old_kernels.sh (aufrufbar wie beschrieben mit der Kernel-Version als Parameter)
dselect (soweit installiert)
hdparm -c /dev/sdb (soweit installiert)
bleachbit -c midnightcommander.history (soweit installiert)
bleachbit -c system.localizations
bleachbit -c system.rotated_logs
bleachbit &
vlock (soweit installiert)
logout
exit
Da ich wie „alle„ Nerds tippfaul bin, habe ich mir diese immer wiederkehrenden Befehle in eine Kopie der (versteckten!) .bash_history-Datei (Thomas Krenn-Wiki, Un*xe) geschrieben (.bash_history.bak) und die ebenfalls versteckte Datei .bashrc (archlinux.de, ubuntuusers.de) am Ende um folgende Zeile ergänzt: „cp -f ~/.bash_history.bak ~/.bash_history“. Dies bewirkt, dass bei jedem Einloggen als Benutzer root die Originaldatei .bash_history mit der Kopie aus .bash_history.bak überschrieben wird, so dass die jeweils gewünschten Befehle sehr komfortabel über die Pfeil rauf-/runter-Tasten aufgerufen und durch die Taste [Enter] abgeschickt werden können. Zumal sich wohl kaum Jemand die teils kryptischen Befehle merken kann.
Die dieser Basis-Installation nachfolgenden Arbeitsschritte (X-Server und Desktopumgebung plus Anwendungen nachinstallieren) unterscheiden sich prinzipiell nicht von der Einrichtung einer „Stable“-Installation und bedürfen daher keiner genaueren Erläuterung.