Program tertentu mencari /dev/dvd
secara default untuk menemukan DVD. Ketika saya pertama kali mem-boot komputer saya tanpa memasukkan DVD, /dev/dvd
ada dan menunjuk ke tempat yang benar ( /dev/sr0
). Namun, ketika saya memasukkan DVD, /dev/dvd
menghilang. Saya ingin itu tetap ada sehingga saya tidak harus menavigasi ke /dev/sr0
dalam program yang mencari DVD. Bagaimana saya memastikan bahwa /dev/dvd
symlink ada dan menunjuk ke tempat yang tepat?
Sepertinya saya dapat menambahkan sesuatu /etc/udev/rules.d/70-persistent-cd.rules
. Situs ini memberikan beberapa contoh, tetapi 70-persistent-cd.rules
file tersebut mengatakan "tambahkan bendera ENV {GENERATED} = 1 ke aturan Anda sendiri", yang bukan bagian dari contoh. The man 7 udev
Halaman ini bisa ditembus dengan saya, dan saya tidak yakin halaman terkait memberikan 100% dari informasi yang saya butuhkan.
Jadi, apa yang dapat saya lakukan pada sistem modern, Ubuntu 12.04 (atau lebih baru) agar /dev/dvd
selalu ada dan menunjuk ke perangkat yang tepat?
EDIT: Apakah sesederhana menambahkan ENV{GENERATED}=1
aturan di halaman tertaut, sesuatu seperti ini:
SUBSYSTEM=="block", KERNEL=="sr0", SYMLINK+="dvd", GROUP="cdrom", ENV{GENERATED}=1
Apakah itu informasi yang tepat untuk Ubuntu modern? Apa yang ENV{GENERATED}
dilakukan di sana, ketika itu tidak dihasilkan, tetapi ditulis tangan?
Jawaban:
Tutorial ini menjelaskan dengan sangat bagus bagaimana melakukan apa yang Anda inginkan:
Menurutnya, ada dua pendekatan untuk membuat symlink. Yang pertama adalah menggunakan nama model dan nomor seri:
Dengan cara ini, symlink akan tetap benar bahkan jika Anda memindahkan drive ke posisi berbeda di bus IDE, tetapi
/dev/dvd
symlink tidak akan dibuat jika Anda mengganti drive.Yang kedua didasarkan pada lokasi perangkat di bus:
Dengan cara ini, symlink akan tetap benar bahkan jika Anda mengganti drive dengan model yang berbeda, tetapi menempatkannya pada posisi yang sama di bus IDE. The
ENV{ID_TYPE}
key memastikan bahwa symlink menghilang jika Anda meletakkan sesuatu selain DVD di posisi itu di bus.Anda dapat menemukan nilai-nilai untuk
ID_MODEL
,ID_SERIAL
,ID_TYPE
danID_PATH
menggunakan perintah berikut (udevtest
perintah seperti dalam tutorial tidak bekerja - lagi - di Ubuntu?):The
SUBSYSTEM=="block"
kunci diperlukan untuk menghindari pencocokan SCSI perangkat generik. Tanpanya, dalam kasus dengan SCSI DVD, symlink terkadang akan menunjuk ke/dev/sr0
perangkat yang benar , dan terkadang ke/dev/sg0
, yang salah.The
ENV{GENERATED}="1"
kunci diperlukan untuk mencegah udev75-cd-aliases-generator.rules
file dari override aturan kustom Anda.sumber
/dev/dvd
symlink saya secara ajaib memperbaiki dirinya sendiri dalam beberapa bulan terakhir. Saya juga membaca di bug ini bahwa/dev/dvd
hari-hari itu dinomori. Baiklah. Untuk saat ini, jawaban Anda tampaknya memberikan semua informasi yang diperlukan untuk memperbaiki masalah ini.Saya menemukan ini di forum fedora dapat membantu:
Buat file skrip shell Dalam file itu, masukkan:
Pastikan file tersebut dapat dieksekusi:
Jika Anda akan menggunakan rute rc.local, Anda juga perlu melakukan ini, sebagai root:
karena tidak diaktifkan secara default
sumber: http://forums.fedoraforum.org/showthread.php?t=295048
--------- Cara yang disukai hari ini adalah aturan UDev --------------
Berdasarkan /lib/udev/rules.d/60-cdrom_id.rules, yang membuat tautan simbolis / dev / cdrom, coba tambahkan file /etc/udev/rules.d/60-dvd.rules yang mengandung:
sumber