Още веднъж за udev

Преди да започна тази бележка, ще направя резервация, че тя включва целия материал на предишната бележка - този, който е запазил своята актуалност. Така че няма нужда да се позоваваме на последното, освен в исторически аспект.

Udev е персонализиран механизъм за поддръжка на имена на динамични устройства на Linux, заместващ файловата система на виртуалното устройство на devfs; FreeBSD възлага тази функция на последната. Първият и основен разработчик на udev е Грег Кроах-Хартман.

Както знаете, всяка POSIX-система е повече или по-малко безразлична към имената на конкретни устройства, тъй като работи не с тях, а с техните идентификатори. По-рано, преди въвеждането на devfs и по-късно udev, т. Нар. Номера на устройствата действаха като такива - основният номер на устройството, определящ неговия клас (например ide дискове) и неговият малък номер, указващ конкретен екземпляр на представителя на този клас. В днешно време се използват директни идентификатори на устройства - серийният номер на твърдия диск, неговото положение на SATA конектора или канала на PATA шината и т.н. Тяхната комбинация за всеки диск (дял и т.н.) се оказва уникална. И така, udev извлича тази информация от файловата система sysfs и, ръководен от определени правила, ги присвоява на "човешки" имена (като същите/dev/sda и т.н.).

Процесът на активиране на поддръжката на udev е много прост и се свежда до инсталирането на пакета udev - във всички съвременни дистрибуции на Linux той е включен в основната система, така че не е необходимо да го инсталирате специално.

След това трябва да се погрижите за стартиране на демона udevd при стартиране на системата. Един от специфичните за разпространението скриптове на init е отговорен за това. Например в Ubuntu това би бил файлът /etc/init.d/udev. Въпреки това, във всеки съвременен комплект за разпространение това също се случва по подразбиране, така че не е необходимо да редактирате нищо на ръка.

С други думи, директорията/dev придобива вид, познат от дните на статично именуване на устройства. Единствената разлика е, че сега тя не е пълна с файлове за бъдещо използване на възможни, но не и съществуващи устройства.

Специален файл е отговорен за конфигурирането на механизма udev - /etc/udev/udev.conf, който дефинира глобални параметри, основната директория за файлове на устройства (по подразбиране -/dev), файл с база данни на устройства, файлове, описващи правилата за именуване устройства и права за достъп до тях, както и правила за създаване на символни връзки (като/dev/cdrom). Точните имена на тези файлове и тяхното местоположение зависят от разпространението. Обикновено това са файлове като /etc/udev/rules.d/udev.rules и /etc/udev/permissions.d/udev.permissions.