Thinkpad z60m

aus PUG, der Penguin User Group

Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Thinkpad Z60M unter Ubuntu Edgy

Dank der Firma bekam ich ein Leveno/IBM Thinkpad Z60M welches noch mit einer Mobile CPU ausgestattet ist. Dieses Gerät wird eigentlich sehr gut unterstützt und nahezu fast alles funktioniert. Wird auf den proprioritären Grafikkarten Treiber von ATI verzichtet, soll sogar Syspend to RAM, resp. Suspend to Disk funktionieren. Da ich aber OpenGL und Co nutzen möchte, setzte ich auf den Original Treiber. Wer mit dem Gedanken spielt, Beryl und Co einzusetzen, sollte sich statt auf GLX auf AGILX konzentieren. Denn ATI unterstützt die Composite Erweiterung nicht, wenn auch DRI verwendet wird. Beryl benöigt aber Compisite ...

Diese Anleitung ist im groben nur eine Übersetzung von anderen Quellen, mit der einen, oder anderen Anpassung. Alle Quellen werden wie üblich am Ende dieser Anleitung aufgelistet werden. Pakete die ich verwendet habe, werde ich auch zur Verfügung stellen, um den Ausfall der Webseiten kompensieren zu können :-)

Ausstattung

root@kusanagi:~# lspci
00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)
00:01.0 PCI bridge: Intel Corporation Mobile 915GM/PM Express PCI Express Root Port (rev 03)
00:1b.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 03)
00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 03)
00:1c.1 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (rev 03)
00:1c.2 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 3 (rev 03)
00:1c.3 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 4 (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03)
00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d3)
00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 03)
00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 03)
00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03)
01:00.0 VGA compatible controller: ATI Technologies Inc M24 1P [Radeon Mobility X600]
02:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5751M Gigabit Ethernet PCI Express (rev 11)
14:00.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b3)
14:00.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C552 IEEE 1394 Controller (rev 08)
14:00.2 Class 0805: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 17)
14:00.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 08)
14:02.0 Network controller: Intel Corporation PRO/Wireless 2915ABG Network Connection (rev 05)
root@kusanagi:~# lsusb
Bus 005 Device 001: ID 0000:0000  
Bus 004 Device 001: ID 0000:0000  
Bus 003 Device 008: ID 0a5c:2110 Broadcom Corp. 
Bus 003 Device 004: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader
Bus 003 Device 001: ID 0000:0000  
Bus 002 Device 001: ID 0000:0000  
Bus 001 Device 001: ID 0000:0000  
root@kusanagi:~# cat /proc/cpuinfo 
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 13
model name      : Intel(R) Pentium(R) M processor 2.00GHz
stepping        : 8
cpu MHz         : 800.000
cache size      : 2048 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx up est tm2
bogomips        : 1598.40


Ziel

  • Am Ende wird auf diesem Laptop Ubuntu Edgy laufen, mit den original Treibern von ATI.
  • Der Fingerabdruck-Scanner dient für den Login.
  • Das Volume (LVM) home wird verschlüsselt, wobei der Schlüssel auf einer SD-Karte liegt
  • Ein Großteil der Fn Tasten wird funktionieren
  • Der externe VGA Ausgang liefert ein geklontes Bild
  • W-Lan läuft über das Network-manager Applet von Gnome


Installation

Als Ausgangsbasis verwende ich eine i386 Edgy CD-Rom. Um später möglichst flexibel den Speicherplatz verwalten zu können, setze ich auf LVM. Meine Partitionen sehen daher folgendermaßen aus:

/dev/sda1 swap 512 MB
/dev/sda2 Root 8GB
/dev/sda5 LVM Rest

Die Installation selber eine normale Standardinstallation, welche ich nicht weiter erläutern werde.

Wurde die Installation abgeschlossen, und die obligatorischen Updates installiert, kann als nächstes die /etc/apt/sources.list angepasst werden, sodass das System auch "brauchbar" wird. Ich verwende folgende Server:

$ sudo vi /etc/apt/sources.list
deb http://de.archive.ubuntu.com/ubuntu/ edgy main restricted
deb http://de.archive.ubuntu.com/ubuntu/ edgy-updates main restricted
deb http://de.archive.ubuntu.com/ubuntu/ edgy universe multiverse
deb http://de.archive.ubuntu.com/ubuntu/ edgy-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu edgy-security main restricted
deb http://security.ubuntu.com/ubuntu edgy-security universe

# Amarok KDE Musik Player
deb http://kubuntu.org/packages/amarok-144 edgy main

# Beryl 3D Desktop
# deb http://ubuntu.beryl-project.org/ edgy main
# Kubuntu.org bleeding edge KDE
# GPG key: DD4D5088
deb http://kubuntu.org/packages/kde-latest edgy main 
# Kubuntu.org bleeding edge amaroK
# GPG key: DD4D5088
deb http://kubuntu.org/packages/amarok-latest edgy main 
# Medibuntu multimedia packages
# GPG key: 0C5A2783
deb http://medibuntu.sos-sts.com/repo/ edgy free non-free 

Da ich als Audio Player Amarok zusammen mit MySQL verwende, muss der gpg Schlüssel noch hinzugefügt werden, für die Signaturen:

$ wget http://people.ubuntu.com/~jriddell/kubuntu-packages-jriddell-key.gpg
$ wget wget http://medibuntu.sos-sts.com/repo/medibuntu-key.gpg
$ sudo apt-key add medibuntu-key.gpg
$ sudo apt-key add kubuntu-packages-jriddell-key.gpg
$ sudo  apt-get update

Da ich es nervig finde, längere Tipparbeiten am Laptop zu erledigen, installiere ich SSH und aktiviere den Root Account. "Sudo" zu verwenden ist zwar sinnvoll, aber für längere Rootarbeiten ziehe ich einen echten Root Account vor:

$ sudo apt-get install ssh
$ sudo passwd
$ su -

Bei der ersten Passwortfrage, wird das Kennwort des Users abgefragt, die beiden anderen sind das Kennwort für den User Root. Mit "su -" bekommen wir die normale Root Umgebung.

LVM und Home

Unser Home Verzeichnis werden wir in ein LVM Volume packen, welches dann verschlüsselt werden kann. Dazu installieren wir uns die passenden Programme:

# apt-get install lvm2 dmsetup cryptsetup

Dann teilen wir dem LVM mit, dass /dev/hda5 zu LVM gehören soll:

  • Die ID auf LVM ändern, sofern dies nicht schon geschehen ist, und startet den Rechner neu, ansonsten kann es Probleme beim LVM geben.
# sfdisk --change-id /dev/sda 5 8e


  • Nun fügen wir /dev/sda5 dem LVM hinzu
# pvcreate /dev/sda5
  • Dann erstellen wir unseren Pool und nennen ihn z.B. Daten
# vgcreate daten /dev/sda5
  • Aus diesem Pool nehmen wir 2GB und erstellen unser home Volume
# lvcreate -L 2G -n home daten

Am Ende sollte das in etwa so ausschauen:

root@kusanagi:~# pvscan 
  PV /dev/sda5   VG daten   lvm2 [66,21 GB / 64,21 GB free]
  Total: 1 [66,21 GB] / in use: 1 [66,21 GB] / in no VG: 0 [0   ]
root@kusanagi:~# vgscan 
  Reading all physical volumes.  This may take a while...
  Found volume group "daten" using metadata type lvm2
root@kusanagi:~# lvscan 
  ACTIVE            '/dev/daten/home' [2,00 GB] inherit

Ist dies geschehen, können wir diese Volume später formatieren. Dafür nehme ich XFS, da dieses flott arbeitet und sich am einfachsten online erweitern lässt. Da die Tools für XFS nicht per Default dabei sind, müssen wir sie vorher auch noch installieren:

# apt-get install xfsprogs

Verschlüsseln

Damit wir das Kennwort nicht immer eintippen müssen, wollen wir diesen auf die SD-Karte legen. Dazu müssen folgende Module geladen worden sein:

  • aes
  • dm-mod
  • dm-crypt

Die SD-Karte wird mit einem vfat Dateisystem formatiert. Bei ext2 hatte ich Probleme, welches aber mit der SD-Karte zusammenhängen mag.

  • Damit die Karte auch immer an die selbe Stelle gemountet wird, verwenden wir die UUID:
# mkfs.vfat /dev/mmcblk0p1

Die UUID erfahren wir am einfachsten mit:

ls -l /dev/disk/by-uuid/
  • Weiter geht es:
# mkdir /media/key
# mount /dev/mmcblk0p1 /media/key


Luks

  • Da wir einen Schlüssel benötigen, erzeugen wir uns einen.
# touch /media/key/keyfile.luks && shred -s1024 /media/key/keyfile.luks
  • Dann ordnen wir diesen Schlüssel dem Volume zu und verschlüsseln:
# cryptsetup -c blowfish-cbc-essiv:sha256 -s 256 luksFormat /dev/daten/home /media/key/keyfile.luks
  • Zum Öffnen des verschlüsselten Volumes, geben wir folgendes ein:
# cryptsetup luksOpen /dev/daten/home home --key-file /media/key/keyfile.luks
  • Als nächstes muss die Datei /etc/cryptotab bearbeitet werden:
# <target name>

Ungültige Sprache.

Die gewünschte Sprache muss wie folgt definiert werden: <source lang="html">...</source>

Unterstützte Sprachen für die Syntax-Hervorhebung:

abap, actionscript, actionscript3, ada, apache, applescript, asm, asp, autoit, bash, basic4gl, blitzbasic, bnf, c, c_mac, caddcl, cadlisp, cfdg, cfm, cpp, cpp-qt, csharp, css, d, delphi, diff, div, dos, dot, eiffel, fortran, freebasic, genero, gettext, glsl, gml, groovy, haskell, html4strict, idl, ini, inno, io, java, java5, javascript, kixtart, latex, lisp, lotusformulas, lotusscript, lua, m68k, matlab, mirc, mpasm, mxml, mysql, nsis, objc, ocaml, ocaml-brief, oobas, oracle8, pascal, per, perl, php, php-brief, plsql, python, qbasic, rails, reg, robots, ruby, sas, scala, scheme, sdlbasic, smalltalk, smarty, sql, tcl, text, thinbasic, tsql, vb, vbnet, verilog, vhdl, visualfoxpro, winbatch, xml, xpp, z80