Kerusakan apa yang paling banyak (dari jenis apa pun) yang pernah Anda sebabkan dengan satu baris perintah yang salah / salah ketik / salah arah? Saya menghapus database sistem produksi secara tidak sengaja beberapa waktu lalu, misalnya, tetapi saya beruntung (yaitu didukung) dan tidak ada kehilangan data permanen, kehilangan uang, kerusakan properti, dll.
Yang terpenting (untuk suara), apa yang Anda lakukan untuk memastikan itu tidak akan terjadi lagi?
command-line-interface
Mark Henderson
sumber
sumber
Jawaban:
Di SQL server, pada sistem produksi:
Cadangan terbaru seperti berumur seminggu.
Untuk mengurangi ini, saya sekarang biasanya menulis
select
pernyataan terlebih dahulu untuk memastikan saya sudah mendapatkanwhere
klausa yang benar, kemudian kembali dan mengeditnya untuk memasukkanset
klausa dan mengubah pernyataan menjadiupdate
.sumber
Kesalahan terbesar? Berpikir saya telah menetapkan dua variabel ketika saya belum. Jadi rm -rf $ VARIABLE / $ VARIABLE2 menjadi rm -rf /. FreeBSD baru-baru ini memperbarui alat rm mereka sehingga rm -rf / tidak mungkin lagi karena kesalahan ini!
sumber
dimaksudkan untuk workstation lokal, tetapi mengetiknya saat login melalui ssh pada server produksi. Sejak itu saya selalu memiliki nama host di blog saya
$PS1
.sumber
Menghilangkan -r dari perintah shutdown. Di server jauh. Di sisi lain negara itu. Tanpa staf TI di kantor jarak jauh.
Kita semua sudah melakukannya, hampir seperti ritual perjalanan pada tahap ini.
sumber
Pada sistem VMS, saya telah menggunakan perintah ASSIGN DCL untuk menetapkan nama logis, dan saya ingin MENGINGAT lagi baris perintah ASSIGN sebelumnya. Sekarang, di VMS, Anda hanya mengetik karakter karakter sebanyak-banyaknya agar tidak ambigu. Jadi saya bermaksud mengetik
ASS REKAM
tapi saya tidak sengaja mengetik
ASS REQ
sebagai gantinya. REQ cukup jelas untuk perintah REQUEST, yang menyiarkan argumen kepada semua orang dengan privat operator (yang adalah semua orang di TI). Jadi seluruh departemen menerima pesan siaran saya yang hanya "ASS".
sumber
Pada sistem Solaris: "killall dataLoader".
'dataLoader' adalah aplikasi yang sedang saya kerjakan. Di Linux, killall bekerja seperti pkill. Ini mengirimkan sinyal ke proses yang cocok dengan string yang diberikan sebagai argumen. Di Solaris, killall mencoba untuk membunuh semua yang ada di sistem yang bisa dimatikan pengguna saat ini. Saya root.
sumber
java
dengan pasti. ;)Suatu kali, beberapa bulan yang lalu, saya perlu menemukan executable tertentu tetapi tidak dapat mengingat nama lengkapnya (tetapi dapat mengingat beberapa huruf). Jadi saya pikir saya akan memeriksa direktori / usr / bin dengan sesuatu seperti ini
Aneh. Tidak ada yang kembali. Mengira saya baru saja salah mengingat huruf kedua, saya mencoba lagi
Sekali lagi, tidak ada apa-apa. Setelah melakukan hal yang sama dengan / usr / local / bin, / usr / sbin, dan apa pun yang saya pikir mungkin ada di dalamnya, saya menyadari bahwa saya telah salah mengetik perintah 'ls'.
Saya tidak tahu dari mana asalnya, tapi itu jelas bukan kesalahan yang pernah saya lakukan lagi.
sumber
Itu adalah Windows Vista.
sumber
Mencoba mengubah kepemilikan segala sesuatu dalam direktori, termasuk file dot, dengan:
Coba tebak apa yang dilakukannya?
sumber
Dimaksudkan untuk menghancurkan / dev / sdb, untungnya saya memiliki cadangan up-to-date yang bagus
sumber
Pada kotak produksi. Perhatikan kurangnya
on
klausa. :-) Kedua tabel adalah multi-juta tabel baris, dan ini berada di AS / 400 di pertengahan 90-an di mana setelah SQL berjalan Anda tidak bisa membunuhnya.sumber
Di salah satu server produksi data kami, salah satu root saya mengetik:
Karena dia mendapatkan kesalahan izin dengan beberapa skrip ...
Tak lama setelah itu, kunci pribadinya dihapus dari semua server dan dia mengurus pengembalian data 1TB di server produksi data ...
sumber
Favorit erm saya adalah ketika saya masih di universitas. Saya sedang membangun aplikasi (saya tidak ingat apa) dan karena saya tidak root, saya sudah membuatnya
Jadi saya bisa menginstalnya ke direktori home saya. Sayangnya itu diinstal ke
sebagai gantinya. Tentu untuk menghapusnya sebagai mulai lagi saya dieksekusi
Di direktori sumber.
Saya bertanya-tanya mengapa itu begitu lama ....
:-)
Namun yang terburuk adalah ketika saya bekerja dengan workstation solaris dan setelah mendapatkan semuanya setup kami ingin menghapus konfigurasi siap untuk konfigurasi hidup. Jadi saya dieksekusi
Setuju dengan pesan peringatan dan alih-alih mesin reboot dan kembali ke "default pabrik" Jendela xterm hanya mengatakan
Moral dari cerita Jangan pernah membiarkan shell root terbuka di host lain! PERNAH!!
sumber
Bertahun-tahun yang lalu saya berada di rumah mengkodekan beberapa hal dalam php saat bekerja pada sebuah proyek dengan seorang teman saya yang adalah pengelola proyek. Kami saling mengirim pesan dalam upaya kolaborasi. Kami selalu bercanda bolak-balik dalam bermain.
Saya sedang mencoba untuk mendapatkan ssh-agent untuk bekerja dengan baik pada mesin saya sementara kami mengalami perang agama Perl vs PHP. Kemudian saya menyebutkan sesuatu tentang ssh-agent yang perlu dievaluasi (tidak yakin mengapa saya mengatakan itu). Jadi dia mengirimi saya pesan ini sebagai upaya, jadi saya pikir, untuk membantu saya dengan masalah saya (ingatlah bahwa saya dituntut untuk melakukan root):
PERINGATAN! JANGAN LARI PERINTAH YANG !!!
JIKA Anda menghapus eval dan menjalankan perintah dalam dengan sendirinya itu adalah:
Butuh saya semua 4 detik untuk melihat apa yang terjadi tetapi kerusakan sudah dilakukan. Saya harus menginstal ulang OS saya. Untungnya, tidak ada pekerjaan saya yang dihapus kecuali beberapa hal di / etc iirc. Dia tertawa besar ketika saya mengiriminya pesan horor yang menanyakan mengapa dia melakukan itu. Kami berdua adalah insinyur sistem jangka panjang. Dia tidak berpikir saya akan menjalankannya dan akan lebih berhati-hati untuk memeriksanya sebelum hanya melakukannya dan saya hanya mempercayainya sehingga saya bahkan tidak menganggap dia bermain-main. Tak perlu dikatakan, cerita kecil ini muncul sepanjang waktu di antara kami. Jadi, saya memutuskan untuk mengabadikannya.
Bagaimana saya mengurangi ini terjadi lagi? Saya tidak percaya siapa pun!
Kisah lain yang kurang menarik adalah beberapa tahun yang lalu saya melakukan beberapa pekerjaan pada kotak kritis misi di tempat kerja. Saya punya beberapa istilah yang terbuka untuk mesin yang berbeda. Saya perlu menghapus beberapa hal yang tidak perlu dalam direktori. Yah, aku tersesat dalam hal dan sengaja rm'ed tapi . di dir lokal saya tetapi pada host yang salah (istilah yang salah) !!. Saya menjalankan perintah di / var / lib / mysql bukan / tmp pada server aplikasi (istilah yang berbeda). Tidak perlu dikatakan, saya menghapus database produksi. Untungnya, kami memiliki siaga hangat yang kami lakukan ketika saya dan rekan kerja membangun kembali primer dari cadangan dan siaga. Butuh sekitar 18 jam untuk melakukannya.
Mitigasi: lebih berhati-hati tentang windows apa yang saya jalankan perintah sebelum menjalankannya.
sumber
versi singkat
sumber
kill -9 -1
#!/bin/bash
, dan saya pikir ini akan memenangkan golf kode untuk forkbomb terpendek di bash.Saya pernah ingin menghapus banyak file dalam direktori.
Komputer kemudian berkata, "Apakah kamu yakin? [Y / T]" Saya pikir "TENTU SAJA Saya yakin, saya tidak akan mengetik perintah sialan di sebaliknya! Sheesh komputer bodoh menggerutu ..."
Um ... WTF? Apakah saya baru saja menghapus direktori windows saya? ....
Pada hari-hari hard disk kecil saya tahu untuk apa setiap file di c: \ windows dan untuk apa namanya, tetapi bahkan setelah menghapus semua sistem tidak pernah sama. Saya mendapat sedikit rasa hormat untuk bisikan "apakah Anda yakin". Hanya sedikit.
sumber
Saya pikir hal paling bodoh yang pernah saya lakukan adalah menghapus rute default pada keluar firewall cluster eksternal - sementara vpn'ed ke desktop saya lebih dari seratus mil jauhnya.
Untungnya itu dalam periode yang ditentukan sebagai downtime yang direncanakan (untuk berjaga-jaga), tapi itu tidak menyelamatkan saya perjalanan pulang pergi 200 mil dan mengkonfigurasi ulang firewall di tempat. Itu juga tidak membantu bahwa ini mengeluarkan sistem produksi internet kami yang terbuka selama perjalanan saya dan perbaikan selanjutnya.
Kita semua tahu definisi nano-detik. Ohno-detik bahkan lebih kecil, dan ini adalah waktu antara memukul 'masuk' dan menyadari kesalahan Anda.
sumber
Pertama dari dua ...
Pada kotak Solaris kami memiliki cadangan tar dari mesin AIX ..
Salah satu Pengembang mengetik:
Tentu saja jalur dalam pajak itu absolut dan kami akhirnya membuat distro baru unix ... Solarix ... Satu-satunya masalah dengan distro adalah ia tidak bisa boot :(
sumber
Kisah yang diceritakan kepada saya:
Cabang lain dipanggil karena PBX lokal mereka memiliki beberapa masalah. Setelah beberapa penyelidikan, kami mengetahui bahwa mereka memperbarui server mereka, tetapi bukan konfigurasi Asterisk mereka. Jadi, admin memutuskan untuk menginstruksikan pria cabang untuk mengulang konfigurasi.
sumber
dari pada
Untungnya itu tidak terjadi pada saya ;-)
sumber
Niat saya adalah sumber .bashrc, tapi saya terlalu tergesa-gesa dengan tab-complete ...
sumber
Sesuatu seperti ini:
Maksud saya sda4. Saya menghapus seluruh disk, bukan hanya partisi :-(
sumber
XCOPY
adalah binatang yang kuat - tanpa ampun dalam eksekusi itu dan terbelakang oleh fakta bahwa baris perintahnya bertolak belakang dengan WindowCOPY
dan UNIXcp
.Beberapa hari yang lalu saya tidak sengaja menulis:
XCOPY
cukup baik untuk menimpasrc
direktori saya dengan ... tidak ada! Dan itu tidak repot-repot untuk meletakkan file lama di keranjang sampah juga.Oh, dan ternyata
XCOPY
sebenarnya menimpa sektor yang sama pada disk alih-alih mengalokasikan yang baru. Saya sudah mencoba 3 program pemulihan disk, dan yang terbaik hanya bisa memulihkan 3 dari 10 file yang hilang. Tentu saja 3 file itu hanyavshost.exe
dan teman-temannya. Membengkak!sumber
punya masalah dengan jaringan (pada mesin remote) dan hanya ingin me-restart antarmuka
Saat ini, saya memastikan seseorang berada di dekat mesin sebelum mencoba hal-hal seperti ini (iptables adalah kandidat yang baik juga). Dan ketika tidak ada orang di sana, saya pernah mengetik
ke terminal (layar) lain, sehingga akan reboot jika saya tidak bisa ctrl + c perintah dalam waktu 10 menit.
Saya belajar dari kesalahan itu juga (ctrl + c tidur akan menjalankan reboot) dan sekarang saya gunakan
yang akan memungkinkan saya untuk ctrl + c itu.
sumber
shutdown -r +5
akan reboot sistem dalam 5 menit, kecuali jika Anda mematikanshutdown
proses dengankillall shutdown
misalnya.Ups, saya di sisi eksternal eth0. Server web ada di sisi lain dunia, di ruang terkunci. Tanpa akses jaringan untuk login atau reboot. Sampah.
sumber
Cookie gratis untuk siapa saja yang dapat memberi tahu saya mengapa saya idiot karena mencoba menghapus semua file dan direktori yang tersembunyi dengan demikian:
rm -rf. *
sumber
..
hardlinkSaat membersihkan folder rumah saya di server web produksi, saya lupa bahwa saya telah menghubungkan root web server ke suatu tempat di folder rumah saya. Tidak berpikir, saya menjalankan rm -rf pada folder itu dan hal berikutnya yang saya tahu, orang-orang menyebut situs webnya rusak!
OOPS!
sumber
Saya pernah membandingkan data dalam dua folder dan menjalankan rsync dengan opsi -d (hapus file pada tujuan yang tidak pada sumbernya). Dan kemudian saya beralih di sekitar sumber dan tujuan ketika saya berlari rsync. Itu menghapus semua file baru, yang ingin saya backup. Sekarang saya belajar menjalankan rsync dengan -n (dry-run).
Saya tidak punya cadangan.
sumber
Sekali waktu (mungkin Sistem III, tapi itu sudah lama), dimungkinkan untuk membuat file bernama
*
dengan menggunakan kutipan shell yang tepat. Ketika saya menemukan satu di direktori rumah saya, saya telah mengetikrm *
dan jari saya pada tombol kembali ketika sesuatu membuat saya ragu dan memikirkannya ...Membuat file seperti itu untuk pengguna lain adalah lelucon umum.
Jika file itu duduk di sana dalam direktori, itu sulit untuk dimitigasi. Refleks untuk hanya mengetik namanya persis seperti yang
ls
ditampilkan itu cukup kuat.Prank lain (kurang berbahaya) adalah memberi nama file dengan spasi putih (atau hanya spasi putih) yang jauh lebih sulit untuk dihapus ...
sumber
Karena beberapa pengalaman buruk dengan kelemahan JBoss umum setelah restart, saya ingin menghapus file kerja JBoss sebelum memulai ulang. Saya biasanya akan melakukan:
Untuk melindungi diri saya dari mengetik salah satu dari banyak kesalahan yang mungkin terjadi, seperti:
Saya membuat perintah terakhir:
Karena pengguna JBoss akan merasa kesulitan untuk menghapus file penting yang bukan miliknya.
Sebenarnya saya tidak pernah melakukan kesalahan itu, tetapi saya aman jika saya melakukannya.
sumber