Erkenntnisse bei 16 MB RAM und weniger

Er ist nicht vergessen, nur etwas ruhiger ist es um ihn geworden. In der Zwischenzeit hat er einen neuen Platz neben meinem Router gefunden, um nun direkt mit Hilfe einer PCMCIA zu LAN-Karte ins Netz zu gehen. Ab und an probiere ich ein paar Programme und Einstellungen aus um herauszufinden, was tatsächlich möglich und vor allem sinnvoll ist bei einem 16 Jahre alten, Toshiba 220cs, Laptop. Zwar ist 16 MB RAM weit davon entfernt ein komfortables Polster zu sein, doch verhalten sich einige Konsolenprogramme nicht anders als auf einem Core-Duo-Rechner.
Nach wie vor benutze ich Slitaz in der Minimalinstallation und das winzige KolibriOS als Dual-Boot System. Zwischendurch hatte ich Slitaz zwar auch schon wieder von Grund auf neu aufgespielt, aber am Ende rettet das Image vom Jahresanfang immer noch den Tag.
Wenn ihr zu den Leuten gehört, die elektronische Geräte bei längerer Nichtbenutzung komplett vom Stromnetz trennen, solltet ihr nach dem Wiederanfahren unbedingt einen Blick in das BIOS werfen. Bei Problemen mit der PCMCIA Karte kann es passiert sein, dass die ausgelaugte CMOS-Batterie nicht mehr genug Energie zur Verfügung stellt, um die richtigen Einstellungen zu speichern.
RAM. Zwar rede ich immer von 16 MB RAM, htop zeigt mir aber lediglich nur 10 MB an. Vermutlich wird Speicher durch eingebaute Hardware reserviert, weswegen am Ende für die tatsächliche Ausführung weniger RAM zur Verfügung steht. Htop ist aber nicht das einzige Programm, das diesen Wert anzeigt. Auch KolibriOS signalisiert hier den gleichen Wert. Trotzdem ist es erstaunlich, was ein minimales Slitaz an Arbeitsspeicher benötigt und dabei dennoch alle Hardwaretreiber geladen hat.

WLAN. Das WLAN in Betrieb zu nehmen, war auf dem 220cs noch nie ein Problem. Obwohl 1996 die meisten Laptops noch nicht bereit waren für die mobilen Ansprüche des Internetzeitalters (mit dem 220cs kann man sich Hanteltraining sparen), ist es ohne weiteres möglich seine PCMCIA-Karte mit WPA in Betrieb zu nehmen. Leider nimmt diese drahtlose Funktion einige MB in Anspruch. Wenn man also den Rechner sowieso nur zur Hause für einen bestimmten Zweck nutzen möchte, ist eine PCMCIA zu LAN Karte vorzuziehen. Die beiden von 3com erfüllen nicht nur ihren Zweck, sondern haben auch Freie Linuxtreiber.
Rtorrent. Keine Frage ist Rtorrent die bevorzugte Lösung, wenn man BitTorrent von der Konsole aus bedienen möchte. Mit dem geringen Verbrauch an Systemressourcen und dem intuitiven Ncurses-Interface kann man nicht viel falsch machen. Obwohl RAM hier ein wichtiger Flaschenhals ist, sollte man I/O nicht unterschätzen. So alte Laptops haben meist keine sehr schnelle Festplatte, USB 1.0 war zu dieser Zeit noch eine Seltenheit und versucht man gleichzeitig mehrere Torrents über WLAN zu verteilen, hat man die besten Voraussetzungen geschaffen, um dem System die Grenzen aufzuzeigen. Der Umstieg auf eine LAN-Verbindung hat bei mir zwar deutlich geholfen, dennoch muss man die Bandbreite bei der Übertragung drosseln, damit der Laptop weiterhin bedienbar bleibt. In Rtorrent sollte deswegen die Anzahl der maximalen Peers begrenzt werden und gleichzeitig für den Download eine Grenze gezogen werden. Global 300 kb/s war ein vernünftiger Zahlenwert.
Musik. Nachdem ich die richtigen Audioeinstellungen gefunden hatte, ließ sich ohne weiteres Musik mit cmus abspielen, dass ich mit Hilfe von tazpkg von einem Debian- in ein Slitazpaket umgewandelt habe. Ob die abgespielten Klänge aber als Hörgenuß bezeichnet werden dürfen, lasse ich an dieser Stelle mal offen. Hier muss man wohl die Schuld bei der Soundkarte suchen. Lauter Krach immer, Äolsharfe gleiche Klänge eher nein.
SSH. Normalerweise benutze ich SSH nicht nur zur Fernadministration, sondern auch zum Einhängen entfernter Dateisysteme mit sshfs. Diese Methode scheint bei dem Toshiba 220cs ziemlich instabil zu sein, weswegen möglicherweise der Versuch lohnt Dateien mit Hilfe von NFS freizugeben. Auf jeden Fall ist Dropbear der geeignete Ersatz für OpenSSH, wenn die Ressourcen begrenzt sind.
Lighttpd. Ich erwähnte schon bei der Vorstellung von Ideen, was man mit alten Computern machen kann, dass ein hauseigener Webserver unter Umständen ein guter Verwendungszweck für einen alten Rechner sein kann. Als leichtgewichtige Variante bietet sich hier Lighttpd an, der sich bei Slitaz problemlos installieren und mit /etc/init.d/lighttpd start auch sofort in Betrieb nehmen lässt. Dauerhaft wird der Dienst in der /etc/rcS.conf unter RUN_DAEMONS eingetragen. Danach nur noch mit dem Browser auf die lokale Adresse surfen und man kann sich von den Fähigkeiten von Lighttpd überzeugen.

Prinzipiell funktionieren viele textbasierte Programme wie auf einem brandneuen Modell. Egal ob es der IRC Chat ist, der Terminplaner für die Konsole oder das E-Mail-Programm. Wunder darf man aber nicht erwarten. Insbesondere lassen sich nicht alle Programme parallel ausführen und umfangreiche Editoren wie Vim verhalten sich zeitweise recht träge.
Für die Zukunft stehen noch FreeDOS und Crux auf dem Testplan. Ersteres um herauszufinden, welche Möglichkeiten ein weiteres Nicht-Linux, aber Freies Betriebssystem, bietet und letzteres, weil es einen speziellen i585-Port zur Verfügung stellt und dazu noch äußerst anpassbar ist.

Hardware für den Internetzugang mit freien Linuxtreibern

Als kurze Übersicht, hier sind die im letzten Beitrag erwähnten PCMCIA-Karten, die 100 % freie Linuxtreiber haben und sofort funktionieren. Empfehlenswert.

ASUS WL-107G

PCMCIA WLAN Karte von ASUS mit Ralink Chipsatz. Linuxtreiber: rt2500pci
Um die Fehlermeldung

phy0 -> rt2500pci_set_device_state: Error - Device failed to enter state 1 (-16)

zu unterdrücken, ist es notwendig z.B. in der Datei /etc/rc.local folgenden Befehl einzutragen.

iwconfig wlan0 power off


3Com Megahertz 3CCFE574BT

PCMCIA zu LAN Karte von 3Com. Linuxtreiber: 3c574_cs

3Com Megahertz 3CCFE575CT

PCMCIA zu LAN Karte von 3Com. Linuxtreiber: 3c59x

Für die letzten beiden Karten ist noch ein zusätzlicher Adapter notwendig, mit dem sich dann ein RJ45-Stecker anschließen lässt. Besonders praktisch für ältere Hardware, die fast immer auch über einen PCMCIA-Slot verfügt und sich damit problemlos in jedes Heimnetzwerk einbinden lässt.

WLAN wg511t Atheros Chipsatz Konfiguration unter Debian Etch

Nachdem ich mich bei meinem Dell-Inspiron-4000-Laptop für Debian Etch mit Xfce-Desktop entschieden hatte, musste noch die WLAN-Karte zum Laufen gebracht werden. Da der Madwifi-Treiber für den Atheros-Chipsatz bei WLAN-Karten leider noch unfrei ist, muss man unter Debian diesen noch selbst einrichten, sprich manuell aus den Quellen kompilieren. Zum Glück ist es sehr einfach geworden das mit Debian umzusetzen. Wie es geht erfahrt ihr hier.
Um die Madwifi-Treiber zu kompilieren benötigt man zuerst einmal die Quellpakete. Da Madwifi ein unfreier Treiber ist muss zuerst die /etc/apt/sources.list geändert werden. Dazu wechselt ihr entweder auf die Konsole mit z.B. STRG+ALT+F2 oder wählt unter Xfce das Terminal Fenster aus. Mit
vim /etc/apt/sources.list
ändert man die Apt-Datei welche für den Zugriff auf die Download Server zuständig ist.
Mit der Taste I geht es in den Einfügen-Modus. Für die stabile Version Etch könnt ihr nun entweder die folgenden beiden Zeilen in sources.list kopieren oder ihr fügt an eure entsprechenden Einträge einfach contrib non-free an.

# Stable
deb ftp://ftp.de.debian.org/debian stable main contrib non-free
deb-src ftp://ftp.de.debian.org/debian stable main contrib non-free

Als Benutzer root müssen lediglich per Apt ein paar benötigte Programme und Werkzeuge installiert werden. Mit dem Befehl m-a wird der module-assistant gestartet, der automatisch die Paketquellen herunterlädt, diese entpackt, kompiliert, ein Debian Paket daraus erzeugt und dieses schließlich installiert. Die magischen Zeilen lauten:

  • apt-get update
  • apt-get install madwifi-source
  • apt-get install madwifi-tools
  • m-a prepare
  • m-a a-i madwifi


Um den Treiber zu aktivieren muss das Modul noch mit

modprobe ath_pci

geladen werden. Ein dmesg | grep ath sollte dann eine ähnliche Ausgabe erzeugen wie

ath_hal: module license 'Proprietary' taints kernel.
ath_hal: 0.9.18.0 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413)
ath_rate_sample: 1.2 (0.9.3)
ath_pci: 0.9.4.5 (0.9.3)

Mit wlanconfig ath0 list scan lässt sich später die Funknetzumgebung im Terminal anzeigen. Alternativ gibt auch iwlist ath0 scan einiges an Informationen aus.
Für die Netzwerkkonfiguration bietet sich der NetworkManager als grafische Lösung an oder WifiRadar. Wenn es damit Probleme gibt, ist das manuelle Eintragen der entsprechenden Daten aber auch kein Problem. Für den sicheren Betrieb mit WPA muss auf jeden Fall noch das Paket Wpasupplicant installiert werden.
In der /etc/network/interfaces dann einen Eintrag wie den folgenden mit einem Editor eurer Wahl erstellen.

# wlan
allow-hotplug ath0
iface ath0 inet dhcp
pre-up /sbin/wpa_supplicant -D madwifi -i ath0 -c /etc/wpa_supplicant.conf -B

Mit der letzten Zeile wird die Funkübertragung mit wpasupplicant verschlüsselt. Dabei greift das Programm auf die Datei /etc/wpa_supplicant.conf zu. Diese Datei muss erst erstellt werden und sollte anschließend folgende Informationen enthalten.

network={
ssid="MeineSSID"
psk ="MeingeheimesPasswort"
#psk = MeingeheimesPasswort in Hex-Schreibweise
key_mgmt=WPA-PSK
pairwise=TKIP
group=TKIP
proto=WPA
auth_alg=OPEN
}

Das Passwort kann einmal im Klartext stehen oder in Hexadezimalschreibweise eingetragen werden. Manche Router/Accesspoints bieten eine Möglichkeit das normale Passwort in die andere Schreibweise umzuwandeln.
Mit ifup ath0 wird anschließend das Interface konfiguriert und man sollte nun per DHCP auch eine IP-Adresse erhalten. Falls alles fehlschlägt gibt es auf www.ubuntuusers.de schon einige gute Einträge zu diesem Thema. Auf der offiziellen englischsprachigen Website des Madwifi-Projektes, kann man das oben geschriebene auch noch einmal nachvollziehen.