7.4.3. Se ocupă de dispozitive duplicate
După cum este explicat în Secțiunea 7.3, „Prezentare generală asupra manipulării dispozitivelor și modulelor”, ordinea în care apar dispozitivele cu aceeași funcție în / dev este în esență aleatorie. De exemplu, dacă aveți o cameră web USB și un tuner TV, uneori /dev/ video0 se referă la cameră și / dev / video1 se referă la tuner, iar uneori după o repornire ordinea se schimbă în cea opusă. Pentru toate clasele de hardware, cu excepția plăcilor de sunet și a plăcilor de rețea, acest lucru se poate repara prin crearea de reguli Udev pentru legăturile simbolice persistente personalizate. Cazul plăcilor de rețea este tratat separat în Secțiunea 7.5, „Configurația generală a rețelei”, iar configurația plăcii de sunet poate fi găsită în blfs.
Pentru fiecare dintre dispozitivele dvs. care este probabil să aibă această problemă (chiar dacă problema nu există în distribuția dvs. curentă Linux), găsiți directorul corespunzător sub /sys/class or /sys/bloc. Pentru dispozitivele video, acest lucru poate fi
/sys/class/video4linux/videoX. Descoperiți atributele care identifică dispozitivul în mod unic (de obicei, ID-urile de vânzător și de produs și/sau numerele de serie funcționează):
udevadm info -a -p /sys/class/video4linux/video0
udevadm info -a -p /sys/class/video4linux/video0
Apoi scrieți reguli care creează legăturile simbolice, de exemplu:
cat > /etc/udev/rules.d/83-duplicate_devs.rules << „EOF”
# Legături simbolice persistente pentru cameră web și tuner
KERNEL=="video*", ATTRS{idProduct}=="1910", ATTRS{idVendor}=="0d81", \ SYMLINK+="webcam"
KERNEL=="video*", ATTRS{device}=="0x036f", ATTRS{vendor}=="0x109e", \ SYMLINK+="tvtuner"
EOF
cat > /etc/udev/rules.d/83-duplicate_devs.rules << „EOF”
# Legături simbolice persistente pentru cameră web și tuner
KERNEL=="video*", ATTRS{idProduct}=="1910", ATTRS{idVendor}=="0d81", \ SYMLINK+="webcam"
KERNEL=="video*", ATTRS{device}=="0x036f", ATTRS{vendor}=="0x109e", \ SYMLINK+="tvtuner"
EOF
Rezultatul este că / dev / video0 și / dev / video1 dispozitivele se referă în continuare aleatoriu la tuner și camera web (și, prin urmare, nu ar trebui să fie utilizate direct), dar există legături simbolice /dev/tvtuner și /dev/webcam care indică întotdeauna dispozitivul corect.