rm -rf
ialah satu perintah Bash yang serupa dengan DROPPerintah SQL. Melainkan anda mempunyai replika (sandaran) jadual pangkalan data anda, anda akan kehilangan semua data.
rm -rf ialah arahan yang apabila dipanggil tanpa keistimewaan root akan mengalih keluar semua folder yang boleh diakses oleh pengguna. Apabila dipanggil dengan keistimewaan root, ia akan menghapuskan cakera keras anda.
Saya tidak bernasib malang melakukan kesilapan menjalankan kod ini pada pelayan pengeluaran sebelum ini, tetapi tidak semua orang bernasib baik. Berikut ialah beberapa cerita rm -rf cerita yang mungkin anda dapati boleh dikaitkan.
1. Thomas & Program Sampah berasaskan CLI
Thomas berada di makmal Unix Kolejnya mengerjakan projek separuh penggal yang mana dia disambungkan ke pelayan di makmal bersebelahan menggunakanPuTTY + RealVNC.
Projeknya adalah mudah: Buat program CLI “sampah” yang mengambil senarai laluan fail dan mengalihkannya ke~/.trash
direktori. Anda kemudian boleh “kosongkan sampah” yang melaksanakan rm pada direktori. Dia telah menyelesaikan bahagian pertama dan sedang menyelesaikan arahan kosong.
Entah bagaimana dia menetapkan pembolehubah yang salah yang meninggalkan laluan alih keluar sebagai /
dan dia mempunyai akses sudo. Tiada apa-apa yang berlaku apabila dia menjalankan kod pada mulanya tetapi tidak lama selepas itu menjadi glichy dan mula memaparkan statik. Ctrl + C tidak dapat membantu. Seterusnya, monitor menjadi kosong dan terputus sambungan.
Kodnya menjalankan sudo rm-rf /
dan itu memadamkan semua data pada pelayan. Nasib baik untuk Thomas, dia bekerja pada pelayan ujian jabatan dan dapat memulihkan data daripada cakera sandaran. Dia tidak kehilangan kemasukannya.
2. Lap Bersih Semasa Sesi Sandaran
Alex ialah pentadbir rangkaian di syarikat yang menyandarkan mesin mereka melalui skrip. Pada satu Jumaat, dia menaik taraf skrip dengan teks, rm -rf ${DIRECTERY}/
bukannya
rm -rf ${DIRECTORY}/ – membuat kemas kini arahan kepada hanya
rm-rfkerana ${DIRECTERY} menjadi rentetan kosong.
Sesi sandaran bermula lewat malam itu dan sebelum Alex menyedarinya, semua mesin di rangkaian telah dibersihkan! Nasib baik baginya, syarikat itu membuat sandaran fail setiap jam supaya tidak banyak kerosakan yang berlaku.Walaupun begitu, ia adalah hujung minggu yang sibuk. Agak ironis bahawa kerja sandaran akan menghapuskan sistem, bukan?
3. Pembersih Rekursif Automatik
Satu kali Eric sedang bekerja pada pelayan fail dan mahu membersihkan beberapa fail secara automatik setiap minggu atau lebih. Dia merancang taliannya dan mengujinya dengan tujuan untuk mengalih keluar hanya fail yang agak lama. Kerjanya berada dalam satu direktori jadi dia tidak fikir apa-apa boleh menjadi salah. Nah, dia kemudian mendapati dia salah teka.
Dia menjalankan arahan berikut dan ia berjaya. Seterusnya, dia menambah baris secara manual dalam crontab dan ketika itulah dia tersilap menggantikan .
dengan / .
cari . -type f -name-ctime -60 -exec rm -rf {} \;
Maju pantas ke seminggu kemudian dan sejumlah besar fail telah hilang. Apa yang lebih teruk ialah mereka telah dipadamkan pada apa yang kelihatan seperti corak rawak sehingga dia menyangka syarikat itu digodam sehingga apabila dia menjalankan semakan kod dan menyedari dia adalah penggodam.
Nasib baik, dia menyimpan sandaran luaran setiap hari supaya dia dapat membetulkan kesilapannya. Sejak hari itu anda boleh bertaruh dia sangat berhati-hati dengan arahan yang dijalankannya dengan keistimewaan pentadbir.
2 perkara utama yang boleh dibawa pulang yang terdapat dalam cerita di atas ialah 1, sentiasa semak semula kod anda dan kemungkinan kesan terhasilnya dan 2, sentiasa pastikan sandaran anda terkini kerana anda tidak tahu bila ia akan berguna.
Adakah anda tahu mana-mana cerita gila rm -rf cerita dari pengalaman atau tempat lain? Kongsi mereka dengan kami di bahagian komen.