Certos programas procuram /dev/dvd
por padrão para encontrar DVDs. Quando eu inicializo meu computador sem um DVD inserido, ele /dev/dvd
existe e aponta para o local correto ( /dev/sr0
). No entanto, quando insiro um DVD, /dev/dvd
desaparece. Eu gostaria que ele permanecesse, para não precisar navegar /dev/sr0
em programas que procuram DVDs. Como garantir que o /dev/dvd
link simbólico exista e aponte para o lugar certo?
Parece que posso adicionar algo a /etc/udev/rules.d/70-persistent-cd.rules
. Este site fornece alguns exemplos, mas o 70-persistent-cd.rules
arquivo diz "adicione o sinalizador ENV {GENERATED} = 1 às suas próprias regras", o que não faz parte dos exemplos. A man 7 udev
página é impenetrável para mim e não estou convencido de que a página vinculada forneça 100% das informações necessárias.
Então, o que posso fazer em um sistema moderno Ubuntu 12.04 (ou posterior) para que /dev/dvd
sempre exista e aponte para o dispositivo certo?
EDIT: É tão simples como adicionar ENV{GENERATED}=1
às regras na página vinculada, algo como isto:
SUBSYSTEM=="block", KERNEL=="sr0", SYMLINK+="dvd", GROUP="cdrom", ENV{GENERATED}=1
Essa é a informação certa para o Ubuntu moderno? O que está ENV{GENERATED}
fazendo lá, quando não foi gerado, mas escrito à mão?
Respostas:
Este tutorial explica muito bem como fazer o que você deseja:
Segundo ele, existem duas abordagens para criar links simbólicos. O primeiro é usar o nome do modelo e o número de série:
Dessa forma, o link simbólico permanecerá correto, mesmo que você mova a unidade para posições diferentes no barramento IDE, mas o
/dev/dvd
link simbólico não será criado se você substituir a unidade.O segundo é baseado na localização do dispositivo no barramento:
Dessa forma, o link simbólico permanecerá correto, mesmo se você substituir unidades por modelos diferentes, mas colocá-las nas mesmas posições no barramento IDE. A
ENV{ID_TYPE}
chave garante que o link simbólico desapareça se você colocar algo diferente de um DVD nessa posição no barramento.Você pode encontrar os valores para
ID_MODEL
,ID_SERIAL
,ID_TYPE
eID_PATH
usando o seguinte comando (oudevtest
comando como no tutorial não funciona - mais - no Ubuntu?):A
SUBSYSTEM=="block"
chave é necessária para evitar a correspondência de dispositivos genéricos SCSI. Sem ele, no caso do DVD SCSI, o link simbólico algumas vezes aponta para os/dev/sr0
dispositivos corretos e outras para o/dev/sg0
que está errado.A
ENV{GENERATED}="1"
chave é necessária para impedir que o75-cd-aliases-generator.rules
arquivo udev substitua suas regras personalizadas.fonte
/dev/dvd
link simbólico se corrigia magicamente em algum momento nos últimos meses. Também li neste bug que/dev/dvd
os dias estão contados. Ah bem. Por enquanto, sua resposta parece fornecer todas as informações necessárias para corrigir esse problema.Achei isso em um fórum do fedora pode ajudar:
Crie um arquivo de script de shell Nesse arquivo, coloque:
Verifique se o arquivo é execlutável:
Se você for usar a rota rc.local, também precisará fazer isso, como root:
porque não está ativado por padrão
fonte: http://forums.fedoraforum.org/showthread.php?t=295048
--------- A maneira preferida hoje em dia seria uma regra do UDev --------------
Com base em /lib/udev/rules.d/60-cdrom_id.rules, que cria o link simbólico / dev / cdrom, tente adicionar um arquivo /etc/udev/rules.d/60-dvd.rules que contenha:
fonte