Объяснение

Объяснение

Когда я впервые установил Linux на свой компьютер, мне всегда нравилось использовать root, поскольку мне не приходилось sudoвводить пароль каждый раз при выполнении команды, требующей прав root.

Так вот однажды я просто хотел удалить каталог и запустил rm -rf /, так что моя система просто сломалась. Интересно, почему разработчики Linux не запретили такую ​​опасную команду.

решение1

Почему бы ему не позволить вам делать все, что вы хотите, с вашим собственным компьютером? Вход в систему как rootили использование sudoозначает сказать машине: «Я знаю, что я делаю». Предотвращение людей от совершения сомнительных действий обычно также препятствует им совершать умные действия,как выразился Рэймонд Чен.

Кроме того, есть одна исключительно веская причина разрешить пользователю сжечь корневой каталог: вывод компьютера из эксплуатации путем полного стирания ОС и файловой системы.Опасность!В некоторых системах UEFI rm -rf /можеткирпич и физическая машина тоже.) Это также разумно делать внутриchrootтюрьма.

По-видимому, люди так часто случайно запускали эту команду, что была добавлена ​​функция безопасности: rm -rf /на большинстве систем ничего не происходит --no-preserve-root, если не указано иное.ни за чтовы можете ввести этопо ошибке. Это также помогает защититься отплохо написанные, но благонамеренные скрипты оболочки.

решение2

TL;DR:Самый простой ответ: почему бы и нет? Это просто функция, инструмент, который предоставляет оперативная система. Вы используете ее на свой страх и риск, зная, что делаете.


Объяснение

Использование root в качестве пользователя являетсяочень плохая идея, поскольку все, что вы запускаете, выполняется с повышенными привилегиями, что является серьезным недостатком безопасности.

Например, если вы загрузили вредоносную программу или если в программном обеспечении, установленном на вашем компьютере, обнаружена критическая ошибка, это может привести к разрушительному повреждению ваших файлов и даже вашего оборудования.

Даже если вам немного лень писать sudoмного раз, есть некоторые команды, такие как sudo -i, которые вы можете использовать некоторое время, а затем вернуться к своему обычному статусу привилегий. Но я бы не рекомендовал этого, если у вас нет большего опыта использования терминала.

Однако это не относится ни к Linux, ни к его разработчикам. На самом деле, как сказал @DanielB,Windows тоже это позволяет.У вас есть свобода и инструменты, чтобы сделать это, но это не значит, что вы должны это делать.

Есть пакеты, которые мешают вамrm войти в корневой каталог, например:Сейф-рм. Это может быть хорошим выбором, если вы считаете, что есть риск, что это повторится.
Другие решения и обходные пути, такие как rmпараметр , --preserve-rootобсуждаются вэтотВопрос о сбое сервера.

Связанный контент