Является ли /dev в Linux виртуальным?

Сегодня на работе у клиента был rm -rf /dev и в конечном итоге удалив два файла в /dev/shm что заставило его сайт больше не работать.

Из того, что я узнал ранее /dev не является виртуальным, но другой специалист предложил перезагрузить сервер, потому что /dev виртуально как /proc, Конечно же, я перезагрузил сервер и файлы, которые были там у клиента rm -rf'd.

Итак, мой вопрос: является /dev виртуальная? Это что-то вроде виртуального /proc? Есть ли еще документация по этому вопросу? Как я могу восстановить /dev файлы без перезагрузки сервера?

1 ответ

Решение

Ответ в течение очень долгого времени был "своего рода".

В настоящее время дерево устройств Linux управляется udev менеджер пользовательских устройств, который заменил devfs несколько лет назад. udev заполняет /dev любыми узлами устройства, которые нужны системе, в зависимости от правил, настроенных в ее файлах конфигурации.

В новейших системах Linux /dev находится на временном диске RAM, предоставленном devtmpfs, Вы могли бы назвать это виртуальным.

Пример:

devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=6109940k,nr_inodes=1527485,mode=755)

В настоящее время единственная причина для фактических узлов устройств в /dev заключается в загрузочной среде до запуска udev. Только типично /dev/console а также /dev/null необходимы в реальной файловой системе, которой достаточно, чтобы добраться до точки, где можно запустить udev. Затем он предоставит все остальное.

Другие вопросы по тегам