KVM ab USB-Stick in 30 Sekunden
Server-Virtualisierung für die Hosentasche direkt ab USB-Stick
Automatisierung
Der Installer von ArchivistaVM wurde in Perl (objektorientiert) realisiert. Das Anpassen des Setup-Programmes dürfte für einigermassen kundige Perl-Programmierer keine grossen Schwierigkeiten darstellen. Bevor Sie aber daran gehen, die initrd.img-Datei und das Setup-Programm install.pl selber zu editieren, sei auf die bereits vorhandenen Start-Optionen verwiesen.
ArchivistaVM arbeitet beim Booten mit Syslinux bzw. ab CD-ROM mit Isolinux. Dazu existieren die beiden Dateien syslinux.cfg sowie isolinux.cfg direkt im Hauptverzeichnis der initrd.img. Diese Datei finden Sie in der ersten Partition des USB-Sticks. Betrachten wir zunächst einmal diese mitgelieferten Dateien:
DEFAULT linux TIMEOUT 100 PROMPT 1 DISPLAY boot.msg label linux kernel vmlinuz APPEND initrd=initrd.img quiet ramdisk_size=81920 label ram kernel vmlinuz APPEND initrd=initrd.img quiet ram ramdisk_size=2097152 label ram4g kernel vmlinuz APPEND initrd=initrd.img quiet ram ramdisk_size=4194304 label debug kernel vmlinuz APPEND initrd=initrd.img ramdisk_size=81920 label box244 kernel vmlinuz APPEND initrd=initrd.img quiet ram ramdisk_size=4194304 keyboard.de_CH lang.de auto ip.192.168.2.244 submask.255.255.255.0 gw.192.168.2.1 dns.192.168.2.1 ramdisk label box245 kernel vmlinuz APPEND initrd=initrd.img quiet ram ramdisk_size=4194304 keyboard.de_CH lang.de auto ip.192.168.2.245 submask.255.255.255.0 gw.192.168.2.1 dns.192.168.2.1 label box246 kernel vmlinuz APPEND initrd=initrd.img quiet ram ramdisk_size=4194304 keyboard.de_CH lang.de auto ip.192.168.0.246 submask.255.255.255.0 gw.192.168.0.2 dns.192.168.0.2 ramdisk label box247 kernel vmlinuz APPEND initrd=initrd.img quiet ram ramdisk_size=4194304 keyboard.de_CH lang.de auto ip.192.168.0.247 submask.255.255.255.0 gw.192.168.0.2 dns.192.168.0.2
Nun einige Informationen zu dieser Datei. Zunächst wird beim Booten zehn Sekunden gewartet, bis der Start erfolgt. Dies ist etwas missverständlich, aber gerechnet wird in Zehntel-Sekunden. Wenn Sie eine Minute warten möchten, dann wäre TIMEOUT auf 600 zu setzen. Mit DEFAULT legen Sie die Standard-Startparameter fest. Wenn Sie z.B. möchten, dass immer im RAM-basierten Modus gestartet wird, tragen Sie bei Default ram
ein.
Spannend sind weiter die Sets box244, box245, box246 sowie box247. Sie finden dort vier automatisierte Startups, welche das System automatisiert hochfahren. Zentral ist dabei auto
. Damit wird erreicht, dass das Setup-Programm keine Fragen mehr stellt. Und in diesem Modus (kombiniert mit einem Setup anlaog zu den Sets box244 bis box247) ist ein Server in 30 Sekunden ab einem einigermassen schnellen USB2-Stick startklar.
Es gibt weitere Parameter, diese finden sich direkt im Setup-Programm install.pl unter der Funktion
.Telnet-Zugriff bei Problemen
Am Ende des Setups wird ein SSH-Server gestartet, sodass auf ArchivistaVM problemlos auf der Konsole zugegriffen werden kann. Was aber, wenn das System vor dem Starten des SSH-Servers hängenbleibt? In einem solchen Falle kann mit ram
das Setup-Programm gestartet werden. Anstatt den Anweisungen danach Folge zu leisten, wird das Programm abgebrochen. Sie gelangen zur Konsole und können nun Netzwerkkarte und einen telnet-Server einrichten. Dies geht so:
ifconfig eth0 192.168.0.250 route add default gw 192.168.0.2 telnetd -l /bin/login
Danach können Sie von einem entfernten Rechner aus mit telnet auf die Konsole zugreifen. Beim Anmelden ist das Passwort archivista
zu verwenden.
Anpassungen an initrd.img
In der Datei initrd.img befindet sich das gesamte Mini-Linux. Beim Hochfahren des Systems wird zunächst dieses Mini-System eingerichtet, ehe über den Stick (bzw. CD-ROM) auf system.os zugegriffen wird. Die Datei system.os enthält ein komplettes Debian-System bzw. ArchivistaVM. Bein Hochfahren des Servers wird in einem zweiten Schritt dieses System im RAM eingerichtet, und zwar äusserst speditiv. Pro 1 GByte an Software sind etwa 10 Sekunden Zeit notwendig. Beide Dateien können Sie beliebig anpassen. Bei initrd.img verwenden Sie für das Auspacken:
zcat initrd.img | cpio -iv
Dabei wird das gesamte System im aktuellen Verzeichnis ausgepackt. Sie können nun beliebige Änderungen am System vornehmen. Für das Neupacken der Datei verwenden Sie:
find . | cpio -o -H newc | gzip -c >../isolinux/initrd.img
Anpassungen an system.os
In der Datei system.os befindet sich das gesamte Linux-System von ArchivistaVM. Dazu ist zu sagen, dass bei ArchivistaVM nicht Debian- um Debian-Paket installiert wird; dieser Vorgang würde viel zu lange dauern. Vielmehr wird das gesamte System mit unsquashfs
entpackt.
unsquashfs -dest /os /tmp/cd/system.os
Den gegenteiligen Vorgang erreichen Sie mit:
mksquashfs / /inst/system.os -noappend -e /inst /proc /sys