/dev/dvd를 올바르게 생성하려면 어떻게 해야 합니까?

/dev/dvd를 올바르게 생성하려면 어떻게 해야 합니까?

일부 프로그램은 /dev/dvd기본적으로 DVD를 찾습니다. DVD를 삽입하지 않고 컴퓨터를 처음 부팅하면 /dev/dvd이 존재하고 올바른 위치( /dev/sr0)를 가리킵니다. 그런데 DVD를 넣으면 /dev/dvd사라집니다. /dev/sr0DVD를 찾는 프로그램에서 탐색할 필요가 없도록 계속 붙어 있었으면 좋겠습니다 . /dev/dvd심볼릭 링크가 존재하고 올바른 위치를 가리키는 지 어떻게 확인합니까 ?

뭔가 추가할 수 있을 것 같네요/etc/udev/rules.d/70-persistent-cd.rules . 이 장소몇 가지 예를 제공하지만 70-persistent-cd.rules파일에는 "ENV{GENERATED}=1 플래그를 자신의 규칙에 추가"라고 되어 있는데 이는 예의 일부가 아닙니다. 이 man 7 udev페이지는 제가 접근할 수 없으며 링크된 페이지가 제가 필요한 정보를 100% 제공하는지 확신할 수 없습니다.

/dev/dvd그렇다면 최신 Ubuntu 12.04(또는 그 이상) 시스템에서 항상 존재하고 올바른 장치를 가리키 도록 하려면 어떻게 해야 합니까 ?

ENV{GENERATED}=1편집: 링크된 페이지에 다음과 같이 규칙을 추가하는 것만큼 간단합니까 ?

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

이것이 현대 우분투에 대한 올바른 정보입니까? ENV{GENERATED}생성되지 않고 손으로 쓴 경우 거기에서 무엇을 하고 있는 걸까요?

답변1

이 튜토리얼에서는 원하는 작업을 수행하는 방법을 매우 잘 설명합니다.

이에 따르면 심볼릭 링크를 만드는 데는 두 가지 접근 방식이 있습니다. 첫 번째는 모델명과 일련번호를 사용하는 것입니다.

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

이렇게 하면 드라이브를 IDE 버스의 다른 위치로 이동하더라도 심볼릭 링크가 올바르게 유지되지만 /dev/dvd드라이브를 교체하면 심볼릭 링크가 생성되지 않습니다.

두 번째는 버스의 장치 위치를 기반으로 합니다.

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

이렇게 하면 드라이브를 다른 모델로 교체하더라도 심볼릭 링크는 올바르게 유지되지만 드라이브를 IDE 버스의 동일한 위치에 배치합니다. 이 ENV{ID_TYPE}키는 버스의 해당 위치에 DVD가 아닌 다른 것을 넣으면 심볼릭 링크가 사라지도록 해줍니다.

다음 명령을 사용하여 ID_MODEL, ID_SERIAL및 값을 찾을 수 있습니다 (튜토리얼의 명령 ID_TYPE은 Ubuntu에서 더 이상 작동하지 않습니다).ID_PATHudevtest

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

SUBSYSTEM=="block"SCSI 일반 장치와 일치하지 않으려면 키가 필요합니다 . 이것이 없으면 SCSI DVD의 경우 심볼릭 링크가 때로는 올바른 /dev/sr0장치를 가리키기도 하고 때로는 /dev/sg0잘못된 장치를 가리키기도 합니다.

ENV{GENERATED}="1"udev 75-cd-aliases-generator.rules파일이 사용자 정의 규칙을 재정의하는 것을 방지하려면 키 가 필요합니다.

답변2

Fedora 포럼에서 이것이 도움이 될 수 있다는 것을 알았습니다.

쉘 스크립트 파일을 작성하십시오. 해당 파일에 다음을 입력하십시오.

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

파일이 실행 가능한지 확인하십시오.

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

rc.local 경로를 사용하려면 루트로 이 작업도 수행해야 합니다.

systemctl enable rc-local.service

기본적으로 활성화되어 있지 않기 때문에

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

---------요즘 선호되는 방식은 UDev 규칙입니다---------------

/dev/cdrom 심볼릭 링크를 생성하는 /lib/udev/rules.d/60-cdrom_id.rules를 기반으로 다음을 포함하는 /etc/udev/rules.d/60-dvd.rules 파일을 추가해 보십시오.

KERNEL=="sr0", SYMLINK+="dvd", OPTIONS+="link_priority=-100"

관련 정보