/etc/udev/rules.d/ vs /lib/udev/rules.d/ - którego użyć i dlaczego?

21

Arch Arch zalecił utworzenie pliku, /etc/udev/rules.d/aby naprawić problemy z kontrolerem Steam. To zadziałało! Zauważyłem jednak, że w tym folderze nie ma innych reguł oprócz tej, którą właśnie utworzyłem. Dodatkowo, wszystkie inne źródła, które widziałem, mówią o umieszczaniu reguł /lib/udev/rules.d/udev, aw tym folderze jest także wiele innych reguł udev. Dlaczego są dwa foldery dla pozornie tej samej rzeczy i którego należy użyć?

Aaron Franke
źródło

Odpowiedzi:

29

Różnica między tymi dwoma folderami polega na tym, że:

/lib/udev/rules.d

Zawiera domyślne pliki reguł. Nie edytuj tych plików.

/etc/udev/rules.d/*.rules

Zawiera dostosowane pliki reguł. Możesz zmodyfikować te pliki lub utworzyć je.

Pliki o identycznych nazwach zastępują się jednak. Pliki w /etcmają najwyższy priorytet i mają pierwszeństwo przed plikami o tej samej nazwie w /lib. Można to wykorzystać do zastąpienia reguł domyślnych.

Inną rzeczą, aby całkowicie wyłączyć plik reguł, możesz utworzyć dowiązanie symboliczne /etco tej samej nazwie co plik reguł /lib, wskazując na /dev/null.

Aby zakończyć, zasady Udev napisane przez administratora wchodzą /etc/udev/rules.d/i nazwa pliku musi się kończyć .rules. Domyślne reguły udev znajdują się w /lib/udev/rules.d/(lub /usr/lib/udev/rules.d). Jeśli istnieją dwa pliki o tej samej nazwie pod /libi /etc, te w /etcma pierwszeństwo.

Dababi
źródło
Dziękuję za Twoją odpowiedź. Nie jestem jednak pewien, dlaczego zostałem odrzucony za zadawanie pytań? :(
Aaron Franke
3
@AaronFranke zostałeś przegłosowany, ponieważ te przegłosowane wróżki miały zły dzień.
GeneCode