Manipulationen am Asus Eee-PC 900 und 1000H
Dies ist mein persönlicher Spickzettel. Jede Manipulation kann das Gerät zerstören. Ich habe hier die Hacks gesammelt, die ich selbst am eigenen Gerät durchführe. Nicht-Linux-Spezialisten sollten das Gerät nicht manipulieren und sind daher nicht Zielpublikum.
KDE4
KDE4 ist resourcenfressend daher ganz klar ungeeignet. Ich bleibe vorerst bei KDE3, und damit bei (K)Ubuntu 8.04 Hardy Hedron. Den Umstieg auf (K)Ubuntu 8.10 Intrepid Ibex kann ich nicht empfehlen.
EeeBuntu
EeeBuntu ist ein spezielles Ubuntu, zugeschnitten für den Eee-PC, daher sehr zu empfehlen. Ich verwende die Variante Netbook. Nachteile: Kein KDE (basieert auf Ubuntu 8.10 mit KDE4), keine Harddiskverschlüsselung.
Pakete
| Pakete | Kommando zum Einrichten |
|---|---|
| skype | sudo wget http://www.medibuntu.org/sources.list.d/intrepid.list --output-document=/etc/apt/sources.list.d/medibuntu.listwget -q http://packages.medibuntu.org/medibuntu-key.gpg -O- | sudo apt-key add -1) |
cryptsetup system-config-lvm maximus miro elisa peace-gdm-theme cheese gimp skype
Harddiskverschlüsselung
Die Harddiskverschlüsselung (der root-Partition) kriegt man wie folgt hin:
- Normale Installation von EeeBuntu, aber:
- Partitionierung von Hand (in meinem Beispiel durchgehend
/dev/sda):- 200MB für /boot (ext3) (z.B.
/dev/sda1) - 1024MB für swap (z.B.
/dev/sda2) - Rest für / (xfs) (z.B.
/dev/sda3)
- Danach booten von einem USB-Stick mit (K)Ubuntu-Desktop drauf.
- in Shell (kterm) mit
sudo -i:- Verschlüsseln der bereits bestehenden root-Partition mittels Backup:
- Einbinden der installierten Root-Partition auf
/mnt:
mount /dev/sda3 /mnt
- Backup der Root-Partition von EeeBuntu von
/mnt/auf einen Stick (z.B. eingebunden unter/media/disk):
rsync -avuxP /mnt/ /media/disk/
- Einbindung lösen:
umount /mnt
- Partition verschlüsseln (Daten werden gelöscht, daher auch das Backup):
cryptsetup luksFormat /dev/sda3
- Partition aktivieren:
cryptsetup luksOpen /dev/sda3 root
- Partition neu formatieren:
mkfs.xfs -L root /dev/mapper/root
- Neue, jetzt leere Partition wieder einbinden unter
/mnt:
mount /dev/mapper/root /mnt
- Backup von vorhin zurückspielen:
rsync -avuxP /media/disk/ /mnt/
- Root-Partition von unverschlüsselt auf verschlüsselt umstellen und bootbar machen:
- Configurationsdateien anpassen (die root-Partition ist immer noch unter
/mnt):- Einen Editor starten, um die Dateien anzupassen, unter KUbuntu z.B. kate (unter Ubuntu: z.B. gedit):
kate /mnt/boot/grub/menu.lst /mnt/etc/fstab /mnt/etc/crypttab
- Anpassungen in der Datei
/mnt/boot/grub/menu.lst:
Suche und ersetze alle Zeilen, woroot=steht. Nehmen wir an, es stehtroot=XXX(XXXsteht für eine beliebige Partitionsbezeichnung), dann ersetzen wir überallroot=XXXdurchroot=/dev/mapper/root, denn dorthin wird unsere verschlüsselte root-Partition neu abgebildet. - Auch in der Datei
/mnt/etc/fstabändern wir den alten Eintrag für/auf/dev/mapper/root, dann steht dort u.a. (z.B., wichtig sind die ersten zwei Spalten, der Rest kann variieren):
/dev/mapper/root / xfs noatime 0 1
- In der Datei
/etc/crypttabzeigen wir dem System, welche Partition wie verschlüsselt wurde. In meinem Beispiel ist das immernoch/dev/sda3, also fügen wir die folgende Zeile zusätzlich hinten ein:
root /dev/sda3 none luks
- Speziell für den abgespeckten Kernel und die minimale Installation von EeeBuntu müssen die fehlenden Teile nachinstalliert werden:
/mntist bereits von vorhin eingebunden. Nun die boot-Partition dazubinden:
mount /dev/sda1 /mnt/boot
- Jetzt muss das EeeBuntu eingerichtet werden, dass es selbst auch mit verschlüsselten Partitionen umgehen kann. Dazu müssen wir in die EeeBuntu-Distribution unter
/mntwechseln:
chmod /mnt
- Um Fehler beim Zugriff auf
/proczu vermeiden, binden wir es ein:
mount /proc
- Das Paket
cryptsetupfehlt bei EeebBuntu. Ebenso fehlen die Kernelmodule für die Verschlüsselung. Dazu benötigen wirmodconf. Sicherstellen, dass Internetzugang vorhanden ist, dann installieren:
apt-get install cryptsetup modconf
- Nun die Kernelmodule installieren mit:
modconf
- Unter
kernel/cryptoden Punktaes-genericinstallieren. - Unter
kernel/drivers/mdden Punktdm-cryptinstallieren.
- Zuerst müssen wir herausfinden, welche Kernelversion installiert ist, um die neuen Verschlüsselungsmodule in den Boot-Kernel zu integrieren. Dies geht mit dem Kommando:
dpkg -l 'linux-image-*-eeepc'
Das sollte eine Zeile zeigen, die mitiibeginnt (für «installiert»). Bei mir ist daslinux-image-2.6.24-21-eeepc. Der Befehluname -rmuss ebenfalls2.6.24-21-eeepcanzeigen. - Den Kernel bootbar machen:
dpkg-reconfigure linux-image-2.6.24-21-eeepc - Nun können wir die chroot-Umgebung verlassen:
exit
- Nun noch aufräumen:
umount /mnt/proc /mnt/boot /mnt
- Und das System (ohne USB-Sticks) neu starten.
Ubuntu
Da von Asus an Xandros zu viel herumgebastelt wurde, bin ich auf Ubuntu mit KDE umgestiegen. Xandros ist zu empfehlen für alle die, die nicht viel von Computer verstehen, nur ein einfaches Gerät für sich selbst wollen und mit den angebotenen Programmen bedient sind.
Ich benutze Ubuntu mit KDE: sudo apt-get install kubuntu-desktop.
sudo -i muss man jeweils nur einmal machen für alle Änderungen. Es startet eine bash als root. Statt sudo vor jedem Kommando, aus Bequemlichkeit und bei Pipes funktioniert normales sudo eh nicht so einfach. Ist aber heikler. Verlassen ganz am Ende mit exit.
Installation ab USB-Memory-Stick oder SD-Card
Notwendige Pakete:
sudo apt-get install syslinux mbr
Notwendige Ubuntu-Dateien:
Stick/Card einstecken und einbinden. mount zeigt den Namen des Geräts (z.B. /dev/sdb1 → /dev/sdb). In den weiteren Beispielen verwende ich /dev/sdb, das muss natürlich entsprechend angepasst werden. Eine falsche Bezeichnung löscht die falsche Harddisk. Die bestehenden Daten auf dem Stick werden gelöscht.
Auf dem USB-Stick oder der SD-Card sollte mindestens die erste Partition (z.B. /dev/sdb1) mit dem DOS-Dateisystem formatiert sein. Der Partitionstyp (Id) sollte c sein, ausserdem sollte die Partition bootbar markiert sein (mit * bei boot.). Für /dev/sdb z.B. zeigt sudo fdisk -l /dev/sdb die Partitionierung an. Sie sollte so aussehen:
Platte /dev/sdb: 4007 MByte, 4007657472 Byte 5 Köpfe, 32 Sektoren/Spuren, 48921 Zylinder Einheiten = Zylinder von 160 × 512 = 81920 Bytes Disk identifier: 0xc18c69ad Gerät boot. Anfang Ende Blöcke Id System /dev/sdb1 * 51 48922 3909696 c W95 FAT32 (LBA)
Falls notwendig ändern mit sudo fdisk /dev/sdb:
- Alle Konfigurationen löschen:
o - Neue 1. Partition anlegen:
n,p,1,Enter,Enter - Typ setzen:
t,c - Bootfähigkeit setzen:
a,1 - Prüfen:
p - Schreiben und Beenden:
w
Nun folgendes tun:
- MBR installieren
- Mit 32-Bit FAT formatieren, Label auf
Ubuntusetzen - Mit
syslinuxzum booten vorbereiten - Stick ausziehen, wieder einstecken und das einbinden. Er sollte nun auf
/media/Ubuntueingebunden sein. - Das Ubuntu-ISO-Image z.B. unter
/mnteinbinden (hier wird angenommen, es liegt unter~/downloads/iso/kubuntu-8.10-desktop-i386.iso) - Kopieren die Dateien von dort (
/mnt) auf den Stick (/media/Ubuntu) — Fehler von Rsync ignorieren (Grund der Fehler: Auf einem DOS-Dateisystem können keine Verweise angelegt werden) - Laufwerkeinbindung von
/mntwieder lösen. - Umbenennen von
isolinuxnachsyslinux, und darin von isolinux.cfg nachsyslinux.cfgauf dem Stick
Das sieht dann konkret z.B. so aus:
sudo install-mbr /dev/sdb sudo mkfs.vfat -F 32 -n Ubuntu /dev/sdb1
(Stick raus und wieder rein)
sudo mount -o loop ~/downloads/iso/kubuntu-8.10-desktop-i386.iso /mnt sudo rsync -rvP /mnt/ /media/Ubuntu/ sudo umount /mnt sudo mv /media/Ubuntu/isolinux /media/Ubuntu/syslinux sudo mv /media/Ubuntu/syslinux/isolinux.cfg /media/Ubuntu/syslinux/syslinux.cfg sudo syslinux /dev/sdb1
Stick abmelden, ausziehen und im Asus beim Booten den Tabulator drücken für das Bootmenu, Stick auswählen, von dort starten und fertig.
Alternate-Installations-CD
Für die alternative Installations-CD, die ich empfehle, weil man damit die ganze Harddisk verschlüsseln kann, sieht es ein wenig anders aus. Dort kann man kein Live-System laufen lassen, sondern nur installieren. Dazu muss die ganze ISO-Datei auf den Stick kopiert werden. Beim Installieren muss man diese dann von Hand angeben.
Dafür muss man nicht die ganzen Dateien von der eingebundenen ISO-Datei kopieren. Stattdessen genügen die drei Dateien aus: http://archive.ubuntu.com/ubuntu/dists/intrepid/main/installer-i386/current/images/hd-media/, wobei hier intrepid durch die gewünschte Version und installer-i386 durch die gewünschte Hardware zu ersetzen ist. Diese Dateien kopiert man nach /media/Ubuntu, ausserdem braucht es noch eine Datei /media/Ubuntu/syslinux.cfg, die von Hand anzulegen ist, Inhalt:
default vmlinuz append initrd=initrd.gz ramdisk_size=10000 root=/dev/rd/0 devfs=mount,dall rw
Bei alten Distributionen, vor Feisty:
default vmlinuz append initrd=initrd.gz ramdisk_size=10000 root=/dev/rd/0 init=/linuxrc devfs=mount,dall rw
Ungelöste Probleme
- keine…
Spezielle Treiber
(Quellen: http://array.org/ubuntu/setup.html, http://wiki.eeeuser.com/getting_ubuntu_8.04_to_work_perfectly (beste Quelle), http://www.ubuntu-eee.com/index.php5?title=How_to_install_Ubuntu_Hardy/Ge und http://www.ubuntu-eee.com/index.php5?title=How_to_configure_Hardy/Ge)
Passender Kernel
Details: http://array.org/ubuntu/setup.html
cd /etc/apt/sources.list.d/ sudo wget http://www.array.org/ubuntu/array-hardy.list cd /tmp wget http://www.array.org/ubuntu/array-apt-key.asc sudo apt-key add array-apt-key.asc sudo apt-get update sudo apt-get install linux-eeepc sudo apt-get remove linux-generic linux-image-generic linux-restricted-modules-generic sudo apt-get remove linux-.*-generic
Achtung: Keine Ahnung, was vom Folgenden noch notwenig ist, nach dem oben,,,
Sauber runterfahren
sudo -i echo "rmmod snd-hda-intel" >> /etc/default/halt
ACPI (Spezialknöofe, Kamera)
sudo apt-get install module-assistant eeepc-acpi-source sudo m-a a-i eeepc-acpi sudo sh -c 'echo eeepc-acpi >> /etc/modules'
Knöpfe
sudo -i cat > /etc/acpi/events/hotkey <<EOF event=hotkey ATKD action=/etc/acpi/eeepc-hotkeys.sh %e EOF cat > /etc/acpi/eeepc-hotkeys.sh <<EOF #!/bin/sh code=\$3 case \$code in # Fn+F2 -- enable/disable wifi 0000001[01]) /etc/acpi/actions/wireless-toggle.sh ;; # Fn+F7 -- mute/unmute speakers 00000013) acpi_fakekey 113 ;; # Fn+F8 -- decrease volume 00000014) acpi_fakekey 114 ;; # Fn+F9 -- increase volume 00000015) acpi_fakekey 115 ;; esac EOF chmod a+x /etc/acpi/eeepc-hotkeys.sh
Bildschirmanzeige von Sondertastendrücken
Abwarten:
However Adam is working on a similar package. The package is still in development, but eventually will be released on the http://array.org/ubuntu repository as eeepc-hotkeys.
WLan
wget 'http://snapshots.madwifi.org/madwifi-hal-0.10.5.6-current.tar.gz' tar zxvf madwifi-hal-0.10.5.6-current.tar.gz cd madwifi-hal-0.10.5.6-... make clean make sudo make install
WLan-Knopf
sudo -i echo "pciehp pciehp_debug=1 pciehp_force=1" >> /etc/modules mkdir -p /etc/acpi/actions cat > /etc/acpi/actions/wireless-toggle.sh <<EOF #!/bin/sh wlan_control=/proc/acpi/asus/wlan WLANSTATE=\$(cat \$wlan_control) case \$WLANSTATE in 1) ifconfig ath0 down modprobe -r ath_pci echo 0 > \$wlan_control modprobe -r pciehp ;; 0) modprobe pciehp pciehp_force=1 pciehp_debug=1 echo 1 > \$wlan_control modprobe ath_pci echo 0 > \$wlan_control echo 1 > \$wlan_control ;; esac EOF chmod a+x /etc/acpi/actions/wireless-toggle.sh
Sound
Geht nicht nach einem Suspend. Lösung:
(Achtung: Beim EeePC-70x muss es lauten: options snd-hda-intel model=3stack-dig, statt wie beim 90x auto)
sudo -i echo "options snd-hda-intel model=auto" >> /etc/modprobe.d/snd-hda-intel cat > /usr/lib/pm-utils/sleep.d/45sound <<EOF #!/bin/bash if [ ! -x /sbin/alsa ]; then exit 0; fi case "\$1" in hibernate|suspend) /sbin/alsa suspend ;; thaw|resume) /sbin/alsa resume ;; *) ;; esac exit \$? EOF chmod +x /usr/lib/pm-utils/sleep.d/45sound
In Datei /etc/default/alsa:
force_unload_modules_before_suspend="snd_hda_intel"
CPU Skalieren
sudo -i apt-get -y remove powernowd kde-guidance-powermanager apt-get -y install cpufrequtils sysfsutils kpowersave modprobe p4_clockmod cat >> /etc/modules <<EOF p4_clockmod cpufreq_ondemand EOF
Weitere Einstellungen mit kpowersave.
Wozu? «Overclock»? Was ist das?
Habe ich nicht gemacht:
Modul eee.ko kompilieren nach einer Anleitung, die ich nicht gefunden habe.
- In
/etc/modprobe.d/blacklist, folgende Zeile auskommentieren (indem Ihr eine # am Anfang der Zeile setzt):blacklist i2c_i801
echo "i2c_i801" >> /etc/modules echo "eee" >> /etc/modules
Webkamera und anderes
Bios-Einstellungen prüfen! Wenn die Kamera disabled ist, geht sie natürlich nicht. Ausserdem muss OS-Installation auf Finished gesetzt sein.
Videotreiber
Korrektur der Auflösung (für externen Monitor – Achtung: Vor dieser Installation nicht die Monitoreinstellungen manipuliueren, sonst get /etc/X11/xorg.conf kaputt und muss mit sudo cp /etc/X11/xorg.conf.1 /etc/X11/xorg.conf auf der Konsole wiederhergestellt werden):
sudo apt-get install 915resolution
Schneller Booten
In /boot/grub/menu.lst:
timeout 0 [...] ... defoptions=quiet splash clocksource=hpet
Dann:
sudo update-grub
Maximale Bildschirmhelligkeit
Macht den Bildschirm heller, heizt aber auf und braucht mehr Strom. Laut Asus ist das nicht zu empfehlen, also sparsam gebrauchen.
KDE-Menueintrag unter System:
Xandros
Allgemeine Informationen zur Manipulation eines Eee-PC P900:
Linux-Bash-Terminal: Ctrl-Alt-T
Befehl als root ausführen: sudo befehl.
Editor: kwrite
Beispiel: Datei /usr/bin/startx editieren:
Ctrl-Alt-Tsudo kwrite /usr/bin/startx
Mehrere Nutzer
- Ersetze
/usr/bin/startxdurch/usr/bin/kdm- Oder schreibe die Zeilen
/usr/bin/kdmundexit 0als Zeilen 2 und 3 ganz oben in/usr/bin/startx.
- Bearbeite
/usr/bin/startsimple.sh:- Ganz oben (2. Zeile) füge ein:
[ -z "$USER" ] && export USER=user - Danach ersetze darunter alle Vorkommen von Benutzer
userdurch$USER.
Dies ist wichtig, damit Details funktionieren, wie die Einstellung das Öffnen von Speichergeräten.
- Für jeden neuen Benutzer namens
namemache folgendes:sudo adduser name- Bearbeite
/etc/sudoersund füge fürnameeine Zeile ein, analog zur letzten füruser. - Bearbeite
/etc/groupund ersetze alle:userdurch:user,name. Weitere Namen können mit Komma angehängt werden. - Verhindern, dass die Ersteinrichtung erfolgt (genügt, wenn das einmal für
usergemacht wurde):sudo -u name touch /home/name/.firstrundone
Quellen
Warnung: Folgendes kann das System instabil werden lassen!
Tipp: Alles ausser den zwei Originalzeilen auskommentieren (#), wenn sie gerade nicht gebraucht werden.
Datei /etc/apt/sources.list:
deb http://update.eeepc.asus.com/p900/ p900 main deb http://update.eeepc.asus.com/p900/de/ p900 main deb http://update.eeepc.asus.com/p701/ p701 main deb http://update.eeepc.asus.com/p701/de/ p701 main #deb http://mcentral.de/empiatech/ p701 main deb http://xnv4.xandros.com/xs2.0/upkg-srv2 etch main contrib non-free deb http://dccamirror.xandros.com/dccri/ dccri-3.0 main deb http://www.geekconnection.org/ xandros4 main #deb http://download.tuxfamily.org/eeepcrepos/ p900 main etch deb http://download.tuxfamily.org/eeepcrepos/ p701 main etch #deb http://www.archlug.org/apt/ xandros4 archlug xorid/andrew xorid/matty xorid/uploads deb http://xnv4.xandros.com/xs2.0/pkg/ xs2.0-xn main non-free
Es genügt auch, folgende Zeilen hinzuzufügen:
deb http://xnv4.xandros.com/xs2.0/upkg-srv2 etch main contrib non-free deb http://dccamirror.xandros.com/dccri/ dccri-3.0 main deb http://www.geekconnection.org xandros4 main
Datei /etc/apt/preferences:
Package: * Pin: origin update.eeepc.asus.com Pin-Priority: 1500 Package: * Pin: origin Pin-Priority: 925 Package: * Pin: origin xnv4.xandros.com Pin-Priority: 900 Package: * Pin: origin dccamirror.xandros.com Pin-Priority: 850 Package: * Pin: origin www.geekconnection.org Pin-Priority: 750 Package: * Pin: release a=stable Pin-Priority: 700 Package: * Pin: release a=testing Pin-Priority: 650 Package: * Pin: release a=unstable Pin-Priority: 600
wget http://download.tuxfamily.org/eeepcrepos/key.asc sudo apt-key add key.asc rm key.asc sudo apt-get update sudo apt-get install xandros-archive-keyring
Software
Aus den Original P900-Quellen von Asus installiere ich zusätzlich:
- Alle Updates
- Alle Spiele, Lernprogramme, u.ä.
Aus den Asus P701-Quellen:
- Full KDE-Desktop (Voller Desktop): kicker ksmserver
- → funktioniert nicht! Fehler: «Sie müssen alle laufenden Anwendungen schliessen…», obwohl gar nichts läuft.
Aus Community P701-Quellen:
Aus den Xandros-Quellen:
- Mein Lieblingseditor: xemacs
- Zeitsynchronisation mit dem Internet: ntp-simple (ntp)
Für eine saubere Deinstallation: Auch mitinstallierte Abhängigkeiten merken (ich speichere die geplanten Änderungen in synaptic in eine Datei). Aufpassen, dass keine wichtigen Bibliotheken aus Xandros-Quellen überschrieben werden, sonst könnte das Instabilitäten zur Folge haben.
Geplante Anpassungen
- Mehrere Nutzer2) (kdm)
- /home/xxx auf externem Stick
- Externer Stick verschlüsselt
- Abgleich mit richtigem Laptop
- Idee: svn
- Idee: unison
- Mehr Software:
- korganizer (Newsreader/Mail)
- kwalletmanager
- Spiele
- TV-USB-Stick
Quellen
- Mehrere Nutzer und andere Tipps:
- Paketquellen:
