Ein Rückblick: eine Woche Ubuntu-Netbook-Remix

Ich hab jetzt seit einer Woche ein Netbook im Einsatz. Es ist also Zeit für einen kleinen Rückblick. Erstes Fazit: arbeiten auf der Seashell macht Spaß. Besonders da es momentan noch wirklich Arbeit ist. Es braucht eine weile bis man sich Ubuntu so angepasst hat, das es so läuft wie man es wirklich will. Besonders die Optimierung auf „Sparsamkeit“ ist noch (Konsolen) Arbeit. Daneben lassen sich hervorragend Texte schreiben, Mails lesen und im Internet surfen.

Neben der Tastatur und dem Display überzeugt vor allem der Netbook-Remix selber. Diesen muss man in zwei Bereiche teilen: Kernel/Unterbau und GUI.
Der Kernel im Netbook-Remix samt die ihm umgebene Konfiguration aus Daemons ist nicht „optimal“. Was aber nicht weiter verwundert, es zwar ein optimierter aber immer noch „allgemeingültigen“ Kernel eingesetzt. Auch der Xserver läd noch alle Module/Treiber um eine Nvidia, ATI oder sonst irgendeine Karte zu befeuern. Dies ist dem Umstand geschuldet, das es sich beim Netbook Remix um eine „große“ Distribution handelt, keine optimierte Spartenvariante. Das ließ sich aber schnell ändern. Mit „wenigen“ Handgriffen war der „allgemeine“ Kernel gegen einen EeePC-Kernel ausgetauscht, der ist nicht nur kleiner sondern spart auch Strom. Auch sonst ließ sich der Unterbau mittels aptitude und Config-Scriptes sehr komfortabel an die Bedürfnisse anpassen. Momentan hab ich das Gefühl eine Betriebssystem zu haben, was sich „fast“ perfekt an die vorhanden Hardware angepasst hat. Noch ein zwei Ecken weg schleifen (Softkey zum laufen bringen) und ich bin wunschlos glücklich.

Bei der Oberfläche überlebte ich einige Überraschungen. Ich war mit der Einstellung „ran gegangen“ Ubuntu zu installieren (da es noch kein Xubuntu Netbook-Remix gibt) und das enthaltene Gnome schnellstmögliche runter zuschmeißen und gegen Xfce zu tauschen. Da dies ja ressourcensparender ist und mehr „KDE-like“. „Gnome ist halt hässlich“. Naja es kam alles ein wenig anders. Beim Zwangsboot von Windows merkte ich das erste mal, dass eine Standard Desktopoberfläche auf einen 10“-Display alles andere als optimal ist. Die Fensterleiste zu breit, dass „Windowing“ zu platz verschwendend. Von 600 Pixeln (vertikal) gehen alleine schon knapp 100 Pixel für „Startleiste“ und „Fensterrahmen“ drauf. Nach der Installation von Ubuntu war ich erstmal schockiert von der Farbgebung. Ich mochte dieses grau in braun noch nie… Durch das Fehlen der Netzwerkfunktionalität war ich gezwungen erstmal mit dieser Oberfläche zu arbeiten, wenn auch nur in der Konsole. Nach den ersten Stunden (2-3) hatte ich Netzwerk und machte meine Drohung war. Einmal den Befehl ausgeführt, der mir GNOME runter schmeißt und XFCE draufhaut. Ohne Seil und doppelten Boden. Weg mit dem braunen Brei, her mit der … Desktopoberfläche… Nachdem ich die erste Stunde mit XFCE gearbeitet hatte (Einrichten, gestalten und auf Energiesparen trimmen) stellte ich fest, dass sich mein erster Eindruck bestätigte. Irgendwie fühlte sich das alles unrund an. Das ständige überlagern von Fenstern, das schieben und anordnen war ein Krampf. Ich verwarf das alles und installierte Ubuntu nochmal neu. Nachdem ich mich mit den Braun angefreundet hatte (mittlerweile empfinde ich es sogar als angenehm) stellten sich die Vorteile des Oberflächendesign noch stärker heraus. Bis auf ein paar nicht angepasste Dialoge (oder die Möglichkeit zu große Dialoge zu scrollen) wirkt alles aus einem Guss und aufeinander angepasst. Sogar mein Lieblingsbrowser lässt sich mit Skin wunderbar in die Oberfläche integrieren. Als Zentrale Anlaufstelle habe ich den Gnome-Netbook-Launcher wirklich ins Herz geschlossen. Anfangs wirkte das Ding überflüssig wie ein Kropf, mittlerweile findee ich das „OnScreen“Menüunervig.. Bei der kleinen Auflösung hat man oft Überblendungen oder „aufploppen“ an stellen wo man das Menü nicht erwartet. Wenn ich raus gefunden hab wie ich den Launcher auf Tastendruck einblende verschwindet das Menü endgültig…

Seashell – Kernel optimieren und LAN

Adam McDaniel bietet einen speziell an den EeePC (oder andere Netbooks) angepassten Kernel für Ubuntu an. Der ist zwar aktuell hinter dem Ubuntu-Kernel hinterher (2.6.28-13 gegen 2.6.28-12) dafür ist er aber um einiges schlanker und „schneller“. Wobei der Leistungszuwachs unter den „alten“ EeePC wohl größer ist. Ich betreibe meine SeaShell dennoch mit dem neuen Kernel, da der Kernel ungefähr 0.5 bis 1 Watt weniger Strom verbraucht (laut Powertop) und damit gut 30 min längere Akkulaufzeit bietet.

Um den Kernel zu installieren muss man erstmal die neuen quellen über die /etc/apt/source.list einbinden.

deb http://www.array.org/ubuntu jaunty main
deb-src http://www.array.org/ubuntu jaunty main

Anschließend den zugeörigen PublicKey herunterladen und ein Quellenupdate durchführen.

wget http://www.array.org/ubuntu/array-apt-key.asc
sudo apt-key add array-apt-key.asc
sudo apt-get update

Ist das erledigt, installiert man sich den optimierten Kernel

sudo apt-get install linux-netbook-eeepc
sudo apt-get install linux-backports-modules-jaunty-netbook-eeepc
sudo apt-get install linux-headers-2.6.28-12-netbook-eeepc

Die letzte Zeile kann man sich sparen, wenn man „nur“ den gleichen zustand herstellen will wie bei der „normalen“ Ubuntu installation. WIll man hingegen noch den LAN Treiber installieren braucht man die Header Files.

Den Treiber für die Gigabit-Ethernet-Karte gibt es bei Atheros oder direkt bei mir. Einmal entpackt beginnt der berühmte aber leicht abgewandelte Linux-Dreisatzt.

make
sudo make install
sudo insmod atl1e.ko

Danach funktionierts auch mit der Lan-Karte.

1008HA – Sound zu leise

Nach der Standartinstallation des NetBook-Remix auf der SeaShell wird man schnell feststellen, dass der Sound extrem leise daher kommt, obwohl unter windows der „Sound“ während der Einrichtung nerfig laut war, das muss man leider über sich ergehen lassen.

Leider lässt sich dem problem mit GUI-Boardmitteln nicht wirklich bei kommen. Da man aber die Console bei der Seashell durchaus gewöhnt ist/sein muss reicht ein aufruf des Alsamixers in der Console…

alsamixer

dort den zweiten Kanal hochdrehen (Anschlag) und anschließend die Einstellungen speichern

sudo alsactl store

und schon klappt es mit dem Sound 🙂

WLAN unter Ubuntu NetBook Remix auf der SeaShell zum laufen bringen

Unter der aktuellen Version des NetBook-Remixes ist die Seashell nicht sinnvol zum Einsatzt zu bringen, weder LAN noch WLan sind nutzbar. Um diesen Umstand zu lösen bedarf es eines Updates. Die kann man über folgenden Befehl bewerkstelligen.

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install linux-backports-modules-jaunty

wohl dem der eine externe USB LAN/WLAN-Karte hat, wie zb bei „where’s the [any] key“.

Leider dürften die meisten käufer wie ich erstmal etwas verduzt drein schauen. Das die WLAN Karte nicht nutzbar war, damit rechnet man, das eine einfache LAN-Karte nicht nutzbar ist, das hat man unter Linux schon lange nicht mehr erlebt.

Nach einer kleinen Suche im Debian-Handbuch war die Lösung aber „schnell“ parat. Zu finden hier: Debian Handbuch

Hier der Ablauf:

Als erstes ein Medium der Wahl, am besten USB-Stick oder SD-Karte, formatieren und mit der folgenden Ordnerstruktur vorbereiten (ich hab das Medium dabei unter /media/Disk eingebunden):

/media/Disk/
  archives/
     partial/
  lists/
     partial/

danach inter /media/Disk/ eine Datei mit dem namen apt.conf anlegen (kann auch anders heißen) und mit folgendem inhalt füllen:

APT
      {
        Architecture "i386";
        Get::Download-Only "true";
      };

      Dir
      {
        State "/media/Disk/";
        State::status "status";
        Cache::archives "/media/Disk/archives/";
        Etc "/media/Disk/";
      };

Nun (auf dem EeePC) das medium mounten (wenn nicht schon geschehen) und die Datei /var/lib/dpkg/status kopieren

cp /var/lib/dpkg/status /media/Disk/

Nun das Medium auf den Rechner mit Internet Mounten und die /etc/apt/sources.list kopieren.

cp /etc/apt/sources.list /media/Disk/

nun „apt“ temporär „umbiegen“ und „updaten“:

#auf dem "download"-Rechner braucht es keine root rechte
export APT_CONFIG="/media/Disk/apt.conf"
apt-get update
apt-get dist-upgrade
apt-get install linux-backports-modules-jaunty

Nun warten bis die dateien auf das Trägermedium geschrieben wurden, dann am EeePC wieder mounten und dort updaten.

#kurzeitig eine root umgebung besorgen, erleichtert das ganze...
sudo -s
export APT_CONFIG="/media/Disk/apt.conf"
apt-get check
apt-get --no-d -o dir::etc::status=/var/lib/dpkg/status dist-upgrade
apt-get --no-d -o dir::etc::status=/var/lib/dpkg/status install linux-backports-modules-jaunty

anschließend neu starten und das WLan in Betrieb nehmen.

Seashell und Ubuntu NetBook Remix

ASUS hat mit dem ersten EeePC für Furore gesorgt weil dieser ohne ein Windows daher kam. Ja man konnte nicht mal eins installieren. Dieser neue EeePC ist „voll“ Windows-tauglich, so heißt es zu mindestens. Ausgeliefert wird er mit einer in vier Partitionen geteilten Platte samt vorinstallierten Windows XP.

WARNUNG: Die Linuxer unter euch, die sofort alles löschen und daraus ein oder mehrere EXT/Reiser Partitionen machen wollen, sollten hier innehalten. ASUS liefert BIOS Updates aus (die wichtig sind), welche nur von Windows aus zu installieren sind. Ihr braucht also eine Wartungspartition. Ich für meinen Teil hab eine 10GB XP partition und 150 GB EXT3.

Zudem läuft OOTB weder LAN noch WLAN mit Ubuntu. Damit fällt der Netzboott/NetInstall (PXE) ins Wasser. Zwar kann das BIOS via PXE booten, das aktuelle Jaunty Image kann jedoch die LAN-Karte nicht ermitteln und bricht ab. Einer Installation über USB Stick/SD-Karte steht aber nix im weg (NetbookRemix). Es Bedarf aber in jedem Fall einen zweiten Rechner mit funktionierendem Internetzugang und am besten apt-get. Denn man muss das erste Update ohne Internet fahren und erst danach bekommt man die WLan Karte (Artheros) ans laufen.

Hier die Zusammenfassung:

[OOTB funktional Ubuntu 9.04 Jaunty (NetbookRemix)]

Suspend to RAM
Suspend to Disk
Bluetooth
Sound
WebCam
Hintergrundbeleuchtung (Regelung)
Tastatur/Maus

[OOTB nicht funktional Ubuntu 9.04 Jaunty (NetbookRemix)]

LAN
WLAN
Alle Softkey haben keine Funktion (auch die um die WLan/BT verindung abzuschalten)
Sound zu leise (was sich aber ohne weiteres beheben lässt)

Die Akkulaufzeit beträgt rund 4 Stunden, wenn man es mittels powertop und ein paar Skriptes optimiert schafft man ohne Probleme die 6 Stunden.

Mein neues Spielzeug: ASUS EeePC 1008HA

Ich hab mir ein neues Spielzeug gegönnt. Einen EeePC 1008HA. Das neuste Modell und „Königsklasse“ von ASUS unter den (billig) Netbooks. Ich hab mich für dieses Modell entschieden weil der Hersteller mit seiner bisherigen Politik bewiesen hat, dass man auch auch Linux erfolgreich unterstützen kann. Ob mit den Ultra-Schlanken QuickBoot-Linux für ihre Motherboards oder dem ersten EeePC selber, eine Linux-Only Maschine.

Der 1008HA, Codename Seeshell basiert auf einer stromsparenden Intel Atom Plattform, wie alle anderen Modelle in der (Preis)Kategorie auch. Nur in der Ausstattung unterscheiden sich die Geräte geringfügig.

Außer einem GSM/HSDPA Modem ist bei diesem Modell alles mit an Bord was man für moderne Kommunikation so braucht. Bluetooth, 208.11 (B G) N(Draft) und (überraschenderweise) 10/100 LAN. Bestückt ist das Board mit einem 1GB RAM (kann auf maximal 2GB ausgebaut werden). Die Festplatte ist leider eine 160GB Platte „alter“ Bauart, keine SSD. Mit SSDs lassen sich noch keine Größen erreichen die eine „Windows“ Plakette ermöglichen (zu mindestens nicht bezahlbar). Leider bleibt das nicht das einzige Ärgernis mit der Ergebenheit an Redmond.

Positiv hinzu kommt das Design der „Muschel“. Flach wie selbige. Der LAN-Port ist breiter als das Gehäuse, was über eine findige Klappe realisiert wird.. Der Anschluss für einen externen Monitor ist an der Unterseite versteckt und alle weiteren Anschlüsse über Blenden unsichtbar gemacht. Sehr schick das ganze. Besonders in schwarz (mit blauen LEDs) sieht das ganze Edel aus… Bis auf diese scheiß Logos… Alle Aufkleber lassen sich rückstandslos entfernen, nur bei dem Atom und Windowslogo muss man mit Alkohol loslegen. Minuspunkts.

Gengretypisch aber dennoch beschissen ist das verspiegelte 10“ Display, in praller Sonne wird arbeiten so unmöglich. Die 10“ machen sich jedoch positiv bemerkbar. Man hat wesentlich mehr Übersicht als bei den Vorgängermodellen. Positiv wirkt sich das auch auf die Größe der Tastatur aus. Hier hat sich ASUS nicht lumpen lassen, Die Tastatur ist das eigendliche Highlight des 1008HA. Guter Anschlagpunkt und Haptik und auch die Größe der „Sondertasten“ (TAB, Enter, Shift) ist so, dass man sich als Vielschreiber nicht die Finger bricht. Damit kann man auch mal „geschwind“ ein paar Zeilen Sourcecode hacken…

Trotz der „Größe“ fällt das Gewicht mit 1.1KG angenehm gering aus. Das ist ein eindeutiger „immer dabei“ Faktor.

Wie sich das Teil in der Praxis schlägt folgt in den nächsten Artikeln.

Flash und „mehrere“ Soundkarten

„So bist du nicht willig….“ das waren die ersten gedanken, die ich hatte als Flash (mal wieder) unter Linux rumgezickt hat. Ich hab zwei Soundkarten im system, ist ganz praktisch eine für die Musik/Sound (5.1) und eine fürs VoiceChatten.

Letztes betreibe ich noch nicht unter linux, da es ventrilo noch nicht unter linux gibt (wird sich aber bald ändern…)

Nunja Flash bereitete mir mal wieder Probleme, so richtig und diesmal half auch kein

asoundconf list
asoundconf set-default-card 

da ich die Soundkarte im bios nicht abschalten will/kann brauchte ich einen ähnlich brutalen weg… nunja man kann durchaus auch das laden eines treibers unterdrücken (oder gleich den kernel ohne treibersupport neu bauen…)

#die geladen soundmodule auslesen
less /proc/asound/modules 
#mit dem editor der wahl das laden des treibers unterdrücken...
sudo nano /etc/modprobe.d/blacklist-oss.conf
sudo nano /etc/modprobe.d/blacklist.conf

das ist natürlich eine krücke, für das Soundsubsystem ist es nun so als ob die karte nicht existieren würde. Sobald ich unter linux die zweite karte nutzen will, mach ich dicke backen oder schmeiße Flash entgültig von der platte… nicht die schlechteste alternative

serverseitige Profile

Wer mehrere Rechner sein eigen nennt und dazu noch einen Server beseitzt wird über kurz oder lang auf die wahnsinnige Idee kommen, alle userbezogenen Daten auf dem Server abzulegen, um im Falle eines Crashes alles wieder bei sammen zu haben oder schlicht um an allen Rechnern auf die gleichen Daten zuzugreifen.

Dies kann man unter Linux sehr bequem mittels mounting sehr elegant lösen. Einfach den Pfad /home/$(USERNAME) mittels pam_mount auf ein externe Quelle/Server mounten.

Unter Windows geht das nur über eine Domäne, bei der (nach wunsch) das Userprofiel serverseitig gespeichert wird.

Fährt man den Server jedoch mal runter  (kann im wartungsfall passieren) oder nutzt man das Ganze an einem Laptop und ist nicht im privaten netzt wird man folgendes festellen:

  • Linux: die GUI (Gnome/KDE/whatever) fährt hoch, aber alles sieht aus wie beim ersten Start.
  • Windows: man wird darauf hingewiesen, dass die Domäne samt serverseitgen Profielen nicht verfügbar ist. Sonst merkt man nichts.

Dies liegt an dem Umstand das Windows die Profile nach dem Anmelden downloaded und beim Abmelden wieder zurück kopiert. Steht der Server einmal nicht zur Verfügung wird mit der Kopie weitergearbeitet.

Steht ein Server bei einem Linux-Mount mittels CIFS oder NFS  nicht zur verfügung, schlegt der Mount fehl (was einem aber nur im syslog vermerkt wird) und man arbeitet nur noch lokal. Solange der Server online ist, schreibt man aber alles „direkt“ auf dem Server. Ohne nutzbare lokale kopie.

Ideal wäre eine DFS -implemntierung die einen das alles transparent abnimmt. Diese eierlegende Wollmichsau habe ich leider nicht gefunden. Deswegen habe ich folgenden Lösungsansatzt benutzt.

Die Idee von Microsoft für unterschiedliche „Systeme“ unterschiedliche Profile anzulegen, fand ich ganz vernünftig. Es gibt also Profile für ein WinXP64, WinXP32 usw… Auf einem DoppelKern mit dicker Graka läuft was anderes als auf einem Atom-Laptop. Nachteilig ist, dass das auch die „Eigenen Dateien“ betrifft, welche eigendlich Systemunabhängig sein sollten, wenn sich mal alle Entwickler drann halten würden.

Unter Linux lässt sich diese Trennung wesentlich leichter durchziehen, dank der Disziplin. Auf dem Server werden zwei Verzeichnisse angelegt und verfügbar gemacht.

  • Home-Verzeichniss: hier kommt alles rein was auf allen Rechnern zur verfügung stehen soll.
  • Profiles\$(System): hier kommt alles rein, was ein bestimmtes system betrifft.

Am Client muss man diese beiden verzeichnisse nur noch mittels mount irgendwohin mounten. „/mnt/.serverprofile“ und „/mnt/homedir“ bieten sich an . Da man den String der das System identifieziert selber wählen kann, steht einem die aufteilung frei. Sinnvoll ist eine auftreilung nach KDE/Gnome/Xfce. Es sind aber auch andere Aufteilungen möglich.

jetzt braucht es zwei scripte die das kopieren übernehmen:

  • Server->Lokale Kopie:
    rsync -a /mnt/.serverprofile/ ~/
    rsync -a /mnt/homedir/* ~/
  • Lokale Kopie->Server:
    rsync -a ~/.[a-Z,0-9]* /mnt/.serverprofile/
    rsync -a ~/* /mnt/homedir

Das erste Bash-Listing dürfte nicht verwundern. Alle Dateien aus den serververzeinissen werden in das Uservervzeichniss kopiert. „rsync -a“ sorgt nur dafür das alle gesetzten Rechte erhalten bleiben (außer ACLs was mich aber nicht stört)

Beim zweite Listing könnte nur der Ausdruck „~/.[a-Z,0-9]*“ verwirren. Der sorgt dafür das nur Files kopiert werden die mit einem Punkt beginnen. (Korrekt: es werden nur Dateien/Ordner kopiert die mit Punkt beginnen gefolgt von einem Buchstaben oder Zahl. Bei Bedarf muss das angepasst werden)

Die scripte sind nicht sonderlich intelligent und werden von mir im laufe der  Zeit auf effizents getrimmt. Man gewinnt viel zeit wenn man nur änderungen übertragt. Ich werde mal schauen was mit tar so gemacht werden kann…

Jetzt müssen diese beiden Scriptes nur noch bei an/abmeldung ausgeführt werden. Jeh nachdem welchen Desktopmanager man benutzt, ändert sich das vorgehen.

  • KDE: Unter „Systemeinstellung“ -> „Erweiterte Benutzereinstellung“ -> „Autostart“ kann man die Scriptes verlinken. Das ist unschön, da man es für jeden benutzer einzeln machen muss, für eine größere Anzahl an Rechner ist das nicht zu administrieren. Unter /usr/shutdown kann man auch scriptes ablegen. Diese Scriptes ziehen aber nur bei „Shutdown“ nicht logoff. Hier bin ich noch auf der suche nach einem entsprechend besseren Lösung.
  • Gnome: Hier bietet der GDM entsprechende Einsprungpunkte. /etc/gdm/PostSession und /etc/gdm/PreSession
  • Xcfe: hab ich (noch) nicht einsatzt. Wird aber im Laufe der nächsten Wochen geändert.

Mit den gemachten einstellung hat man sein Profiel auch wenn der Server mal nicht verfügbar ist.

PS: unter KDE wird er Kopie-Script ausgeführt wenn die Oberfläche oben ist. Es empfiehlt sich also vor dem ersten start, in der Konsole alles zu kopieren. Sonst könnte der geneigte user beim ersten start ein Schock bekommen: „Whaaa alles weg“.

Thunderbird Links in Opera öffnen

Wer unter Linux Thunderbird und Opera nutzt und mit letzterem Links in ersterem öffnen will sollte folgendes machen.

Im Thunderbird-Profiel findet sich die prefs.js. Dort einfach folgendes anhängen

user_pref(„network.protocol-handler.app.ftp“, „opera“);
user_pref(„network.protocol-handler.app.http“, „opera“);
user_pref(„network.protocol-handler.app.https“, „opera“);

und schon geht das wie geschmiert….