DVD-Laufwerk drosseln
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Ein lästiges Problem beim Filme schauen ist oft, dass das DVD-Laufwerk beim Abspielen sehr schnell dreht (und damit sehr laut ist), obwohl dies in fast allen Fälle eigentlich nicht notwendig ist. In diesem Artikel werden exemplarisch verschiedene Hilfsprogramme vorgestellt, mit denen man die Geschwindigkeit eines DVD-Laufwerks drosseln kann.
Zuerst sollte man sich im Klaren darüber sein, welches Laufwerk gedrosselt werden soll. Wenn man nur ein DVD-Laufwerk besitzt, lautet die entsprechende Gerätedatei /dev/sr0
, das zweite DVD-Laufwerk wäre dann /dev/sr1
usw.
Vorher sollten aber alle Programme/Aktionen beendet werden, die auf das Laufwerk zugreifen, wie z.B. ein Media-Player.
Hinweis:
Alle Änderungen sind temporär. Das bedeutet: Wenn man den Datenträger aus dem Laufwerk entfernt, wird das Laufwerk auf seine Standardeinstellungen zurückgesetzt! Das Selbe gilt bei einem Neustart des Systems oder einer Neuanmeldung des Benutzers.
Die Einrichtung einer dauerhaften Drosselung ist im letzten Abschnitt Dauerhafte Drosselung beschrieben.
Grundlagen¶
Alle Geschwindigkeiten werden als Vielfaches von 150 KB/s (1x) angegeben. Für eine CD ist die Grundgeschwindigkeit von 150 KB/s zum Abspielen ausreichend. Um eine DVD ruckelfrei abspielen zu können, ist die neunfache Geschwindigkeit (1350 KB/s) erforderlich. Niedrigere Geschwindigkeiten führen zum "Ruckeln" des Bilds (siehe auch DVD).
Nicht alle Laufwerke lassen sich drosseln. Ob die Geschwindigkeit eines Laufwerks verändert werden kann, zeigt die Ausgabe des folgenden Befehls im Terminal [1]:
grep "Can change speed" /proc/sys/dev/cdrom/info
Enthält die Ausgabe eine 0
, werden alle hier beschriebenen Methoden zur Drosselung nicht funktionieren. In diesem Fall hilft nur andere Hardware.
eject¶
Das bei Ubuntu vorinstallierte eject ist ein Werkzeug zum Auswerfen von entfernbaren Datenträger wie CD-ROMs, DVDs, Disketten etc. Es kann aber auch die Geschwindigkeit anpassen. Dazu führt man folgenden Befehl im Terminal aus:
eject -x 9 /dev/sr0
Nach dem Parameter -x
folgt die Geschwindigkeit (als Vielfaches von 150 KB/s), mit der das Laufwerk arbeiten soll. Wenn nur ein Laufwerk installiert/eingebaut ist, kann der Pfad zum Laufwerk weggelassen werden.
hdparm¶
hdparm, ebenfalls bei Ubuntu vorinstalliert, ist ein sehr umfangreiches Steuerungs- und Auslesewerkzeug für PATA- und S-ATA-Laufwerke. Folgenden Befehl führt man im Terminal aus:
sudo hdparm -E 9 /dev/sr0
Nach dem Parameter -E
folgt die Geschwindigkeitsangabe genauso wie bei eject. Des Weiteren muss man ggf. die Gerätedatei, hier /dev/sr0
, durch die gewünschte ersetzen.
setcd¶
Auch mit setcd lässt sich die Geschwindigkeit eines optischen Laufwerks anpassen. Folgendes Paket muss installiert [2] werden:
setcd (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install setcd
Oder mit apturl installieren, Link: apt://setcd
Danach kann man den folgenden Befehl im Terminal ausführen:
setcd -x 9 /dev/sr0
Nach dem Parameter -x
folgt die Geschwindigkeitsangabe genauso wie bei eject. Auch hier muss man ggf. die Gerätedatei anpassen.
Automatisierung¶
Es ist lästig, wenn man jedes Mal beim Einlegen einer DVD die Geschwindigkeit des Laufwerks mit einem der genannten Programme erneut anpassen muss. Als Beispiel für eine Automatisierung dient folgendes Skript:
1 2 | #!/bin/bash eject -x 9 /dev/scd0 |
Dieses Skript wird mit einem Editor [3] und Root-Rechten [4] als /usr/local/bin/dvdspeed gespeichert und ausführbar [5] gemacht.
Dauerhafte Drosselung¶
Alle bisher genannten Maßnahmen sind nur temporär, d.h. die Drosselung wird aufgehoben, sobald das Medium gewechselt wird. Bei manchen Anwendungsfällen kann es jedoch wünschenswert sein, ein Laufwerk dauerhaft zu drosseln (z.B. bei einem reinen HTPC). Das lässt sich recht einfach mit einer udev-Regel erreichen, die bei jedem CD-/DVD-Wechsel die Laufwerksgeschwindigkeit erneut drosselt:
KERNEL=="sr0", ACTION=="change", ENV{DISK_MEDIA_CHANGE}=="1", RUN+="/sbin/hdparm -E 9 /dev/sr0"
Diese Zeile wird mit einem Editor und Root-Rechten in der Datei /etc/udev/rules.d/dvd-speed.rules gespeichert. Dann wird nach jedem Medien-Wechsel in /dev/sr0
automatisch hdparm aufgerufen. Selbstverständlich kann auch eject oder setcd gestartet werden. Bei mehreren Laufwerken muss die Regel bzw. das Gerät angepasst werden, um immer das richtige zu erwischen.
KERNEL=="sr0", ACTION=="change", ENV{DISK_MEDIA_CHANGE}=="1", RUN+="/sbin/hdparm -E 9 /dev/sr0" KERNEL=="sr1", ACTION=="change", ENV{DISK_MEDIA_CHANGE}=="1", RUN+="/sbin/hdparm -E 9 /dev/sr1"
Um die dauerhafte Drosselung wieder zu entfernen, muss die Regel-Datei /etc/udev/rules.d/dvd-speed.rules mit Root-Rechten gelöscht werden.
Links¶
hdparm 🇬🇧 - Manpage