Saya belum mencoba perintah ini di Ubuntu (untuk alasan yang jelas) jadi saya tidak yakin apakah Ubuntu akan mengizinkan pelaksanaannya.
Aku melakukannya. rm -rf / --no-preserve-root
sedang berjalan di sesi root yang dibuka langsung di mesin, sementara saya juga terhubung melalui ssh
dari komputer lain, menggunakan akun root juga.
Apa yang terjadi adalah Anda mulai mendapatkan banyak pesan seperti:
rm: tidak dapat menghapus '/ ...': Operasi tidak diizinkan
atau:
rm: tidak dapat menghapus '/ ...': Perangkat atau sumber daya sibuk
Anehnya, ssh
koneksi tetap dibuka hingga akhir operasi. Hanya ketika saya menutup koneksi dan mencoba membukanya kembali, muncul kesalahan:
Baca dari soket gagal: Koneksi diatur ulang oleh rekan
Di mesin, empat direktori tetap:
/dev
. Di sinilah file perangkat disimpan.
/proc
—Dalam sistem file memori yang dibuat oleh kernel.
/run
, lokasi sistem file standar untuk daemon.
/sys
. Ini memungkinkan Anda untuk mendapatkan informasi tentang sistem dan komponen-komponennya.
Ini berarti tidak banyak yang tersisa, dan tidak banyak yang harus dilakukan di sana. Anda tidak bisa ls
(walaupun saat menggunakan Tab, nama direktori dan file masih ditampilkan). Anda bisa cd
di direktori yang berbeda, dan juga echo
barang-barang, tetapi perintah seperti cat
itu tidak tersedia lagi.
Juga tidak ada sudo
.
shutdown -h now
dan reboot
menghilang juga, jadi satu-satunya pilihan Anda tampaknya mematikan mesin secara manual. Logout ( exit
) tidak berfungsi, bahkan jika itu menunjukkan teks "logout" yang bagus.
Setelah Anda mencoba untuk me-reboot mesin, Anda disajikan dengan kesalahan GRUB yang bagus 15, dan kemudian, tidak ada yang terjadi, pada titik mana Anda mungkin mulai berpikir bahwa Anda rm
mungkin telah melakukan sesuatu yang buruk pada sistem Anda.
Anda bisa melakukannya juga
Tidak, tunggu, jangan lakukan itu di mesin Anda!
Yang bisa Anda lakukan adalah menjalankan mesin virtual . VM memiliki manfaat membuat eksperimen sangat mudah. Karena Anda menggunakan Ubuntu, Anda mungkin tertarik dengan vmbuilder . Ini adalah alat yang memungkinkan Anda untuk menggunakan mesin virtual dalam hitungan menit (dokumentasi resmi mengklaim bahwa itu dapat dilakukan "dalam waktu sekitar satu menit", tetapi waktu aktual, bahkan pada perangkat keras yang cepat, adalah sekitar dua-tiga menit. .
Setelah penyebaran berakhir, Anda memiliki lingkungan yang dapat Anda mainkan. Jika Anda akhirnya menghancurkannya, itu tidak masalah: Anda menggunakan mesin lagi, dan dua menit kemudian Anda dapat melanjutkan.
Jika Anda menggunakan perangkat lunak seperti VMWare, Anda mungkin juga tertarik pada snapshots (perhatikan bahwa VMWare Player gratis tidak memiliki fitur ini; Anda harus membeli VMware Workstation). Perhatikan bahwa Hyper-V gratis dan mendukung snapshot (tetapi Anda harus menjalankan Windows).
Manfaat dari snapshot adalah Anda dapat mengambilnya dalam hitungan milidetik. Menggulung kembali ke snapshot membutuhkan waktu lebih lama, tetapi seringkali hanya hitungan detik. Ini membuat eksperimen menjadi lebih mudah dan lebih cepat.
Eksperimen ini tidak terbatas pada sistem operasi itu sendiri. Anda dapat melakukan semua hal yang melibatkan perangkat lunak. Punya aplikasi yang mencurigakan? Uji dalam VM — jika itu virus, tidak akan ada salahnya. Ingin menguji operasi pada basis data, mengingat hal itu dapat memengaruhi lingkungan? Uji dalam VM.
Bagaimana jika Anda melakukannya pada mesin non-tes nyata?
Hal-hal buruk terjadi. Catatan yang rm
melindungi Anda dari diri sendiri: rm -rf /
tidak akan berfungsi: Anda harus menggunakan --no-preserve-root
. Namun, bagaimana jika Anda benar-benar mencapai, secara tidak sengaja, untuk menghapus semuanya?
rm
hanya memutus tautan file , tetapi datanya masih ada, di hard disk Anda. Ini memungkinkan untuk memulihkannya nanti (itulah sebabnya Anda tidak boleh hanya membuang hard disk Anda dengan data sensitif ketika mereka tidak berfungsi lagi).
Ini berarti Anda hanya perlu memiliki PC cadangan dengan penutup hard drive untuk benar-benar memulihkan hampir semua file. Yang penting adalah menghindari menulis apa pun ke hard disk untuk dipulihkan: data yang Anda tulis akan menimpa file yang tidak ditautkan.
Seperti dicatat oleh artikel di komentar 200_success , jika Anda bertindak cerdas, Anda bisa mendapatkan mesin kembali bahkan tanpa PC cadangan. Jika Anda hanya peduli pada data, saya tidak akan repot-repot — memulihkannya dengan PC cadangan jauh lebih mudah.
rm -rf /
tidak menghapus apa pun tanpa--no-preserve-root
.