rm -rf
, DROP komutuna benzer bir Bash komutudur.SQL komutu. Veritabanı tablonuzun bir kopyasına (yedeğine) sahip olmadığınız sürece, tüm verileri kaybedersiniz.
rm -rf, kök ayrıcalıkları olmadan çağrıldığında kullanıcının erişimi olan tüm klasörleri kaldıran bir komuttur. Kök ayrıcalıklarıyla çağrıldığında, sabit sürücünüzü yok edecektir.
Daha önce bu kodu bir üretim sunucusunda çalıştırma hatasına düşmedim ama herkes bu kadar şanslı değildi. İşte ilişkilendirilebilir bulabileceğiniz bazı ilginç rm -rf hikayeler.
1. Thomas ve CLI tabanlı Çöp Programı
Thomas, College Unix laboratuvarında, komşu bir laboratuvardaki bir sunucuyakullanarak bağlandığı bir ara sınav projesi üzerinde çalışıyordu. PuTTY + RealVNC.
Onun projesi basitti: Dosya yollarının bir listesini alıp onları birkonumuna taşıyan bir “trash” CLI programı oluşturun. ~/.trash
dizini. Daha sonra dizinde rm yürüten “çöp kutusunu boş altın” yapabilirsiniz. İlk kısmı bitirmişti ve boş komutu tamamlıyordu.
Her nasılsa, kaldırma yolundan çıkan yanlış değişkeni /
olarak ayarlamış ve sudo erişimine sahipmiş. İlk başta kodu çalıştırdığında hiçbir şey olmadı, ancak kısa bir süre sonra sorun çıktı ve statik göstermeye başladı. Ctrl + C yardımcı olamadı. Ardından monitör karardı ve bağlantısı kesildi.
Onun kodu bir sudo rm-rf /
çalıştırdı ve sunucudaki tüm verileri sildi. Thomas için şans eseri, bölümün test sunucusunda çalışıyordu ve yedekleme disklerinden verileri kurtarmayı başardı. Kabulünü kaybetmedi.
2. Bir Yedekleme Oturumu Sırasında Temiz Bir Silme
Alex, makinelerini betiklerle yedekleyen bir şirkette ağ yöneticisiydi. Önemli bir Cuma tarihinde, senaryoyu şu metinle yükseltti: rm -rf ${DIRECTERY}/
rm -rf ${DIRECTORY}/
yerine – komutu yalnızca
rm-rf olarak güncellerçünkü ${DIRECTERY} boş bir dize oldu.
Yedekleme oturumu o gece daha sonra başladı ve Alex farkına varmadan ağdaki tüm makineler temizlendi! Neyse ki, şirket dosyaları her saat yedekliyor, böylece fazla bir hasar meydana gelmiyor.Buna rağmen yoğun bir hafta sonuydu. Bir yedekleme işinin sistemleri temiz bir şekilde silmesi oldukça ironik, değil mi?
3. Otomatik Özyinelemeli Temizleyici
Bir keresinde Eric bir dosya sunucusu üzerinde çalışıyordu ve bazı dosyaları yaklaşık her hafta otomatik olarak temizlemek istiyordu. Hattını planladı ve yalnızca nispeten daha eski dosyaları kaldırmak amacıyla test etti. Çalışması tek bir dizindeydi, bu yüzden hiçbir şeyin ters gidebileceğini düşünmedi. Daha sonra yanlış tahmin ettiğini anladı.
Aşağıdaki komutu çalıştırdı ve çalıştı. Ardından, satırı crontab'a manuel olarak ekledi ve o sırada yanlışlıkla .
'yi / ile değiştirdi. .
bulmak . -type f -name-ctime -60 -exec rm -rf {} \;
Bir hafta sonrasına ileri sarın ve önemli sayıda dosya gitti. Daha da kötüsü, rastgele görünen bir düzende silinmeleri ve şirketin saldırıya uğradığını düşünmesiydi, ta ki bir kod kontrolü yapıp hacker'ın kendisi olduğunu anlayana kadar.
Neyse ki, hatasını düzeltebilmek için her gün harici yedeklemeler yaptı. O günden beri yönetici ayrıcalıklarıyla çalıştırdığı komutlarda çok dikkatli olduğuna bahse girebilirsiniz.
Yukarıdaki hikayelerde bulunan 2 ana eve götürme noktası şunlardır: 1, kodunuzu ve olası sonuç etkisini her zaman iki kez kontrol edin ve 2, yedeklerinizi her zaman olabildiğince güncel tutun çünkü ne zaman olacağını asla bilemezsiniz kullanışlı olacaklar.
Deneyimden veya başka yerlerden bildiğiniz çılgın rm -rf hikayeleri var mı? Bunları yorum bölümünde bizimle paylaşın.