Skip to content

Haltbarkeit von SSDs

Backblaze ist eine amerikanische Firma, die Speicher- und Backupplatz anbietet. In deren Servern sind über 2500 SSDs verbaut. Backblaze fing im Jahr 2018 an, diese Art von Speicher zu nutzen und ersetzt seither die drehenden Platten (HDDs). Nun fragt sich die Firma immer mal wieder, wie belastbar die SSDs im Vergleich zu den HDDs sind. Im letzten Review gibt es einige Antworten dazu.

Dazu vergleicht die Firma Speichermedien, die als so genannte Bootgeräte zum Einsatz kommen und in etwa gleich alt sind. Bootgerät heißt bei Backblaze, dass die Server hiervon gestartet werden. Weiterhin werden Logdateien und temporäre Dateien auf die Speicher geschrieben. Sowohl HDD wie auch SSD vollführen gleiche Aufgaben.

Bisher hatten die Fehlerraten in etwa den gleichen Verlauf. Die SSDs lagen von den Werten leicht unterhalb der HDDs. Dieses Jahr ist nun das fünfte Jahr der Betrachtungen und hier gingen die Zahlen deutlich auseinander. Während bei den HDDs ab dem 5. Jahr ein deutlicher Anstieg der Fehlerraten zu beobachten ist, bleibt der bei den SSDs in etwa gleich.

Vergleich der Fehlerraten zwischen HDDs und SSDs

Auf der Speichertestseite von Backblaze könnt ihr die weitere Entwicklung verfolgen und auch die Rohdaten herunterladen. Die Firma geht derzeit davon aus, dass die Fehlerraten der SSDs zu einem späteren Zeitpunkt steigen und wollen solange einen Blick auf deren SMART-Werte werfen. Ich bin sehr gespannt, wie lange der Vorteil der SSDs anhält und werde hin und wieder mal die Seiten von Backblaze checken.

Fehler beim Aktualisieren in F-Droid

Beim letzten Update von F-Droid gab es Probleme. Updates wurden nicht mehr geladen und stattdessen zeigte das Telefon die Meldung »error getting index file« an. Nach einigem erfolglosen Herumprobieren stieß ich auf den Mastodon-Account von F-Droid. Laut der letzten Meldung versuchten die Entwickler einen anderen Fehler zu beheben. Dies löste dann dieses Problem aus.

Doch wie lässt sich das nun beheben? Ein Hinweis liefert der Blogbeitrag der Entwickler. Sie schreiben, man solle das alte Indexformat aktivieren. Dazu geht ihr im F-Droid auf Optionen. Recht weit unten in den Einstellungen müsst ihr den Expertenmodus aktivieren und dann findet ihr ganz unten den Menüeintrag «Altes Index-Format erzwingen«. Nun lassen sich, wie gewohnt, die Updates herunterladen und installieren.

Viel Spass mit aktueller freier Software auf euren Smartphones.

mutt will jede E-Mail entschlüsseln

E-Mail in muttMein Mailprogramm mutt brachte mich kürzlich zur Verzweiflung. Denn beim Öffnen eines Mailordners wollte die Software jede E-Mail öffnen. Insbesondere bei verschlüsselten Mails wurde immer wieder nach dem Passwort gefragt. Enthielt der Ordner mal keine verschlüsselte E-Mail, so erschien immer noch die Meldung Kann keinen Mailcap-Eintrag für [MIME-Typ] finden.. Der MIME-Typ hängt vom eventuellen Anhang der Mail ab. Beispiele sind image/png, application/pdf oder anderes. Wie lässt sich das Problem nun lösen?

Immerhin wusste ich, dass die Probleme nach einem Update auf Ubuntu 12.04 begannen. Also vermutete ich das Problem bei Ubuntu. Allerdings zeigte ein Debian mit derselben Konfiguration gleiches Verhalten. In der Manpage von mutt suchte ich nach einem Debugging-Schalter. Den gibt es nicht. Jedoch lassen sich systemweite und lokale Variablen deaktivieren.

  1. mutt -n -F /dev/null war der erste Versuch. Der Schalter -n umgeht die systemweite Konfiguration und -F /dev/null legt den Ort der lokalen Konfiguration fest. In dem Fall bekommt mutt ein Dateiendezeichen (EOF) und nutzt also keine Konfiguration. Mit den Einstellungen trat das Verhalten nicht auf. Also zum nächsten Versuch
  2. mutt -F /dev/null nutzt nur die Systemkonfiguration. Auch hier trat das Verhalten nicht auf.
  3. mutt -n nutzt nur die lokale Konfiguration. Also war klar, dass ich in meinen Einstellungen weiter suchen muss.

Bei knapp 100 kB an Konfigurationsdateien ist suchen natürlich leichter gesagt als getan. Glücklicherweise habe ich die Dateien mit source eingebunden. So kam ich vergleichsweise schnell auf eine Datei, die sich um die Farbgestaltung der Einträge im Index kümmert. Mit klassischer Binärsuche ging es dann weiter und nach etwa zehn Schritten fand ich den Übeltäter.

color index black black   “! ~b .”

Dieser Eintrag macht bestimmte E-Mails »unsichtbar«. Ich erhalte immermal wieder Spam, der keinerlei Text im Nachrichtenteil enthält. Die obige Regel weist mutt an, den Body (~b) zu durchsuchen. Der Punkt trifft auf ein beliebiges Zeichen zu und das Ausrufezeichen negiert das Ganze. Insgesamt passt diese Regel also auf E-Mail, die keine Zeichen im Body haben. Alle diese E-Mails werden schwarz auf schwarzem Hintergrund gezeichnet.

Jetzt ist also klar, warum mutt unbedingt in diverse E-Mails schauen wollte. Denn nur so kann diese Regel angewendet werden. Also habe ich die zunächst rausgeschmissen. Sven Guckes wies mich später darauf hin, dass mit ~G PGP-Nachrichten ausgeschlossen werden können.

Ich bin mit meinem Mailprogramm nun wieder glücklich und freue mich auf neue E-Mails. :-) 

Fehlersuche

Der Bug mit der Nummer 1926 raubt mir derzeit ein wenig den Nerv. Ich sammle Informationen, um diesem ein wenig auf den Grund zu gehen. Dazu tippte ich die folgende Zeile in meine Shell ein:

for file in `find extra-infos-2011-02 -type f`; do
   awk ‘BEGIN {RS=“” } /history (2000-01-01|2008-09-11|…)/ { print $0 }’ \
     >> wrong.2010-07
 done

Die Datei wollte einfach nicht voll werden. Da knapp über 200000 Dateien durchsucht werden, machte ich mir anfangs keine Gedanken. Irgendwann warf ich einen langen Blick auf die Eingabe, dann noch einen und dann noch einen. Schließlich fiel mir auf, dass $file nicht referenziert wird. Kaum macht man es richtig, schon wird die Datei mit Inhalten befüllt. :-)

Fehlersuche beim Linux-Kernel (Bootprobleme)

Vor nicht allzu langer Zeit sass ich entspannt bei einem Kaffee und wollte meinen Rechner starten. Einschaltknopf gedrückt und der Bildschirm lächelte mich mit einer Fehlermeldung an:

error: unexpectedly disconnected from boot status daemon
Begin: Waiting for root file system ...

grml, warum muss das ausgerechnet jetzt passieren? Sehr schnell war klar, dass ich an dieser Stelle nicht weiter komme. Also bootete ich einen alten, funktionierenden Kernel und änderte meine grub-Einstellungen entsprechend. Damit lebte ich einige Zeit gut, bis mir mal wieder der Workaround auffiel. Jetzt wollte ich das Problem mal genauer angehen.

Beispielansicht eines Plymouth-Bootscreen

Die Fehlermeldung, die irgendwas von dem Boot Status Daemon erzählte, schien auf plymouth hinzudeuten. Der Sinn der Software ist es, den Bootprozess zu verschönern. Das heißt, es macht schicke Bildchen anstatt der Kernelmeldungen.

Der Bugtracker von Debian hatte einen Eintrag zu meiner Meldung. Die in dem Bugreport genannten Einstellungen änderten bei mir nichts am Problem. In meinem nächstem Versuch wollte ich plymouth deinstallieren. Aber da gab es eine winzige Abhängigkeit zu mountall(8). Der Zufall führte mich zu einem angepasstem Paket, mit dem plymouth deinstalliert werden kann. In freudiger Erwartung startete ich den Rechner neu. Aber es wäre nur zu schön gewesen, wenn sich das Problem so leicht lösen ließe.

Zu diesem Zeitpunkt kam mir in den Sinn, die Bootoptionen quiet und splash zu entfernen. Siehe da, ein wenig mehr kam zum Vorschein:

Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Waiting for root file system ...

Warten, warten und nochmal warten. Oh, nun noch eine BusyBox-Shell:

(initramfs) Gave up waiting for root device. Common problems:
...
ALERT! /dev/disk/by-uuid/.... does not exist. Dropping to a shell!

Nebenbei stellte ich dann fest, dass die Meldung mit dem Boot Status Daemon nur bei einer speziellen Kernelversion auftrat. Die Meldung oben konnte ich mit jeder Standard-Ubuntu-Kernelversion größer als 2.6.32-20 erzeugen. Für mich wäre es viel wichtiger zu erfahren, woher denn diese Meldung stammt!

Ein Hinweis brachte mich dann zu den Mainline-Builds. Das sind spezielle Pakete des Ubuntu Kernelteams, die recht nahe am Original-Kernel sind. Ich versuchte wieder diverse Versionen. Alle brachten mir die Fehlermeldung. Na gut, dann baue ich eben einen eigenen Kernel.

git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
cp /boot/config-2.6.32-24-generic /usr/src/linux-2.6/.config
make oldnoconfig
make deb-pkg
dpkg -i ../linux*.deb
reboot

Beim ersten Reboot startete der Kernel tatsächlich korrekt. Sollte Ubuntu wirklich einen Bug in den eigenen Kernel eingebaut haben? Plötzlich fiel mir ein, dass die Zeile im grub einen kleinen, aber feinen Unterschied zu den restlichen Einträgen aufwies. Ich hatte root=/dev/sda1 angegeben. Alle anderen Einträge trugen root=UUID=.... Also versuchte ich die Änderung bei den anderen Kerneln und es klappte. Jede Kernelversion bootete mit dieser Änderung.

Jetzt muss ich nur noch herausfinden, warum das nicht klappt und ich bin wieder ein glücklicher Mensch. :-)

Das Bild stammt vom Blog Linux und ich

Geany mit dem LaTeX-Plugin

Heute geht es in der Reihe mit einem grafischen Programm weiter. Frank bewirbt schon lange sein Baby Geany. Das ist ein Gtk-basierter Editor. Ich kenne einige Leute, die den gern nutzen. Frank hat für Geany ein LaTeX-Plugin geschrieben. Daher kann der Editor bequem mit LaTeX umgehen.

Nach dem ersten Öffnen des Programms sieht man die Menüleiste und drei Flächen, Symbole, Statusfenster und die Eingabefläche für den Text. Das LaTeX-Plugin arbeitet nicht kontextbezogen, d.h. es ist entweder immer an oder immer aus. Um es zu aktivieren, klickt man auf Werkzeuge -> Plugin Manager (Wieso fehlt hier eigentlich der Trennstrich?) und aktiviert das Feld LaTeX. Damit erscheint im Menü Werkzeuge ein neuer Eintrag LaTeX. Fortan steht das Plugin zur Verfügung.

Beim Öffnen einer leeren Datei passiert zunächst nichts. Startet man beispielsweise mit der Eingabe von \documentclass, so bietet Geany nach den ersten drei Zeichen eine Vervollständigung an. Bei mehreren Optionen kann der Nutzer mit der Cursor- oder Maustaste das Gewünschte wählen. Schön wäre, wenn zusätzlich zum Namen des Befehls geschweifte Klammern eingebaut werden würden. Weiterhin würde ich mir bei Befehlen wie \documentclass oder \usepackage eine Auswahlliste wünschen. Das vereinfacht die Eingabe und vermeidet Fehler.

Eine bequemere Variante ist der LaTeX-Assistent. Er ist über Werkzeuge -> LaTeX -> LaTeX-Assistent zu erreichen. Über ein grafisches Menü kann der Nutzer wählen, welche Klasse, Zeichensatz etc. er benutzen will. Bei der Dokumentklasse bleibt im Menü unklar, welche Klassen (KOMA-Script, Beamer etc.) verwendet werden. Weiterhin gibt es genau eine Brief-, Artikelklasse usw. Während bei der Auswahl von Buch, Artikel und Bericht die KOMA-Script-Klassen benutzt werden, wird bei der Auswahl von Brief die Klasse letter eingebunden. Ich würde mir entweder mehr Auswahlmöglichkeiten oder eine bessere Bezeichnung im Menü wünschen. Die Auswahl des Zeichensatzes birgt einen Bug. Wählt der Nutzer Sonstiges als Zeichensatz (Was soll das sein?), so ergibt sich im Dokument die Ausgabe \usepackage[% \title{}, d.h. hier fehlt eine schließende Klammer und LaTeX wird beim Übersetzen auf die Nase fallen. Das Menüfeld Schriftgröße bietet zum einen eine Vorauswahl, lässt sich aber auch frei beschreiben. Der Grund wird mir nicht so recht klar. Schließlich sind als Papiergröße nur A4, A5 und A6 gelistet. Gerade die gängigere Letter-Größe fehlt.

Für den regelmäßigen Schreiber von LaTeX-Texten empfiehlt sich ein Template. Diese Datei sollte im Verzeichnis ~/.config/geany/templates/files liegen und die Dateiendung .tex besitzen. In dem Falle kann die Vorlage über Datei -> Neu (aus Vorlage) gewählt werden.

Schließlich kann Geany bestehende Dateien öffnen. ;-) Dabei liest der Editor die Datei einmal komplett durch und versucht, Informationen zu extrahieren. Diese finden sich in der linken Fläche Symbole. Dort sind Kommandos, Abschnittsüberschriften, Labels etc. gelistet. Ich finde, gerade die Auflistung der Abschnittsüberschriften hinterlässt mehr Verwirrung als Klarheit. Denn zum einen sind diese alphabetisch geordnet und dann auch getrennt nach Überschriftsebenen. Mir wäre es lieber, wenn sie nach dem Vorkommen im Text geordnet wären. Die Liste der Umgebungen ist für mich ebenfalls ohne Nutzwert, denn diese ist wieder alphabetisch geordnet und verzeichnet nur den Namen der Umgebung (itemize, figure, table etc.).

Nun kommt der große Moment, wo wir Text eingeben können. Doch schon die Eingabe einer Überschrift erscheint schwierig. Ich fand keine Hilfe bei der Eingabe, außer der bereits oben erwähnten Auswahlliste bei der Eingabe von drei Buchstaben. Doch gerade auf einer deutschen Tastatur führt die häufige Eingabe des Backslash bei mir zu Schmerzen in der Hand. Daher versuche ich das zu umgehen und Geany ist dann direkt körperlich anstrengend. Umgebungen können mittels des Menüs eingegeben werden. Meines Wissens gibt es hierfür keine standardmäßige Tastaturkombination. Wenn man sich eine anlegt, wird die Arbeit zumindest ein wenig erleichtert. Jedoch wäre es sehr wünschenswert, wenn bei der Auswahl einer Liste gleich ein erstes \item eingefügt würde und bei der table-Umgebung könnten ähnlich zu AUCTeX gleich diverse Optionen abgefragt werden.

Beim Mathesatz sieht die Lage nicht viel besser aus. Im wesentlichen muss jedes Zeichen per Hand eingegeben werden. Das ist eine Menge Tipparbeit und recht umständlich. Gerade für Anfänger kann ich daher Geany nicht empfehlen. Denn ich vermute, die werden schnell gefrustet sein.

Alles in allem ist Geany für mich der erste Editor, den ich im wesentlichen für nicht benutzbar halte (wohlgemerkt für meine Zwecke!). Außer wenigen kleinen Änderungen in einer Datei möchte ich keine größeren Änderungen an einer LaTeX-Datei vornehmen müssen. Denn das fühlt sich umständlich an und wird in meinem Fall mit der Zeit schmerzvoll.

cronjob