Linux – SSD – TRIM aktivieren – dm-crypt, lvm, ext4, grub

Letztens habe ich meinem Media-PC eine 64 GB SSD spendiert. Bekanntlich ist bei SSDs eine gute Garbage Collection und/oder TRIM vonnöten – sonst kann es zu Performanceverlusten und zu einer verkürzten Lebensdauer kommen!

Hintergrund: Das Dateisystem streicht „gelöschte“ Dateien nur aus dem Inhaltsverzeichnis, die eigentliche Datei aber bleibt weiter gespeichert. Nach einiger Zeit der Nutzung ist damit jeder Bereich des Laufwerks mit entweder aktuellen, oder noch nicht tatsächlich gelöschten Inhalten belegt. Bei Festplatten war das kein Problem, da sie ihre Magnetisierungszustände direkt ineinander übergehen lassen können. Flashspeicher hingegen müssen die noch gefüllten Flashzellen erst leeren, um sie im zweiten Durchgang mit der neuen Datei zu beschreiben. Diese doppelte Arbeit ist anhand einer dann bis zu doppelt so langen Schreibzeit nachvollziehbar.

Quelle: Wikipedia.de – Solid-State-Drive – Performanceverluste

Die Crucial m4 hat zwar eine gute Garbage Collection, aber ich habe bereits unter Mac OS X mit aktiviertem TRIM bessere Benchmarkergebnisse erzielen können als ohne. Daher wollte ich auf meinem Arch Linux HTPC auch Trim aktivieren.Crucial SSD Logo - Linux - SSD - TRIM aktivieren - dm-crypt, lvm, ext4, grub

Grundsätzlich unterstützt Linux zwei Arten des Discards [TRIM] (discard = verwerfen):

  • Batched Discard – Der Befehl fstrim /mnt/point/ weist das Dateisystem an, ungenutzte Bereiche zu suchen und diese dem Controller der SSD zu melden. Dieser Befehl muss sporadisch und manuell vom Anwender ausgeführt werden.
  • Online Discard – Der Kernel informiert das Laufwerk sofort, wenn Speicherbereiche durch Löschen von Dateien frei werden. Diese Funktion ist von Haus aus deaktiviert und muss vom Anwender in /etc/fstab mit der Option -o discard eingeschaltet werden.

Quelle: wiki.ubuntuusers.de – SSD

Allerdings wird Online Discard nicht gerade empfohlen, aufgrund der zahlreichen TRIM-Befehle kann auch hier die Leistung bzw. Haltbarkeit der SSD einbrechen! Daher sollte man Batched Discard verwenden, diesen kann man automatisiert per Crontab ausführen.

Damit die TRIM-Befehle korrekt bei der SSD ankommen Linux – SSD – TRIM aktivieren – dm-crypt, lvm, ext4, grub weiterlesen

Dreambox/Linux – Festplatte automatisch in den Standby schicken – hdparm

Vor kurzem habe ich meiner Dreambox (800 HD se) eine 2,5 Zoll Festplatte verpasst. Das Wichtigste für mich bei dieser Aktion war, dass die Festplatte automatisch in den Standby (Spindown) geht und somit weniger Strom verbraucht.
dreambox newnigma2 festplatte standby 01 - Dreambox/Linux - Festplatte automatisch in den Standby schicken - hdparm

In den Festplatten-Einstellungen von NewNigma2 (Enigma2) kann man den Festplatten-Standby nach XX Minuten einstellen. Im Festplattenauswahl-Menü wählt man dazu einfach die jeweilige HDD aus und drückt auf Einstellungen (Blau).

dreambox newnigma2 festplatte standby 02 - Dreambox/Linux - Festplatte automatisch in den Standby schicken - hdparm

Aber ACHTUNG: … man sollte natürlich keine Picons auf der Festplatte haben, sonst Dreambox/Linux – Festplatte automatisch in den Standby schicken – hdparm weiterlesen

Linux – Probleme nach dem Bereitschaftsmodus – Fernbedienung, Netzwerk und Sound funktionieren nicht

Da sich nun unsere Media-PCs mit der Fernbedienung (Remote Control) aus dem STR aufwecken lassen, lösen wir nun die Probleme, die mit dem Bereitschaftsmodus zu tun haben. Nach dem Suspend (Bereitschaft, S3, Suspend-to-RAM, STR) kommt es bei fast jeder Linux-Distribution, je nach Hardware, zu Problemen. Die häufigsten Probleme machen Netzwerkkarten und Soundkarten, in diesem speziellen Fall (Media-PC) auch die Fernbedienung bzw. der IR-Empfänger.

xbmc shutdown menu suspend 650x365 - Linux - Probleme nach dem Bereitschaftsmodus - Fernbedienung, Netzwerk und Sound funktionieren nicht

Wählt man im XBMC den Bereitschaftsmodus, so wird im Hintergrund pm-suspend (Inhalt von pm-utils) ausgeführt.

pm-utils steht für PowerManagement-Utils. Dieses Paket ist Bestandteil aller Ubuntu-Distributionen und wurde inzwischen zum Standard für den Wechsel in unterschiedliche Energiesparmodi. Aufgrund mehrerer Änderungen in den letzten Versionen des Pakets pm-utils ist nicht gewährleistet, dass alle hier genannten Pfade und Inhalte zu 100% auf jede der o.g. Ubuntu-Versionen passen. Die allermeisten Inhalte sind dennoch korrekt, allgemeingültig und in der aktuellen Ubuntu-Version zu finden.


Quelle: wiki.ubuntuusers.de – pm-utils

Netzwerk

Die meisten Probleme mit den Netzwerkkarten kann man lösen, wenn das Treiber-Modul vor dem Suspend entladen wird – beim Resume wird das Modul natürlich wieder geladen. Dieses Modul (in meinem Fall forcedeth) sollte in der /etc/pm/config.d/00sleep_module eingetragen werden.

vi /etc/pm/config.d/00sleep_module
SUSPEND_MODULES="$SUSPEND_MODULES forcedeth"

Welches Modul ihr verwendet, findet ihr mit diesem Befehl heraus.  Linux – Probleme nach dem Bereitschaftsmodus – Fernbedienung, Netzwerk und Sound funktionieren nicht weiterlesen

Linux – XBMC aus Bereitschaftsmodus per MCE-Fernbedienung aufwecken

Letzte Woche habe ich mich damit beschäftigt, meinen XBMC Media-PC per MCE-Fernbedienung (Logitech Harmony) aufzuwecken. Out-of-the-Box funktioniert es meiner Erfahrung nach, weder unter Ubuntu 10.04, 11.10 noch unter dem aktuellsten Arch Linux (Stand: 03.02.2012).

xbmc shutdown menu suspend 650x365 - Linux - XBMC aus Bereitschaftsmodus per MCE-Fernbedienung aufwecken

Mit den Standardeinstellungen kann man XBMC zwar über die Harmony (Remote Control) in den Bereitschaftsmodus (pm-suspend, S3, Suspend-to-RAM) schicken, aber nicht wieder aufwecken – stattdessen muss der Powerknopf am Gehäuse des Media-PCs gedrückt werden.

Unter Linux (Kernel 3.2) muss noch das Aufwachen (WakeUp) per USB (IR-RC6-Empfänger) aktiviert werden.

HowTo/Tutorial

Dazu checken wir erstmal, ob das Aufwecken per USB (in meinem Fall USB0, USB2, US15, US12) aktiviert ist.

cat /proc/acpi/wakeup
...
USB0 S4 *disabled pci:0000:00:04.0
USB2 S4 *disabled pci:0000:00:04.1
US15 S4 *disabled pci:0000:00:06.0
US12 S4 *disabled pci:0000:00:06.1
...

Sollten diese deaktiviert (disabled) sein, so müssen wir diese aktivieren.

echo "USB0" > /proc/acpi/wakeup
echo "USB2" > /proc/acpi/wakeup
echo "US15" > /proc/acpi/wakeup
echo "US12" > /proc/acpi/wakeup

Um es automatisch beim Starten prüfen zu lassen, können wir … Linux – XBMC aus Bereitschaftsmodus per MCE-Fernbedienung aufwecken weiterlesen

Arch Linux – Xorg – deutsches Tastaturlayout – Logitech K340 Tastatur schnurlos

Sers, ich hatte ein kleines – stranges – Problem mit dem deutschen Tastaturlayout für die schnurlose Logitech K340 Tastatur (Unifying-Empfänger). Scheinbar erkennt Xorg die Tastatur nicht als normales Keyboard, somit zieht die Einstellung (XkbLayout) unter /etc/X11/xorg.conf.d/10-evdev.conf nicht!

Section "InputClass"
        Identifier "evdev keyboard catchall"
        MatchIsKeyboard "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
        Option "XkbLayout" "de"
EndSection

Oder auch nach deutschem Arch Linux Wiki /etc/X11/xorg.conf.d/20-keyboard.conf.

Section "InputClass"
        Identifier "keyboard"
        MatchIsKeyboard "yes"
        Option "XkbLayout" "de"
        Option "XkbVariant" "nodeadkeys"
EndSection

In der Desktopumgebung, in meinem Fall Openbox, hatte ich dennoch das englische Tastaturlayout. Spaßeshalber habe ich dann eine kabelgebundene Tastatur angeschlossen, schwub-die-wub hatte ich das deutsche Tastaturlayout. *strange*

Der Befehl …

setxkbmap de

… stellt mir dann dennoch das deutsche Tastaturlayout für die K340 im X-Server ein. Damit der Befehl automatisch beim Starten ausgeführt wird, habe ich ihn in die Openbox Autostart-Datei (/home/USER/.config/openbox/autostart oder /etc/xdg/openbox/autostart) geschrieben.

Eigentlich ist das Problem so banal, dass sich der Artikel dafür gar nicht lohnt, aber ich wollte es dokumentiert wissen.  🙄