Я не пробовал эту команду в Ubuntu (по понятным причинам), поэтому я не уверен, что Ubuntu разрешит ее выполнение.
Я сделал. rm -rf / --no-preserve-root
выполнялся в сеансе root, открытом непосредственно на компьютере, в то время как я также подключался ssh
с другого компьютера, используя учетную запись root.
Происходит то, что вы начинаете получать много сообщений, таких как:
rm: невозможно удалить '/ ...': операция не разрешена
или же:
rm: невозможно удалить '/ ...': устройство или ресурс заняты
Удивительно, но ssh
соединение оставалось открытым до конца операции. Только когда я закрыл соединение и попытался открыть его снова, появилась ошибка:
Ошибка чтения из сокета: Сброс соединения по пиру
На машине остаются четыре каталога:
/dev
, Здесь хранятся файлы устройства.
/proc
- файловая система в памяти, созданная ядром.
/run
, стандартизированное расположение файловой системы для демонов.
/sys
, Это позволяет получить информацию о системе и ее компонентах.
Это означает, что там не так много осталось и мало что можно сделать там. Вы не можете ls
(хотя при использовании Tabимена каталогов и файлов по-прежнему отображаются). Вы можете cd
в разных каталогах, а также echo
вещи, но такие команды, как cat
больше не доступны.
Там sudo
тоже нет .
shutdown -h now
и reboot
исчез, так что ваш единственный вариант - выключить машину вручную. Logout ( exit
) не работает, даже если он показывает приятный текст «logout».
После того, как вы попытаетесь перезагрузить компьютер, вы увидите приятную ошибку GRUB 15, а затем ничего не произойдет, и в этот момент вы можете начать думать, что вы, rm
возможно, сделали что-то плохое для вашей системы.
Вы тоже можете это сделать
Нет, подожди, не делай этого на своей машине!
Вместо этого вы можете запустить виртуальную машину . Виртуальные машины имеют то преимущество, что делают эксперименты действительно простыми. Поскольку вы используете Ubuntu, вас может заинтересовать vmbuilder . Это инструмент, который позволяет вам развертывать виртуальные машины за считанные минуты (официальная документация утверждает, что это можно сделать «примерно за минуту», но реальное время, даже на быстром оборудовании, составляет около двух-трех минут). ,
После завершения развертывания у вас есть среда, с которой вы можете играть. Если вы в конечном итоге уничтожите его, это не имеет значения: вы снова развернете машину, и через две минуты вы сможете продолжить.
Если вы используете программное обеспечение, такое как VMWare, вас также могут заинтересовать моментальные снимки (обратите внимание, что бесплатный VMWare Player не имеет этой функции; вам необходимо приобрести VMware Workstation). Обратите внимание, что Hyper-V является бесплатным и поддерживает моментальные снимки (но вы должны запустить Windows).
Преимущество снимков заключается в том, что вы можете сделать один снимок за считанные миллисекунды. Откат к снимку занимает больше времени, но часто занимает несколько секунд. Это делает эксперименты еще проще и быстрее.
Этот эксперимент не ограничен самой операционной системой. Вы можете делать все, что связано с программным обеспечением. Есть подозрительное приложение? Протестируйте его на виртуальной машине - если это вирус, он не принесет никакого вреда. Хотите проверить работу с базой данных, учитывая, что она может повлиять на окружающую среду? Проверьте это в ВМ.
Что если вы сделали это на реальной, не тестируемой машине?
Плохие вещи случаются. Обратите внимание, что rm
защищает вас от себя: rm -rf /
не будет работать: вам нужно использовать --no-preserve-root
. И все же, что если вы действительно добились по ошибке удаления всего?
rm
только отсоединяет файлы , но данные все еще там, на вашем жестком диске. Это позволяет восстановить его позже (именно поэтому вы не должны просто выбрасывать свои жесткие диски с конфиденциальными данными, когда они больше не работают).
Это означает, что вам просто необходим запасной компьютер с корпусом жесткого диска, чтобы фактически восстановить практически все файлы. Важно избегать записи чего-либо на жесткий диск для восстановления: записанные вами данные будут перезаписывать несвязанные файлы.
Как отмечается в статье в комментарии 200_success , если вы будете действовать умно, вы сможете вернуть машину обратно даже без запасного ПК. Если вы заботитесь только о данных, я бы не стал беспокоиться - восстановить их с помощью запасного ПК гораздо проще.
rm -rf /
ничего не без удаления--no-preserve-root
.