Installierung von SYS unabhaengig vom Geraet (DVD , usb-key , Festplatte) 1. Allgemeines Ueblicherweise wird SYS von einem Install-DVD aus installiert. SYS wird als downloadbare .iso -Datei (udf-Format) geliefert, die man auf ein DVD kopiert, mit welchem dann der Rechner neu gestartet wird. Das Kopieren der .iso -Datei auf ein DVD und das booten damit ist jedoch ein Schritt, der heutzutage prinzipiell unnoetig und stoeranfaellig ist. Fast immer hat der Benutzer bereits ein laufendes System, mit dem meist auch die .iso -Datei downgeladen wurde, und von dem aus im Prinzip die Installation unter direkter Verwendung der .iso -Datei erfolgen kann. Das Brennen auf ein DVD und umgekehrte Lesen davon zur Installation, erfordert einen DVD-Rekorder, der bei einem fast vollen DVD zudem von guter Qualitaet sein muss. Im Laufe der Fortentwicklung der Informatik tauchen ferner staendig neue Geraete auf oder werden bequemer (zZt usb-keys), waehrend andere aus der Mode kommen (zZt CD/DVD-Geraete). Neue kleine laptops, notebooks usw haben keine DVD/CD-Geraete mehr. usb-Geraete haben ferner bei guenstigerem Preis eine flexiblere Kapazitaet ohne der Grenze von 4,7 Mrd. bytes wie bei DVDs. An diese Entwicklung musste SYS angepasst werden. Es ist keine guenstige Loesung, fuer jedes Geraet ein eigenes Format des gesamten Systemes zu machen (wie dies zBsp fuer MINIX, SLAX und diverse Distros erfolgt). Fuer SYS muessten dann mehrere Dateien von je 4,7 GB (oder mehr) erzeugt und bereitgehalten werden. Darin waere nur <1 % unterschiedlich je nach Geraet, und der Rest gleich. Die .iso -Datei zur Installation von SYS besteht typischerweise zu 96% aus einem fertigen, kompaktierten System, ca. 4% aus last-minute-updates von Programmen, ca. 0,3% aus dem Backup/Install/Rescue-System, was alles geraeteunabhaengig ist; dagegen machen bootloader, Verwaltung des .iso -Formates also DVD/CD-abhaengiger Inhalt weit unter 1 MB aus. Deswegen ist es am guenstigsten, SYS weiterhin als einheitliche Datei zu liefern, die bei allen Geraeten verwendet werden kann, und die gepacktes System, updates fuer Programme, und Installer enthaelt, und daneben kleine Programme oder sonstige Hilfsmittel fuer die unterschiedlichen Geraete um die Installation zu starten. Die einheitliche Datei kann ein beliebiges Archiv-Format haben, etwa .tar oder .iso . Ein Kompaktieren ist nicht sinnvoll, da praktisch der gesamte Inhalt bereits kompaktiert ist (vorinstalliertes System SYS-Linux.ext3.lzma , Programme .tgz , Installer initrd.cpio.gz) . Wir wollen SYS daher weiterhin im .iso -Format liefern, sodass an den Routinen von Erstellung, spiegeln, download nichts geaendert werden muss, und sodass es weiterhin bei Bedarf auf ein (ggf doppelseitiges) DVD kopiert und weitergegeben werden kann, zumal fuer usb-keys auch kein eigenes Format existiert. Dazu wurden Aenderungen am Installer durchgefuehrt, sodass die Installierung mit der .iso -Datei durch Verwendung eines virtuellen DVD-Lesers (loop-device) erfolgen kann. Ferner wurde noch ein Hilfsprogramm geschrieben, was diese Installation etwas erleichtert; dieses ist in kuenftigen Versionen im .iso enthalten. Damit kann vom laufenden System aus die Installation mit der .iso -Datei auf einem beliebigen Medium (Festplatte, usb-key, Install-DVD) befindlich, erfolgen. Diese Methode der Installation ist die guenstigste, wenn man SYS auf dem eigenen Rechner wo das .iso downgeladen wurde, neben dem schon vorhandenen System installieren will. Kopieren auf ein usb-key oder DVD dauert meist laenger als die Installation selbst. Will man jedoch SYS auf einem anderen Rechner installieren oder weitergeben, und kommt ein DVD nicht in Frage, kopiert man das .iso und das Hilfsprogramm auf ein usb-key, im laufenden System des Ziel-Rechners kann man es davon direkt installieren. Hat der Ziel-Rechner kein laufendes Linux-System, ist es noetig, dass der usb-key eins enthaelt, und damit bootbar ist. In der Datei SYS_Linux.img ist ein Abbild des Anfanges einer Festplatte mit einer bootbaren Partition und dem Install-Rettungs-System enthalten. Diese Datei kann mit dd auf einen leeren USB-key (oder eine Festplatte) kopiert werden. Damit kann man booten, ggf die Groesse an den USB-Key anpassen, und soweit gross genug, auch das SYS_Linux.iso hinzukopieren. Wie gesagt, ist der Grundgedanke, downgeladene .iso -Dateien mit dem gesamten System direkt vom benutzten System zu installieren, zumal Kopieren auf ein Medium etwa so aufwendig ist wie die Installation selbst. Da das laufende System oft sehr unterschiedlich zu SYS ist (zBsp Debian), ist der erste Schritt, die Datei zu mounten und in das System des Installers zu chrooten. Ferner bestehen gewisse Beschraenkungen des lfnd. Systemes, etwa bei Repartionieren der Partitionen auf dem Boot-Geraet. Dies macht zZt ein booten waehrend der Installation noetig. Es ist aber anzunehmen, dass dies durch Verbesserung des Kernels kuenftig ueberfluessig wird. Daneben bestehen auch weiterhin Anwendungen, fuer die das .iso auf ein Medium wie DVD oder USB-Key kopiert werden soll. Etwa die Verwendung auf mehreren eigenen Rechnern oder die Weitergabe. Ferner sind einige Systeme so verschieden, etwa SLAX oder Zip-Slack auf nicht-Linux-Partitionen, sodass eine Installierung von dort aus zu problematisch waere. Bei der Verwendung des eigenen Installers, aber auch bei Update von SYS, koennen die Programme zur Installation usw. direkt vom laufenden System aus benutzt werden, ohne chroot oder reboot. 2. Kurz-Anleitung / Funktioniert derzeit nur im Text-Modus, Benutzung von mc wird sehr empfohlen. / Falls man mehrere Festplatten hat, sollte das lfnd. System oder das .iso auf einer anderen Platte sein als die auf die installiert wird, andernfalls sollten zumindest vor der Installation 20 GB freier / nicht partitionierter Platz eingerichtet werden (falls eine Platte nicht ganz freigegeben ist, updatet der Kernel Aenderungen der Partitionen nicht korrekt, und die Installation kann fehlschlagen) / .iso (Version ab 0.23-rc4) in den Haupt-Ordner einer Partition (zBsp nach /) kopieren/verschieben und in SYS_Linux.iso umbenennen / Vom Installer SYS_Linux-.tgz , oder von .iso-Datei SYS_Linux-.iso (Version ab 0.23-r2) die initrd /boot/initrd.cpio.gz entpacken und in /initrd kopieren. Das Hilfsprogramm /installiso hinzukopieren. ( Alle .tgz , .iso , .cpio.gz -Dateien koennen im mc durch Waehlen und Druecken von ENTER entpackt / geoeffnet und dann mit F5 kopiert werden, im .tgz-Paket vom Installer ist /initrd bereits entpackt, also den Ordner /boot/initrd nach / kopieren ) / In /initrd gehen und ./installiso ausfuehren Den wesentlichen Verlauf der Installation kann man in /initrd in installiso , init und den anderen Programmen sehen. Man kann den Installer auch durch cd /initrd ; umount ; chroot . ; ./init starten - erneut nach ggf. noetigem reboot, in diesem Fall keine Dateien in /initrd loeschen. 3. Probleme Aus diversen Gruenden ist ein chroot nach /initrd geboten und wird zur Installation durchgefuehrt - so etwa, damit bei sehr unterschiedlichem laufendem System die Installation nicht fehlschlaegt sondern eigene Programme des SYS Installers verwendet werden. Das chroot erfolgt am Ende von installiso , nachdem u.a. ausserhalb alle nicht benoetigten Partitionen umounted wurden und nachdem /etc/rc.d/rc.local des primaeren Systemes so abgeaendert wurde dass nach einem reboot die Installation fortgesetzt wird. Wird vor Aufruf von installiso gechrootet, funktionieren diese Details nicht automatisch, und muss entsprechend dem letzten Abschnitt von 2 oben ggf. manuell nachgeholfen werden. Guenstig ist es, bereits vorher init 2 auszufuehren. Falls auf eine Partition derjenigen Festplatte installiert wird, auf der auch das laufende System installiert ist, ist reboot waehrend der Installation noetig. Andernfalls wird die Partition fuer die Installation vom Kernel und von anderen Programmen wie Kopie/Entpacken oder Redimensionierung des Systemes nicht richtig erkannt und behandelt, sodass die Installation fehlschlaegt. Aber auch trotz umount aller nicht benutzten Partitionen und reboot schlaegt Benutzen oder Redimensionierung der Partition manchmal fehl, oft findet man dann das System korrekt entpackt, aber weiterhin minimal dimensioniert und ohne freiem Platz (resize2fs ging nicht) sodass die Konfigurierung fehlschlug. Hier muss abgewartet werden, dass e2fsprogs verbessert wird und der Kernel um die Funktion erweitert wird die Partitionen unbedingt sofort upzudaten. Allgemein ist ratsam, vor der Installation mind. 20 GB nicht-partitionierten Platz zu haben oder zu machen, sodass schon einmal die bereits vorhandenen Partitionen nicht redimensioniert werden muessen, und Dauer sowie Probleme bei der Installation zu verringern. Um kein minimalisiertes Dateisystem zu enthalten, das nicht konfigurierbar ist und nicht bootet, etwa weil resize nicht funktioniert, wird leerer Platz oder eine Datei /leer hinzugefuegt, die nur Nullen enthaelt und gepackt praktisch keine Groesse braucht (effektiv erst ab naechster Version der .lzma-Datei) Die Installierung ist langsamer als vom Install-DVD, hauptsaechlich weil in init 3 diverse andere Prozesse laufen. Bei vielen laptops sind vga=785 irqpoll als zusaetzliche boot-Parameter noetig Zwischen Linux 2.6.26 bis 2.6.28 wurde die Geraetebezeichnung geaendert, viele Geraete die zuvor /dev/hdX waren, sind nun /dev/sdX. Sind die Versionen des laufenden bzw. des installierten Systemes unterschiedlich, ist es auch in lilo die Bezeichnung der Geraete, und booten schlaegt fehl. Abhilfe: beim ersten booten des installierten Systemes, boot-Partition wie im installierten Kernel bezeichnet, explizit angeben, also zBsp 2.6.26.2 root=/dev/hda1 irqpoll vga=785 , 2.6.32-rc1 root=/dev/sda1 ... Diese und ggf andere Aenderungen sind in /etc/lilo.conf in die Zeilen "append=" hinzuzufuegen, danach lilo ausfuehren. Zuvor ggf geanderte boot-Geraete (zBsp /dev/hda , /dev/hda1) nach /dev kopieren, sie sind u.a. im SYS_Linux-.iso in /boot/initrd.cpio.gz enthalten, sonst Fehlermeldung von lilo dass devices nicht vhd.