|
Seit ich mein Firefoxprofil in einem tmpfs genutzt habe, wuchs der Wunsch, noch viel mehr Daten in den Arbeitsspeicher zu verlagern.
Und dann war die Zeit reif, für eine Hardwareaufrüstung. SSD oder RAM? Die Entscheidung viel auf RAM, da SSDs noch immer einen experimentellen Eindruck machen. Zwei mal 4GB DDR3 Speicher sind genug für ein schlankes System.
Falls die Verzeichnisse /etc und /lib auf die Ramdisk sollen, ist die Ramdisk als Rootlaufwerk zu erwägen. Bei meinem ersten Versuch gab es das Problem, dass einige Scripte, welche für das ordentliche Herunterfahren verantwortlich sind, die Ramdisk, auf der sie selbst lagen, aushängten. Das führte zu unsauberem Herunterfahren. Jetzt ist / auf einem tmpfs und nur ein paar selten genutzte Verzeichnisse und statische Daten sind während der Laufzeit mit mount -o bind auf einer Festplatte ruhend ins System eingebunden.
Wie fährt man ein solches System hoch? Da kommt das Initramfs ins Spiel. Eine gewisse Sicherheit im Umgang mit einem Initramfs ist in vielen Situationen nützlich. Ich bevorzuge das Einkompilieren in den Kernel, aber das ist Geschmackssache. Grob beschrieben wird im Initramfs das tmpfs eingehängt und der Inhalt mit z.B. cp -a wiederhergestellt. Dann kommen da noch so Sachen rein, wie mount -o bind. Es wird praktisch das System aus den Einzelteilen zusammengesetzt.
Zum sichern der Ramdisk bietet sich rsync an. Dann geht das Herunterfahren gewohnt schnell. Wo wir auch schon bei einem sehr großen Nachteil dieses Setups wären: Der extrem langsame Start. Das anfängliche Rücksichern der Ramdisk dauert lange genug, um Kaffee kochen zu können. Fünf Minuten sollte man bei einer normalen Festplatte schon einplanen. Die Rücksicherung könnte man mit Hilfe einer kleinen, aber schnellen SSD beschleunigen.
Zur Zeit sind von meinem System etwa 3,8GB im RAM. Die Ramdisk hat eine Größe von 6GB - so bleibt noch genug Platz für speicherhungrige Programme. In naher Zukunft werde ich nochmal 8GB zustecken und evtl. eine SSD zur Sicherung verwenden.
Mein Fazit bisher: Himmlisch! So wollte ich meinen Computer immer nutzen können. Es gibt praktisch keine Verzögerung mehr beim Starten von Programmen und den meisten anderen Aktionen. Während der Nutzung kann auch schonmal die Festplatte ausgehen, solange man die statischen Daten nicht nutzt.
Ein Tip: Bei dieser Art von zusammengesetztem System ist ein einfach zu wartendes Zweitsystem sehr sinnvoll. Ich habe Fedora13 auf einer Partition installiert. So lässt sich die Verwendung von LiveCDs vermeiden und das System gut für die Wartungsarbeiten spezialiseren.
update: Man kann den Inhalt der Ramdisk auch in ein tar Archiv packen. Dann dauert das Herunterfahren ewig. Das Hochfahren dagegen geht zügig.
update2: Nun konnte ich schon ein wenig Erfahrung hiermit sammeln. Für die Ramdiskwiederherstellung habe ich jetzt eine Kombination aus rsync und tar laufen. Beim Herunterfahren werden die entsprechenden Verzeichnisse nur mit rsync gesichert und nach Bedarf ein tar-Archiv während der Laufzeit angelegt. Beim Hochfahren wird erst das tar-Archiv entpackt und anschließend mit rsync auf den aktuellen Stand gebracht. Die Zeiten sind jetzt wirklich gut. Hochfahren, bzw. Prehochfahren dauert jetzt etwa 2 Minuten, also etwa so lange wie ein zugemülltes Windows braucht. . Das tar-Archiv aktualisiere ich mit einem einfachen Script nach größeren Systemupdates. Das ganze ist alltagstauglich, aber es bleibt speziell und ist sicher nicht für jeden geeignet. Inzwischen ist der Arbeitsspeicher auf 16GB angewachsen (mehr kann der Chipsatz nicht).
In ein Problem bin ich noch gelaufen. Der Kernel meldete mir einmal, das Dateisystem sei voll, obwohl noch Platz war. Da waren die inodes voll. Überprüfbar mit: df -i . Die Zahl der inodes können mit einer Mountoption variiert werden. |