Dieser Artikel ist veraltet. Einige Dinge könnten mittlerweile nicht mehr so funktionieren, wie in diesem Artikel beschrieben.
{{ :computer:linux:EEE 701G ArchLinux.jpg?200|EEE 701G mit ArchLinux}}
Auch wenn der 701G von Asus ein älteres Netbook ist (**es war das erste des Netbook-Hypes!**), kann man es durchaus noch mit aktueller Software benutzen.
Das vorinstallierte Xandros Linux richtet sich eher stark an Anfänger und Schüler/Kinder, weswegen das Betriebssystem den Ansprüchen von fortgeschrittenen Benutzern nicht gerecht wird, zu schwer ist es, das Software-Repertoire zu erweitern, der KDE-Desktop gefällt nicht, und, und, und.
Zeit für ein neues Betriebssystem - insbesondere ArchLinux eignet sich für dieses Netbook gut, da es eine ressourcenschonende Distribution ist.
======Installation======
Dieser Artikel bezieht sich auf ArchLinux in der Version '//2009.02//', ältere Installationen sind für den EEE 701G etwas problematischer, da die Treiber für Ethernet und WLAN selbst manuell installiert werden müssen. Allerdings gibt es auch einen speziellen Kernel hierfür. Im internationalen ArchLinux-Forum gibt es darüber einen langen Artikel (siehe Internetverweise).
Bei der Wahl des Installationsmediums gibt es zwei Möglichkeiten - das ISO kann entweder als CD gebrannt oder auf einen USB-Stick ''verbannt'' werden. Ich habe hier einfach ein externes CD-Laufwerk angeschlossen, und beim Booten dieses Laufwerk als Start-Medium ausgewählt (''ESC''-Taste für Boot-Menü drücken).
=====Partionierung=====
Im EEE PC ist eine so genannte //solid-state disc// verbaut. Diese unterscheidet sich von einer herkömmlichen Festplatte insofern, dass eine mechanischen Bauteile, wie Motoren oder Speicherscheiben vorhanden sind - vielmehr ähnelt der Aufbau dieser SSD (//Kurzform//) dem einer Speicherkarte, mit dem Unterschied, dass die Geschwindigkeit und Performance um einiges höher und "besser" ist.
Jedoch ist die Lebenszeit einer SSD, ebenso wie die einer Speicherkarte, beschränkt - sie hat ebenfalls nur eine beschränkte Anzahl an Speicherzugriffen. Sind diese Zugriffe erschöpft, kann die SSD nicht mehr verwendet werden.
Dieser Prozess ist unausweichlich und nicht vermeidbar, jedoch können wir die Zeit, bis dieser "//Tod//" der SSD eintritt, verlängern.
Daher ist es wichtig, entweder kein Journalling-Dateisystem zu verwenden, oder das Journal einzuschränken, oder zu deaktivieren.
**ext2** wäre ein Linux-Dateisystem, ohne Journal-Funktionalität, allerdings auch ohne jegliche Wiederherstellungsoptionen. Stürzt der EEE ab, sind ggf. Daten beschädigt und können im Fehlerfall **nicht** wiederhergestellt werden. Das ist schlecht.
Meines Erachtens nach ist **ext4** wohl die beste Wahl. Das ist zwar ein Journalling-Dateisystem, jedoch kann man dieses einschränken (//dazu kommen wir später!//). ext4 ist derzeit das neueste und jüngste Dateisystem, es ist eine Weiterentwicklung des **ext3**- und **ext2**-Dateisystems. Es bietet höhere Geschwindigkeiten und mehr Datensicherheit.
ext4 bietet sowohl Full- als auch Metadaten-Journalling - die Verwendung eines Metadaten-Journals ist zwar keineswegs so sicher wie ein Full-Journal, ist aber auch viel sicherer als die Verwendung eines alten non-Journal Dateisystems, wie ext2 beispielsweise. Später wird in diesem Artikel die Umstellung von ext4 auf reines Metadaten-Journalling erläutert.
Einen ausführlichen Artikel über Journalling gibt es [[computer:Journaling-Dateisystem|hier]].
Wichtig ist es außerdem, keine Auslagerungsdatei (//**Swap** auch genannt//) anzulegen. Bei einer intelligenten Software-Auswahl ist diese nicht notwendig, ferner schränkt das Verwenden einer Auslagerungsdatei die Lebenszeit der SSD ein, da durch die Prozessdaten-Auslagerung viele Zugriffe stattfinden.
=====Paket-Auswahl=====
Bei der Installation besteht die Möglichkeit einer manuellen Paketauswahl, diese gilt es zu nutzen, da hier unnötige Pakete entfernt können, um Speicherplatz einzusparen. Insbesondere bei Modellen, die nur über wenig Speicher, wie dem 701G, etwa beispielsweise 4 GB verfügen, ist dies sehr wichtig.
Enfernt werden können:
* **acl**
* **dash**
* **jfsutils** (//nur, wenn kein jfs als root-Dateisystem verwendet wird!//)
* **lvm2**
* **mailx**
* **mdadm**
* **pcmciautils**
* **ppp**
* **reiserfsprogs** (//nur, wenn kein reiserfs als root-Dateisystem verwendet wird!//)
* **rp-pppoe**
* **xfsprogs** (//nur, wenn kein xfs als root-Dateisystem verwendet wird!//)
Ferner müssen einige Pakete jedoch auch hinzugefügt werden:
* **netcfg**
* **inetutils**
* **madwifi** und **madwifi-utils**
* **wireless_tools**
* **wlan-ng26-utils**
* **wpa_supplicant**
Die eigentliche Installation der Pakete findet nun statt und sollte binnen weniger Augenblicke geschehen.
======Hardware-Konfiguration======
Während bei vorherigen ArchLinux-Versionen mit einem speziellen Kernel herumexperimentiert werden musste, wird im aktuellen Release von ArchLinux die komplette Hardware des EEE 701G's unterstützt. Auch die drahtlose Netzwerkkarte ist sofort nach der Installation einsatzbereit.
=====Wireless LAN=====
Wurde nicht das Realtek-Paket bei der Installation vergessen, wird die WLAN-Schnittstelle unterstützt und kann sofort konfiguriert werden.
Netzwerkprofile werden in '''/etc/network.d/profiles''' gespeichert, im Unterordner '''examples/''' sind schon einige Beispiele vorhanden, die einfach verwendet werden können um ein eigenes Profil zu erstellen.
# cp /etc/network.d/profiles/example/wireless-wpa /etc/network.d/profiles/zuhause
# nano zuhause
...
# netcfg zuhause
=====Sound=====
Um den Sound zu benutzen muss noch der Soundserver ALSA installiert werden:
# pacman -S alsa-lib alsa-utils
# alsamixer
...
# alsactl store
# /etc/rc.d/alsa restart
In der Regel wird die Karte automatisch konfiguriert und die Lautstärke kann sofort mit dem Mixer konfiguriert werden, ist dies nicht der Fall hilft ein:
# alsaconf
Nach der Einstellung der Lautstärke wird die Konfiguration als Standard-Konfiguration gespeichert und der Daemon neu gestartet.
Töne sollten nun wiedergegeben werden können:
# aplay /usr/share/sounds/alsa/Noise.wav
Damit die Soundumgebung auch beim Booten automatisch geladen wird, ist ein Eintrag in die Daemon-Liste der '///etc/rc.conf//' notwendig:
DAEMONS=(... alsa ...)
Benutzer, die die Soundumgebung nutzen sollen, müssen Mitglied der Gruppe '//audio//' sein:
# gpasswd -a BENUTZERNAME audio
======Software-Installation======
Auf Dauer mit einem Konsolen-System zu arbeiten ist sicherlich nicht jedermanns Sache, daher wird hier noch einiges an Software dazu installiert.
=====System-Updates=====
In aller Regel empfiehlt es sich, alle Updates zu installieren:
# pacman -Syu
Sollte '**pacman**' zuerst aktualisiert werden wollen, so muss dies bejaht werden.
Nach der Installation kommt es manchmal vor, dass weitere Installationsvorgänge fehlschlagen, in einem solchen Fall muss die Datei '///etc/pacman.d/mirrorlist//' überprüft werden, wahrscheinlich ist einfach kein Server ausgewählt worden. Bitte mindestens einen Server in geografischer Nähe aktivieren.
=====X-Server=====
Der X-Server ist für die grafische Ausgabe zuständig, er ist nach der Grundinstallation noch nicht vorhanden und muss nachinstalliert werden:
# pacman -S xorg
Danach fehlen noch einige Eingabe-Treiber (//aus welchen Gründen auch immer!//), ebenso wie der Intel-Grafiktreiber. Sie müssen ebenfalls nachträglich installiert werden:
# pacman -S xf86-input-keyboard xf86-input-mouse xf86-video-intel
====xorg.conf====
Ist der X-Server installiert, muss eine Konfigurationsdatei erstellt werden. X kann die Hardware erkennen und eine simple Konfigurationsdatei erstellen:
# X -configure
Die angelegte Datei '//xorg.conf.new//' muss nun in das Konfigurationsverzeichnis '///etc/X11//' verschoben und anschließend editiert werden:
# mv xorg.conf.new /etc/X11/xorg.conf
# nano /etc/X11/xorg.conf
Folgende Bereiche müssen aktualisiert/modifiziert werden:
====Tastatur====
Section "InputDevice"
Identifier "Keyboard0"
Driver "keyboard"
Option "XkbLayout" "de"
Option "XkbVariant" "nodeadkeys"
Option "XkbModel" "pc105"
EndSection
====Maus/TrackPoint====
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mouse1"
Option "ZAxisMapping" "4 5 6 7"
Option "EmulateWheel" "true"
Option "EmulateWheelButton" "2"
EndSection
====Intel-Grafikkarte====
Section "Device"
Identifier "Card0"
Driver "intel"
VendorName "Intel Corporation"
BoardName "Mobile 915GM/GMS/910GML Express Graphics Controller"
BusID "PCI:0:2:0" #ggf. lspci beachten
EndSection
====TFT-Auflösung====
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
SubSection "Display"
Viewport 0 0
Depth 24
Modes "800x480"
EndSubSection
EndSection
====Fehlerbehebung====
Damit der X-Server überhaupt beim Starten Tastatur und Maus findet, musste ich folgende Optionen im '**ServerFlags**'-Bereich hinzufügen:
Section "ServerFlags"
Option "AutoAddDevices" "false"
Option "AutoEnableDevices" "false"
Option "AllowEmptyInput" "false"
EndSection
=====LXDE-Desktop=====
Nun muss der LXDE-Desktop installiert werden. Kurioserweise installiert pacman derzeit den Fenstermanager openbox nicht automatisch mit. Dieser muss manuell dazu installiert werden, da Fenster ansonsten keine Rähmen haben und auch kein Mauszeiger zur Verfügung steht:
# pacman -S lxde openbox obconf
'**obconf**' ist ein optionales Paket und bietet die Möglichkeit, das Aussehen und Handeln des Fenstermanagers an die eigenen Wünsche anzupassen.
=====Benutzerkonto und .xinitrc=====
Nun sollte ein Benutzerkonto für nicht-administrative Aufgaben angelegt werden:
# adduser
Die Datei '**.xinitrc**' (//grafisches Autostart-Skript//) dieses Benutzers muss angepasst werden, damit LXDE nach dem Einloggen zur Verfügung steht:
#!/bin/sh
exec ck-launch-session startlxde
'**ck-launch-session**' wird hier benötigt, damit später mit DBus/HAL externe Medien, wie Speicherkarten und USB-Sticks, mit normalen Rechten gemoutet werden können.
=====Zusätzliche Dienste=====
Damit Sticks und Karten auch von einem normalen Benutzer gemountet werden können, müssen die Dienste '**portmap**', '**dbus**' und '**hal**' installiert und gestartet werden:
# pacman -S portmap dbus hal gamin
Diese Dienste sollten in der '**/etc/rc.conf**' als Start-Daemons definiert werden:
DAEMONS=(... portmap dbus hal ...)
Der Benutzer muss nun noch zwei Gruppen hinzugefügt werden, damit er Medien mounten darf:
# gpasswd -a BENUTZERNAME optical
# gpasswd -a BENUTZERNAME storage
Für Schreibzugriff auf NTFS-Medien ist noch das NTFS-3G Framework notwendig:
# pacman -S ntfs-3g
Letztendlich muss in der Datei '**/etc/pam.d/login**' noch folgende Zeile eingefügt werden:
session optional pam_ck_connector
=====Herunterfahren, etc...=====
Damit der Benutzer den Rechner auch herunterfahren, neustarten und in den Ruhezustand versetzen kann, muss er Mitglied der Gruppe '**power**' sein:
# gpasswd -a BENUTZERNAME power
Sollte das alleine nicht reichen und der Rechner nicht herunterfahren, wenn der entsprechende Button dazu gedrückt wird, muss die Datei '**/etc/PolicyKit/PolicyKit.conf**' editiert werden. Zwischen den Tags **** und **** müssen folgende Zeilen eingefügt werden:
Nach dem Speichern der Datei und dem Neustart des HAL-Daemons
# /etc/rc.d/hal restart
sollte das Problem nun der Vergangenheit angehören.
=====SLiM=====
Als Login-Manager stehen hier verschiedene Möglichkeiten zur Verfügung, ich habe mich für '**slim**' entschieden, da dieser Manager ein Kompromiss zwischen Optik und Leistung ist:
# pacman -S slim
Die Konfigurationsdatei '**/etc/slim.conf**' kann noch ein wenig angepasst werden:
hidecursor false
...
daemon yes
...
sessions lxde
...
welcome_msg Willkommen!
...
session_msg Sitzung:
...
shutdown_msg Herunterfahren...
reboot_msg Neustart...
...
default_user **ihr Benutzername**
Anschließend empfiehlt es sich, '**slim**' in der '**/etc/rc.conf**' in die Daemon-Liste einzutragen, wenn SLiM automatisch beim Start geladen werden soll:
DAEMONS=(syslog-ng network ... slim)
======Software======
Nun muss lediglich noch die Anwendersoftware installiert werden:
=====Firefox=====
# pacman -S firefox firefox-i18n
=====Thunderbird=====
# pacman -S thunderbird thunderbird-i18n
=====OpenOffice=====
# pacman -S openoffice-de
=====Packer=====
# pacman -S xarchiver unzip zip unrar
=====TrueCrypt=====
# pacman -S truecrypt
Das Modul **fuse** wird benötigt, es wird in der '**/etc/rc.conf**' der Modulliste hinzugefügt:
MODULES=(... fuse)
=====Medienplayer und Codecs=====
# pacman -S vlc libdvdcss xvidcore
# pacman -S gstreamer0.10-bad gstreamer0.10-bad-plugins gstreamer0.10-good gstreamer0.10-good-plugins gstreamer0.10-ugly
# pacman -S gstreamer0.10-ugly-plugins gstreamer0.10-base gstreamer0.10-base-plugins gstreamer0.10-ffmpeg
======Tuning und Power-Ups======
Durch ein wenig Tuning kann man den EEE ein wenig "**entschlacken**" und so die Geschwindigkeit und Lebenszeit erhöhen.
=====ext4-Metajournal=====
ext4 lässt sich durch Abändern eines Eintrags in der '**/etc/fstab**' durchaus zu mehr Performance bewegen:
#UUID=[...] / ext4 defaults 0 1
UUID=[...] / ext4 noatime,barrier=0,nobh,commit=100,nouser_xattr 0 1
Zu einigen Optionen kurz die Erläuterungen:
* '**noatime**' deaktiviert das Speichern von Zeitzugriffsinformationen die benötigt werden können, um auf Linux-Systemen Überschreibungen zu unterbinden.
* '**barrier=0**' beschleunigt das ext4-Medium enorm
* '**commit**' definiert den Zeitintervall, nach welchem das Journal auf die Festplatte geschrieben wird, je länger diese Zeit ist, desto länger ist die Lebensdauer der SSD, allerdings sollte die Zeit auch nicht zu lange sein, da im Fehlerfall nach dem Neustart sonst Daten inkonsistent sein könnten. Die schlimmste Folge wäre ein defektes Dateisystem.
* '**nouser_xattr**' deaktiviert //erweiterte Benutzer-Attribute//, welche auf einem Netbook wohl in den seltesten Fällen benutzt werden.
=====Daemons=====
Je nachdem wie man das Notebook benutzt, kann man den ein oder anderen Daemon in der '**/etc/rc.conf**' deaktivieren:
* '**network**' - Netzwerkkonfiguration aus der '**/etc/rc.conf**'
* '**netfs**' - //network file system//, nfs.
* '**crond**' - Wenn keine geplanten Tasks benötigt werden
* '**syslog-ng**' - Wenn keine Logfiles benötigt werden - **Achtung!**, bei Fehlerfällen kann so nicht mehr rekonstruiert werden
=====Swappiness=====
Wenn der Arbeitsspeicher des Notebooks groß genug ist, kann man die '**Swappiness**' auf '**0**' setzen, die Swap (//Auslagerungsdatei//) wird dann nur verwendet, wenn der RAM zu Überlaufen droht. Ansonsten nicht. Das bringt mehr Speed ein, da der RAM um einiges schneller ist, als die Festplatte.
Hierfür muss lediglich die Datei '**/etc/sysctl.conf**' um folgende Zeile erweitert werden:
vm.swappiness=0
=====Pacman-Cache=====
Nach der wilden Installationsorgie empfiehlt es sich, den Pacman-Cache zu löschen. Dort befinden sich noch viele temporäre Dateien, die unnötigen Speicherplatz belegen:
# pacman -Scc
Puffer-Verzeichnis: /var/cache/pacman/pkg/
Möchten Sie ALLE Pakete aus dem Puffer entfernen? [j/N] j
Entferne alle Pakete aus dem Puffer... Fertig.
Datenbank-Verzeichnis: /var/lib/pacman/
Möchten Sie ungenutzte Repositorien entfernen? [J/n] j
Datenbank-Verzeichnis wurde aufgeräumt
======Internetverweise======
Weitere Verweise im Internet, passend zu diesem Thema:
* Artikel im internationalen ArchLinux-Forum bezüglich der Installation auf dem EEE-PC: http://wiki.archlinux.org/index.php/Installing_Arch_Linux_on_the_Asus_EEE_PC
* SSD-Tuning mit ext4: http://blog.loxal.net/2009/04/tuning-ext4-for-performance-with.html