Bestimmte Programme suchen /dev/dvd
standardmäßig nach DVDs. Wenn ich meinen Computer zum ersten Mal ohne eingelegte DVD starte, /dev/dvd
existiert er und zeigt auf die richtige Stelle ( /dev/sr0
). Wenn ich jedoch eine DVD einlege, /dev/dvd
verschwindet sie. Ich möchte, dass es bleibt, damit ich nicht /dev/sr0
in Programmen navigieren muss , die nach DVDs suchen. Wie stelle ich sicher, dass der /dev/dvd
Symlink vorhanden ist und auf die richtige Stelle verweist?
Es sieht so aus, als könnte ich etwas hinzufügen /etc/udev/rules.d/70-persistent-cd.rules
. Diese Site enthält einige Beispiele, aber in der 70-persistent-cd.rules
Datei steht "Fügen Sie das Flag ENV {GENERATED} = 1 zu Ihren eigenen Regeln hinzu", was nicht Teil der Beispiele ist. Die man 7 udev
Seite ist für mich undurchdringlich und ich bin nicht überzeugt, dass die verlinkte Seite 100% der Informationen enthält, die ich benötige.
Was kann ich also auf einem modernen Ubuntu 12.04-System (oder höher) tun, damit es /dev/dvd
immer existiert und auf das richtige Gerät verweist?
BEARBEITEN: Ist es so einfach wie das Hinzufügen ENV{GENERATED}=1
zu den Regeln auf der verlinkten Seite, ungefähr so:
SUBSYSTEM=="block", KERNEL=="sr0", SYMLINK+="dvd", GROUP="cdrom", ENV{GENERATED}=1
Ist das die richtige Information für modernes Ubuntu? Was ENV{GENERATED}
macht man dort, wenn es nicht generiert, sondern handgeschrieben ist?
Antworten:
Dieses Tutorial erklärt sehr schön, wie man macht, was man will:
Demnach gibt es zwei Ansätze zum Erstellen von Symlinks. Der erste besteht darin, den Modellnamen und die Seriennummer zu verwenden:
Auf diese Weise bleibt der Symlink auch dann korrekt, wenn Sie das Laufwerk an eine andere Position auf dem IDE-Bus verschieben. Der
/dev/dvd
Symlink wird jedoch nicht erstellt, wenn Sie das Laufwerk austauschen.Die zweite basiert auf der Position des Geräts am Bus:
Auf diese Weise bleibt der Symlink auch dann korrekt, wenn Sie Laufwerke durch andere Modelle ersetzen, diese jedoch an denselben Positionen auf dem IDE-Bus platzieren. Der
ENV{ID_TYPE}
Schlüssel stellt sicher, dass der Symlink verschwindet, wenn Sie etwas anderes als eine DVD in diese Position auf dem Bus legen.Sie können die Werte für die finden
ID_MODEL
,ID_SERIAL
,ID_TYPE
und mitID_PATH
dem folgenden Befehl (derudevtest
Befehl wie in Tutorial nicht funktioniert - mehr - in Ubuntu?):Der
SUBSYSTEM=="block"
Schlüssel wird benötigt, um zu vermeiden, dass generische SCSI-Geräte übereinstimmen. Ohne diese Option zeigt der Symlink im Fall einer SCSI-DVD manchmal auf die richtigen/dev/sr0
Geräte und manchmal auf das/dev/sg0
, was falsch ist.Der
ENV{GENERATED}="1"
Schlüssel wird benötigt, um zu verhindern, dass die udev-75-cd-aliases-generator.rules
Datei Ihre benutzerdefinierten Regeln überschreibt.quelle
/dev/dvd
Symlink in den letzten Monaten auf magische Weise selbst repariert hat. Ich habe auch in diesem Fehler gelesen, dass/dev/dvd
die Tage gezählt sind. Naja. Im Moment scheint Ihre Antwort alle Informationen zu enthalten, die zur Behebung dieses Problems erforderlich sind.Ich fand dies in einem Fedora-Forum kann helfen:
Erstellen einer Shell-Skriptdatei Geben Sie in diese Datei Folgendes ein:
Stellen Sie sicher, dass die Datei ausführbar ist:
Wenn Sie die Route rc.local verwenden möchten, müssen Sie dies auch als root tun:
weil es nicht standardmäßig aktiviert ist
Quelle: http://forums.fedoraforum.org/showthread.php?t=295048
--------- Der heutzutage bevorzugte Weg wäre eine UDev-Regel --------------
Fügen Sie basierend auf /lib/udev/rules.d/60-cdrom_id.rules, das den symbolischen Link / dev / cdrom erstellt, eine Datei /etc/udev/rules.d/60-dvd.rules hinzu, die Folgendes enthält:
quelle