/ Dev / dvd'yi nasıl düzgün bir şekilde oluşturabilirim?


10

Bazı programlar /dev/dvdDVD'leri bulmak için varsayılan olarak arar . Bilgisayarımı DVD takılı olmadan ilk başlattığımda, /dev/dvdvar ve doğru yeri gösteriyor ( /dev/sr0). Ancak, bir DVD /dev/dvdtaktığımda kayboluyor. Buralarda kalmasını istiyorum, bu yüzden /dev/sr0DVD arayan programlara gitmem gerekmiyor . /dev/dvdSymlink'in var olduğundan ve doğru yeri gösterdiğinden nasıl emin olabilirim ?

Görünüşe göre bir şey ekleyebilirim /etc/udev/rules.d/70-persistent-cd.rules. Bu site birkaç örnek veriyor, ancak 70-persistent-cd.rulesdosyada örneklerin bir parçası olmayan "ENV {GENERATED} = 1 bayrağını kendi kurallarınıza ekleyin" yazıyor. man 7 udevSayfa bana aşılmaz olduğunu ve bağlantılı sayfa bilgiler ihtiyacının% 100'ünü veriyor ikna olmadım.

Peki, modern bir Ubuntu 12.04 (veya üstü) sisteminde /dev/dvdher zaman var olmak ve doğru cihazı işaret etmek için ne yapabilirim ?

DÜZENLEME: ENV{GENERATED}=1Bağlantılı sayfadaki kurallara eklemek kadar basit mi, şöyle :

SUBSYSTEM=="block", KERNEL=="sr0", SYMLINK+="dvd", GROUP="cdrom", ENV{GENERATED}=1

Bu modern Ubuntu için doğru bilgi mi? ENV{GENERATED}Üretilmediğinde, ancak elle yazıldığında orada ne yapıyor?


Aynı sorunu bir Dell Inspiron 660'larda da gördüm. Bu sorun için daha iyi bir cevap olsaydı.
Cerin

Yanıtlar:


8

Bu eğitici, istediğinizi nasıl yapacağınızı çok güzel açıklıyor:

Buna göre, sembolik oluşturmak için iki yaklaşım vardır. Birincisi model adını ve seri numarasını kullanmaktır:

SUBSYSTEM=="block", ENV{ID_MODEL}=="...", ENV{ID_SERIAL}=="...", ENV{GENERATED}="1", SYMLINK+="dvd"

Bu şekilde, sürücüyü IDE veri yolundaki farklı konumlara taşımanız bile sistem bağlantısı doğru kalır, ancak /dev/dvdsürücüyü değiştirirseniz sistem bağlantısı oluşturulmaz.

İkincisi, cihazın veri yolundaki konumuna dayanır:

SUBSYSTEM=="block", ENV{ID_TYPE}=="...", ENV{ID_PATH}=="pci-...", ENV{GENERATED}="1", SYMLINK+="dvd"

Bu şekilde, sürücüleri farklı modellerle değiştirseniz bile, IDE veriyolunda aynı konumlara yerleştirseniz bile, sembolik bağlantı doğru kalır. ENV{ID_TYPE}Anahtar otobüste o konumda bir DVD dışında bir şey koyarsanız sembolik link kaybolur emin kılar.

Sen değerlerini bulabilirsiniz ID_MODEL, ID_SERIAL, ID_TYPEve ID_PATH(aşağıdaki komutu kullanarak udevtest? - artık - eser yok öğretici olduğu gibi komuta Ubuntu):

udevadm info --query=all --name=sr0

SUBSYSTEM=="block"Anahtar SCSI jenerik cihazları eşleşen kaçınmak için gereklidir. Onsuz, SCSI DVD durumunda, symlink bazen doğru /dev/sr0cihazları ve bazen /dev/sg0de yanlış olanı gösterecektir .

ENV{GENERATED}="1"Anahtar Udev önlemek için gereklidir 75-cd-aliases-generator.rulesözel kurallarını geçersiz kılma dosyayı.


Tüm bilgiler için teşekkürler. Bu kurallardan bazılarını denemeye gittim, ancak /dev/dvdsembolik bağımın son birkaç ay içinde sihirli bir şekilde kendini düzelttiğini buldum . Bu hatayı da /dev/dvdgünlerin sayılı olduğunu okudum . Oh iyi. Şimdilik, cevabınız bu sorunu çözmek için gerekli tüm bilgileri veriyor gibi görünüyor.
chazomaticus

0

Bunu bir fedora forumda yardımcı olabilir buldum:

Kabuk komut dosyası oluşturma Bu dosyaya şunu koyun:

#!/bin/bash
ln -s /dev/sr0 /dev/dvd

Dosyanın çalıştırılabilir olduğundan emin olun:

sudo chmod +x /etc/rc.d/rc.local

Rc.local rotasını kullanacaksanız, bunu kök olarak da yapmanız gerekir:

systemctl enable rc-local.service

çünkü varsayılan olarak etkin değildir

kaynak: http://forums.fedoraforum.org/showthread.php?t=295048

--------- Bugünlerde tercih edilen yol bir UDev kuralı olurdu --------------

/Lib / cdrom sembolik bağlantısını oluşturan /lib/udev/rules.d/60-cdrom_id.rules temel alınarak aşağıdakileri içeren bir dosya /etc/udev/rules.d/60-dvd.rules eklemeyi deneyin:

KERNEL=="sr0", SYMLINK+="dvd", OPTIONS+="link_priority=-100"
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.