15.10 64-Bit: ja oder nein? 

Mittlerweile haben sich 64-Bit-Architekturen auch im heimischen Bereich etabliert. Während auf dem mobilen Sektor Intel mit der Centrino-Technik die Nase vorn hat, bietet der Konkurrent AMD die 64-Bit-Desktop-Plattform in Form des Athlon 64.
64-Bit-Architekturen – eine kurze Einführung
Welchen Vorteil bieten die 64-Bit-Systeme? Zunächst einmal fällt unter der 64-Bit-Architektur die Limitierung des Hauptspeichers auf eine Gesamtgröße von 4 GByte weg, ein Feature, das sicherlich nur im Serverbereich von Bedeutung ist. Für den Endanwender sind Anwendungen im Bereich der Audio- und Video-Encodierung interessanter, die speziell für die entsprechende Plattform kompiliert wurden und daher deutlich schneller als auf 32-Bit-Systemen laufen.
Einfach ausgedrückt: Sie fahren sicherlich auch lieber auf einer vierspurigen als auf einer zweispurigen Autobahn. Pro Rechnertakt können doppelt so viele Daten im Prozessor verarbeitet und weitergeleitet werden. Voraussetzung ist allerdings, wie oben bereits erwähnt, dass die Programmierer ihre Programme an die spezielle Prozessorarchitektur anpassen oder vom Compiler entsprechend optimieren lassen.
Der Schlüssel zur optimalen Ausnutzung der 64-Bit-Architektur ist also erst in zweiter Linie das Betriebssystem. In erster Linie müssen die interessanten Anwendungen des User-Space auf die 64-Bit-Plattformen portiert werden. Gerade in diesem Bereich bietet die quelloffene Struktur von Linux immense Vorteile im Vergleich zu den gängigen Windows-Systemen.
15.10.1 Installation von Ubuntu 64 

Auf der beiliegenden DVD Nr. 2 befindet sich ein aktuelles Ubuntu in der 64-Bit-Version. Dieses muss zunächst auf einen handelsüblichen CD-Rohling befördert werden. Kopieren Sie dazu das Abbild in ein Verzeichnis Ihres Rechners. Wenn Sie prüfen möchten, ob das Abbild bit-genau kopiert wurde, sollten Sie dessen MD5-Summe prüfen. Geben Sie dazu Folgendes in ein Terminal ein:
cp /cdrom/isos/ubuntu-11.04-desktop-amd64.iso ~/ cp MD5SUMS_ubuntu ~/ md5sum -c MD5SUMS_ubuntu ubuntu-11.04-desktop-amd64.iso: Ok
Danach folgende Fehlermeldungen, die darauf beruhen, dass nicht alle in der MD5-Datei aufgeführten Ubuntu-ISOs auf der DVD enthalten sind, können Sie getrost ignorieren.
Auf ein Medium brennen
Nun brennen Sie das ISO-Abbild auf einen CD-Rohling. Das geht am schnellsten durch einen Rechtsklick auf die Image-Datei und Auswahl des Menüpunktes Auf CD brennen. Wahlweise funktioniert dies natürlich auch über das Terminal mit folgendem Befehl:
sudo cdrecord -dao dev=/dev/cdrom1 ubuntu-11.04-desktop-amd64.iso
Selbstverständlich können Sie auch das grafische Frontend K3b verwenden. Hier wählen Sie zum Brennen des Abbilds den Menüpunkt Extras • CD-Abbilddatei brennen und navigieren im folgenden Menü zur ISO-Datei. Nach Auswahl der Datei berechnet K3b automatisch die Prüfsumme. Windows-Anwender können das Abbild mit einem der Standardbrennprogramme wie z. B. Nero auf den Rohling befördern. Näheres entnehmen Sie bitte der entsprechenden Programmdokumentation.
Installation – Unterschied zu 32 Bit?
Die eigentliche Installation des 64-Bit-Systems unterscheidet sich in keiner Weise von der Verfahrensweise, die ich im Kapitel »Die Installation« beschrieben habe. Nach der Installation sollten Sie dann die üblichen Nacharbeiten vornehmen (Aktualisierung des Systems, Grafiktreiber etc.), und schon können Sie sich an einem leistungsfähigen 64-Bit-System erfreuen.
15.10.2 Paralleles Arbeiten mit 32-Bit-Software 

Obwohl schon sehr viele Anwendungen auf 64 Bit portiert wurden, sind einige Programme noch nicht vollends angepasst. Es gibt prinzipiell zwei Workarounds:
- das linux32-Paket
– dadurch können 32-Bit-Anwendungen direkt innerhalb einer 64-Bit-Umgebung genutzt werden.
- die chroot-Umgebung
– diese etwas schwieriger zu konfigurierende Variante versagt auch in »kritischen Fällen« nicht.
Wenn Sie native 32-Bit-Anwendungen häufig nutzen möchten, empfiehlt sich der Einsatz einer chroot-Umgebung. Dazu erstellen Sie ein eigenes Verzeichnis /chroot, das als Heimat für die 32-Bit-Umgebung dienen soll. Zunächst müssen Sie die Pakete dchroot und debootstrap installieren. Bei der folgenden Anleitung gehe ich davon aus, dass Sie die Ubuntu-Version 11.04 »Natty Narwhal« verwenden. Wenn Sie dies nicht tun, ändern Sie bitte überall den Begriff natty in maverick, lucid usw. ab. Erstellen Sie nun das Verzeichnis /chroot via sudo mkdir /chroot. Die Konfigurationsdatei /etc/dchroot.conf muss folgendermaßen editiert werden:
# Auszug aus /etc/dchroot.conf natty /chroot
Führen Sie anschließend den Befehl sudo debootstrap --arch i386 natty /chroot/ aus. Auf diese Weise wird ein 32-Bit-System im Verzeichnis /chroot installiert. Nun sind die lokalen Einstellungen anzupassen:
sudo chroot /chroot dpkg-reconfigure locales
Wählen Sie hier den Punkt de_DE.UTF-8 UTF-8. Wenn es hierbei zu Fehlermeldungen kommt, sollten Sie überprüfen, ob Sie das Paket language-pack-de installiert haben.
Quellen anpassen
Außerdem sind die Quellen des Paketsystems anzupassen. Legen Sie dazu per sudo gedit /chroot/etc/apt/sources.list die folgende Datei aus einer neuen Konsole an, und ergänzen Sie die folgenden Zeilen (die deb-Einträge müssen Sie jeweils in eine Zeile schreiben):
# Auszug aus /chroot/etc/apt/sources.list deb http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb http://security.ubuntu.com/ubuntu natty-security main restricted universe multiverse
Es können natürlich auch lokale Mirrors verwendet werden. Zur Aktualisierung Ihres chroot-Systems geben Sie Folgendes innerhalb der chroot-Umgebung ein:
apt-get update apt-get upgrade
Damit wäre Ihr chroot-System aktualisiert. Nun müssen Sie noch die Benutzerstrukturen beider Umgebungen anpassen, was wieder außerhalb der chroot-Umgebung erfolgen muss. Öffnen Sie gegebenenfalls eine neue Konsole, und geben Sie die folgenden Befehle ein:
sudo cp /etc/passwd /chroot/etc/ sudo cp /etc/shadow /chroot/etc/ sudo cp /etc/group /chroot/etc/ sudo cp /etc/sudoers /chroot/etc/ sudo cp /etc/hosts /chroot/etc/
Die Datei /etc/fstab des 64-Bit-Host-Systems müssen Sie folgendermaßen anpassen:
sudo gedit /etc/fstab /home /chroot/home none bind 0 0 /tmp /chroot/tmp none bind 0 0 /dev /chroot/dev none bind 0 0 /proc /chroot/proc proc defaults 0 0 /media/cdrom0 /chroot/media/cdrom0 none bind 0 0 # In einer Zeile: /usr/share/fonts /chroot/usr/share/fonts none bind 0 0
Danach legen Sie zwei Mount-Punkte für das CD-ROM-Laufwerk und für das Font-Verzeichnis in der chroot-Umgebung an:
sudo mkdir /chroot/media/cdrom0 sudo mkdir /chroot/usr/share/fonts
Verlassen Sie die chroot-Umgebung via (Strg) + (D) , und mounten Sie gemäß der Vorgaben in der geänderten Datei /etc/fstab neu: sudo mount -a. Um 32-Bit-Anwendungen in einfacher Weise aus der 64-Bit-Umgebung ausführen zu können, ist es nützlich, das folgende Skript do_dchroot zu erstellen:
sudo gedit /usr/local/bin/do_dchroot # Auszug aus /usr/local/bin/do_dchroot #!/bin/bash /usr/bin/dchroot -d "`echo $0 | sed 's|^.*/||'` $*"
Das Skript muss anschließend mittels sudo chmod 755 /usr/local/bin/do_dchroot ausführbar gemacht werden. Schließlich sollten Sie das Programm Synaptic für die 32-Bit-Umgebung installieren. Öffnen Sie zu diesem Zweck eine neue Konsole, und geben Sie Folgendes ein:
sudo dchroot -d sudo apt-get synaptic sudo ln -s /usr/sbin/synaptic /usr/sbin/synaptic32 exit sudo ln -s /usr/local/bin/do_dchroot /usr/local/bin/synaptic32 sudo synaptic32
An diesem Punkt haben Sie eine funktionsfähige 32-Bit-Umgebung mit der Möglichkeit, über synaptic32 weitere Programme innerhalb der chroot-Umgebung zu installieren. Solche Programme werden dann aus der 64-Bit-Umgebung mit dem Wrapper-Skript do_dchroot ausgeführt. Es empfiehlt sich, die Programme ähnlich wie oben für Synaptic beschrieben im 64-Bit-System zu verlinken. Auf die Schnelle können Sie stets mit dchroot -d <Programm> in die chroot-Umgebung wechseln und ein Programm ausführen. Vergessen Sie anschließend aber nicht, die Umgebung mit dem Befehl exit zu verlassen.
15.10.3 Benchmarking – Vergleich mit 32-Bit-Systemen 

Momentan sind 64-Bit-Systeme insbesondere auf dem Gebiet der Audio- und Video-Encodierung unschlagbar schnell, wenn Programme verwendet werden, die an diese Architektur angepasst wurden. Das ist bei den Programmen des Ubuntu-64-Repositorys der Fall. Legen Sie eine Audio-CD Ihrer Wahl in Ihr CD/DVD-Laufwerk ein, und rippen Sie einen Titel:
cdparanoia <Titelnummer> titel_nr.wav
Folgende Zeilen liefern einen Vergleich der Encodierung des gleichen 5-minütigen Titels auf einem 32-Bit- und einem 64-Bit-Ubuntu-System unter Verwendung identischer Hardware (AMD Athlon64/3200+). Das Beispiel setzt die Installation des Pakets vorbis-tools voraus. Beachten Sie in beiden Fällen den Punkt Elapsed time: Die Encodierung auf dem 64-Bit-System läuft um ca. 30 % schneller ab als auf dem 32-Bit-System.
32-Bit-System
oggenc titel_nr.wav -q 6 -o titel_nr.ogg
...
Done encoding file "titel_nr.ogg"
File length: 5m 03,0s
Elapsed time: 0m 22,5s
Rate: 13,4611
Average bitrate: 184,1 kb/s
64-Bit-System
...
Done encoding file "titel_nr.ogg"
File length: 5m 03,0s
Elapsed time: 0m 15,5s
Rate: 19,6033
Average bitrate: 184,1 kb/s