Bu komutu Ubuntu'da denemedim (açık nedenlerden dolayı) bu yüzden Ubuntu'nun yürütülmesine izin verip vermeyeceğinden emin değilim.
Yaptım. rm -rf / --no-preserve-root
doğrudan makinede açılan bir kök oturumunda koşuyordum, ben de ssh
kök hesabı kullanarak başka bir makineden bağlandım .
Olan şudur, şöyle bir sürü mesaj almaya başlarsınız :
rm: '/ ...' kaldırılamıyor: İşleme izin verilmedi
veya:
rm: '/ ...' kaldırılamıyor: Aygıt veya kaynak meşgul
Şaşırtıcı bir şekilde, ssh
işlemin sonuna kadar bağlantı açık kalmıştır. Sadece bağlantıyı kapattığımda ve bir hatanın ortaya çıktığını tekrar açmaya çalıştığımda:
Soketten okuma başarısız oldu: Bağlantı eş tarafından
Makinede dört dizin kalır:
/dev
. Burası cihaz dosyalarının depolandığı yerdir.
/proc
- çekirdek tarafından oluşturulan bellekte dosya sistemi.
/run
Daemon'lar için standart bir dosya sistemi.
/sys
. Bu, sistem ve bileşenleri hakkında bilgi edinmenizi sağlar.
Bu, çok fazla kalmayacağı ve orada yapacak çok şey olmadığı anlamına gelir. Yapamazsınız ls
(kullanırken Tab, dizinlerin ve dosyaların adları hala görüntüleniyor olsa da). Sen olabilir cd
farklı dizinlere ve ayrıca içinde echo
malzeme, ancak komutları gibi cat
artık kullanılamaz.
Hiçbiri de yok sudo
.
shutdown -h now
ve reboot
ortadan kayboldu, bu yüzden tek seçeneğin makineyi elle kapatması gibi görünüyor. Logout ( exit
) çalışmıyor, güzel bir "logout" yazısı gösterse bile.
Makineyi yeniden başlatmayı denediğinizde, güzel bir GRUB hatası 15 ile karşılaşacaksınız ve daha sonra hiçbir şey olmuyor, bu noktada rm
sisteminizin kötü bir şey yapmış olabileceğini düşünmeye başlayabilirsiniz .
sende yapabilirsin
Hayır, bekle, makinende yapma!
Bunun yerine, sanal bir makine çalıştırmak yerine yapabilirsiniz . VM'lerin deney yapmayı gerçekten kolaylaştırma avantajı vardır. Ubuntu kullandığınızdan, vmbuilder ile ilgilenebilirsiniz . Bu, sanal makineleri birkaç dakika içinde kullanmanıza izin veren bir araçtır (resmi belgeler "bir dakika içinde" yapılabileceğini iddia eder, ancak gerçek donanım, hızlı donanımda bile yaklaşık iki-üç dakikadır) .
Dağıtım sona erdiğinde, oynayabileceğiniz bir ortamınız olur. Eğer onu yok etmeye kalkarsanız, farketmez: makineyi tekrar dağıtırsınız ve iki dakika sonra devam edebilirsiniz.
VMWare gibi bir yazılım kullanıyorsanız, anlık görüntülerle de ilgilenebilirsiniz (ücretsiz VMWare Player'ın bu özelliğe sahip olmadığını; VMware Workstation satın almanız gerektiğini unutmayın). Hyper-V'nin ücretsiz olduğunu ve anlık görüntüleri desteklediğini unutmayın (ancak Windows'u çalıştırmanız gerekir).
Anlık görüntülerin faydası, milisaniye meselesinde bir tane alabilmenizdir. Bir anlık görüntüye geri dönmek daha uzun sürer, ancak genellikle birkaç saniye sorunudur. Bu, deneyi daha kolay ve daha hızlı hale getirir.
Bu deneme, işletim sisteminin kendisi ile sınırlı değildir. Yazılımla ilgili her türlü şeyi yapabilirsiniz. Şüpheli bir uygulamanız var mı? Bir VM'de test edin - eğer bir virüsse, zarar vermez. Çevreyi etkileyebileceği düşünülerek bir işlemi bir veritabanında test etmek ister misiniz? Bir VM'de test edin.
Ya bunu test dışı bir makinede yaptıysanız?
Kötü şeyler olur. Not rm
seni kendinden korur: rm -rf /
çalışmaz: Kullanmak gerek --no-preserve-root
. Yine de, aslında, yanlışlıkla her şeyi kaldırmayı başaramazsanız?
rm
sadece dosyaların işaretlerini kaldırır , ancak veriler hala oradadır, sabit diskinizde. Bu, daha sonra kurtarmayı mümkün kılar (bu nedenle artık çalışmadığınız zamanlarda sabit disklerinizi hassas verilerle atmamalısınız).
Bu, neredeyse tüm dosyaları gerçekten kurtarmak için sabit disk muhafazasına sahip yedek bir PC'niz olması gerektiği anlamına gelir . Önemli olan, kurtarılacak sabit diske herhangi bir şey yazmaktan kaçınmaktır: yazdığınız veriler bağlantısız dosyaların üzerine yazacaktır.
200_success 'in yorumundaki makalede belirtildiği gibi , akıllı davranırsanız, makineyi yedek bir PC olmadan bile geri alabilirsiniz. Sadece veriyi umursuyorsan, rahatsız olmazdım - onu yedek bir PC ile kurtarmak çok daha kolay.
rm -rf /
olmadan hiçbir şey silmez--no-preserve-root
.