Vor einigen Tagen kam die Beta von Ubuntu 9.04 Jaunty Jackalope raus. Da es nun auch mit meiner Grafikkarte funktionieren soll und mein Rechner dringend eine Neuinstallation (bzw. gründliches Aufräumen des Systems) nötig hatte, hab ich beschlossen dieses Wochenende dafür zu nutzen, es zu installieren und zu testen. Und weil ich risikofreudig war, hab ich auch gleich die 64-Bit-Version installiert.

Soweit so gut, alle meine Standardprogramme gehen, ich kann Videos abspielen, immer noch mehr schlecht als recht, aber es funktioniert etwas besser als unter Intrepid. Adobe Air hab ich nicht zum Laufen gekriegt, aber damit kann ich leben.

Ein großes Problem tat sich aber bald auf: Ich lese meine RSS-Feeds mit Liferea. Und das funktionierte nur quälend langsam, die Festplatte ratterte die ganze Zeit. Der Schalter --debug zeigte jede Menge Datenbankzugriffe, und jeder Einzelne schien den Rechner unglaublich anzustrengen. Liferea aus den Quellen selber kompilieren brachte keine Besserung. Kurze Recherche im Internet zeigt, dass scheinbar in sqlite was verstellt wurde, sodass der jede kleine Änderung sofort auf die Festplatte schreiben will, was bremst.

Also, Bock drauf, sqlite auch noch selber zu kompilieren hatte ich keinen, also hab ich mir überlegt, dass das ganze doch mit ner Ramdisk besser gehen sollte. Das ist das erste Mal dass ich ne Ramdisk gemacht hab, darum folgt eine ausführliche Erklärung:

Zunächst hab ich das Verzeichnis /mnt/ramdisk angelegt. Dann sudo mkfs /dev/ram0 um die erste Ramdisk die mir das System anbietet zu formatieren – glücklicherweise hat die gleich 64MB, was für Liferea absolut ausreichend ist. sudo mount /dev/ram0 /mnt/ramdisk bindet die Disk ein. Nun hab ich das Verzeichnist ~/.liferea_1.4 nach /mnt/ramdisk/liferea_1.4 (ohne Punkt, damit ich es besser fressen kann) verschoben, und mit ln -s /mnt/ramdisk/liferea_1.4 ~/.liferea_1.4 in meinem Home-Ordner verlinkt, damit es Liferea auch findet.

Nun, so eine Ramdisk existiert natürlich nur so lange der Rechner läuft, und die Daten sind weg, wenn man den Rechner ausschaltet. Um die Daten beim beenden von Liferea zu sichern, hab ich in der Datei /usr/bin/liferea die Zeile exec $DEBUGGER... auskommentiert und folgendes hinzugefügt:

<span style="line-height:55%;">$dist_bin/liferea-bin $params

cd /mnt/ramdisk/
rm /home/ebrnd/liferea_data.tar.gz
tar -czvf /home/ebrnd/liferea_data.tar.gz .liferea_1.4</span>

Das packt den Ordner .liferea_1.4 in eine tar.gz-Datei in meinem Homeordner, damit der beim nächsten Booten noch da ist.

Um ihn dann wiederhierzustellen, hab ich meiner /etc/rc.local folgendes hinzugefügt:

<span style="line-height:55%;">mkfs /dev/ram0
mount /dev/ram0 /mnt/ramdisk
cd /mnt/ramdisk
tar -xzvf /home/ebrnd/liferea_data.tar.gz
chown --recursive ebrnd:ebrnd /mnt/ramdisk/.liferea_1.4</span>

Das muss vor die Zeile “exit 0“. Und beim Nachmachen muss man natülich den eigenen Benutzernamen einsetzen.

Liferea läuft jetzt schneller als je zuvor, man muss nur drauf achten, es von Hand zu beenden, bevor man den Rechner runterfährt. Ich muss nur dran denken, den ganzen Klumpatsch wieder zu entfernen, wenn das Problem mit der Datenbank gefixt wird. Oder ich lass es so, Liferea war ja generell etwas träge.