Что мешает rm / dev / null?

13

Какой механизм rm /dev/nullпредотвращается? В частности, на FreeBSD, но я также заинтересован во всех других системах на основе Unix.

Нектарий
источник
Общая логика, вы ничего не можете удалить;)
Бен
7
Ты пробовала ?
Диего Торрес Милано

Ответы:

23

Вы можете удалить /dev/nullпользователя root в системах Linux и BSD. Конечно, после перезагрузки система /dev/nullбудет восстановлена. Без перезагрузки также можно восстановить /dev/nullс помощью mknodкоманды.

анубхава
источник
11

Полномочия - если вы не работаете как root(суперпользователь) или, возможно, один из нескольких избранных пользователей или групп ( binили sys), у вас нет разрешения на запись в /dev/каталог, и поэтому вы не можете ничего удалить из каталога.

Если да root, то вы можете удалить его, но ваша система будет крайне несчастна. Вы можете воссоздать его, используя mknodкоманду (или, возможно, mknod()системный вызов). Или вы можете создать простой файл, но он не будет обладать теми же специальными свойствами, что и «реальный», /dev/nullи ваша система будет сильно повреждена.

Это не очень хорошая область для экспериментов! (И, если вам нужно поэкспериментировать, я рекомендую использовать виртуальную машину, а не вашу основную машину.)

Джонатан Леффлер
источник