Apa favorit Anda * menyakitkan * Unix saat


34

Bagaimana kalau berbagi pelajaran favorit Anda saat belajar ?


Lucu berapa banyak jawaban yang melibatkan rmperintah. Atau sedih.
Barry Brown

Jawaban:


67

Saya ingin tahu apakah chmod 000 /akan berhasil.

Yah, tanpa cacat. Beberapa menit kemudian saya mencari CD penyelamat.


11
Wow saya bahkan tidak pernah mempertimbangkan hal itu sampai Anda menyebutkannya. Bagus
Stefan Lasiewski

Apa yang terjadi jika Anda melakukannya pada file biasa?
Luc M

@ Luc Saya kira Anda hanya perlu chmod kembali
phunehehe

Saya biasanya melakukan 'percobaan' di Arch VM saya. Jika bom, saya hanya memutar kembali.
André Paramés

Saya melakukan kesalahan ini sekali. Itu sangat memalukan, tapi pelajaran yang berharga.
Charles Sprayberry

37

Ketika saya pertama kali mulai bekerja sebagai konsultan pengguna untuk universitas yang saya hadiri, saya diberikan sudohak terbatas untuk membantu siswa yang kehilangan / lupa kata sandi mereka. sudo passwd <username>adalah teman baruku. Satu jam setelah orientasi saya, keingintahuan saya membaik dan saya mengetik sudo passwddan menatap ngeri pada prompt untuk kata sandi baru. Saya agak takut untuk ^Ckeluar dari itu, berpikir (secara keliru, ternyata) bahwa saya mungkin meninggalkan akun tersebut dalam keadaan sementara, jadi saya memasukkan kata sandi dan segera berjalan ke lantai atas ke domain lantai 2 yang suci dari SuperUser kampus dan bertanya apakah dia ingin mengetahui kata sandi root sistem utama.


4
heh, milik! Deputi Bingung: P
Spudd86

30
Anda bisa memasukkan kata sandi yang tidak cocok pada prompt konfirmasi ke-2, jadi tidak ada yang terpengaruh saat itu dan passwd akan keluar.
Wadih M.

1
@ Widih: passwdberperilaku lucu saat dijalankan sebagai root. Misalnya, ketika gagal memeriksa kesalahan ketik, itu meminta lagi.
György Andrasek

Anda bisa saja mengubahnya kembali seperti sebelumnya.
HandyGandy

1
@HandyGandy dia tidak tahu kata sandi root yang asli. Dia hanya memiliki hak sudo untuk menjalankan passwd.
gnud

32

Terkejut tidak ada orang lain yang menyebutkan ini:

rm -rf .*

(Saat mencoba untuk menghapus semua file dan subdirektori tersembunyi, sepenuhnya lupa bahwa itu akan muncul kembali .dan ..)


3
Sementara itu telah membakar saya di masa lalu, banyak versi rmtidak akan melakukannya sekarang. Saya mencoba Darwin dan mendapatkan kesalahan rm: "." and ".." may not be removed.
Stefan Lasiewski

7
Saya melakukan itu sepanjang waktu, pada semua jenis platform. Bekerja sebagaimana dimaksud pada OpenBSD, NetBSD, Linux, dan OpenSolaris.
polemon

Jika Anda ingin mencocokkan semua dotfile kecuali untuk .dan .., gunakan .[^.]*. (Ya, ini sebenarnya akan melewatkan semua file yang dimulai dengan .., tetapi biasanya hanya ada satu.)
Sven Marnach

@Ven: Cara lain adalah .??*, yang saya temukan lebih mudah untuk diketik . Yang ini tidak akan cocok dengan file dot dua huruf seperti .a, tetapi itu juga tidak biasa. Saya mencari file config di direktori home saya dengan grep -r .??*, misalnya.
Neil Mayhew

31

Makefile:

clean:
    @rm -f * .o

Yang tentu saja membuat make cleanpenghapusan kode sumber Anda bukan hanya file objek.

Pelajaran: gunakan kontrol versi.


11
Jika Anda tidak dapat melihatnya, perhatikan karakter antariksa di antara *dan.o
Denilson Sá Maia

1
Saya merasakan sakit Anda, terjadi pada kita semua di beberapa titik :)
axel_c

Pelajaran reloaded: setiap kali Anda melakukan shell-hal, dan Anda melihat " ", menjadi * tambahan , tidak ada, menjadi tambahan ekstra EXTRA hati-hati.
Jürgen A. Erhard

Saya melakukan itu, dengan tangan, setelah menarik semua malam di lab. Proyek ini dijadwalkan beberapa jam kemudian. Itu ternyata menjadi berkah tersembunyi; versi baru yang ditulis ulang yang saya masukkan jauh lebih baik daripada versi yang diperban yang saya hapus.
Barry Brown

1

30

Seandainya seorang teman berjalan :() { :|:&}; :di server jarak jauh tempat kami tidak memiliki akses konsol. Tidak dapat mem-boot ulang server produksi yang benar-benar beku .

Rusak (berdasarkan permintaan) agar lebih mudah dibaca.

:() # Define ':' as a function. Every time we say ':' execute the following code block
{ # Start of code block
    : # Call ':' again. 
    | # Pipe output to...
    : # Another ':' 
    & # Disown process. 
    # All on one line this would read :|:&, 
} # End of code block
; # End definition of ':' as a function
: # Call ':'

Mungkin lebih mudah untuk melihatnya

bomb() { bomb|bomb& }; bomb

1
Apakah Anda akan berbaik hati menjelaskan apa fungsinya? Saya tidak bisa mengetahuinya dan saya tidak ingin mencobanya;)
naugtur

23
Terlihat seperti bom fork. Jangan coba ini kecuali Anda benar-benar tahu apa yang Anda lakukan.
Zaid

5
Ya. Itu adalah forkbomb. Dan yang bagus :) Sepertinya fork bash interpreter karena tanpa henti mencoba menguraikannya. Jika Anda melewatkan yang terakhir :itu tidak melakukan apa pun. Dan itu tidak menggunakan memori sama sekali, hanya banyak garpu. [Ya, saya memang mencobanya :)]. Efek dapat diblokir dengan kuota pada jumlah proses per pengguna.
naugtur


4
+1 untuk komentar di atas. Jauh lebih mudah dipahami daripada yang terlihat.
Umang

29

Maksud saya baik, saya benar-benar melakukannya. Mencoba untuk chmodsecara rekursif direktori dan akhirnya bertukar ./dengan /.

Tentu saja sebagai root, karena hanya dengan root dapat dicapai rasa sakit sejati (dan dengan demikian pencerahan).


23
1 untuk dikutip "Hanya dengan root dapat benar-benar sakit (dan dengan demikian pencerahan) tercapai."
Stefan Lasiewski

21

Saya menghapus tabel partisi drive utama saya secara tidak sengaja, berpikir saya sedang mengerjakan drive lain.

Dengan scrollback, penggunaan yang hati-hati df, memori, dan keberuntungan saya dapat membuatnya kembali dengan tepat, menulis ulang, reboot, dan berharap ... Dan itu berhasil.


6
Seorang teman melakukan ini, dan saya membantunya mengembalikan meja. Sayangnya, kami tidak memiliki nilai sebelumnya untuk ukuran dan offset partisi, jadi kami menggunakan bash loop dengan ddmembaca blok 4k pertama dari setiap silinder yang disalurkan ke file -untuk menemukan superblock dan dengan demikian awal dari sistem file. Ini ada di CD live dan tidak ada cukup RAM untuk melakukan semua yang perlu kami lakukan (termasuk menginstal satu atau dua paket) jadi kami menyalurkan ke proses yang berjalan di ssh pada komputer lain.
Neil Mayhew

2
Aduh. Itu sebabnya saya selalu gunakan sfdisk -Ountuk membuat cadangan tabel partisi, selalu. FYI: cgsecurity.org/wiki/TestDisk dapat mengotomatiskan apa yang dilakukan @Neil Mayhew.
ephemient

2
Saya ada di sana juga, testdiskmenyelamatkan kotak saya
phunehehe

Saat ini, kami memiliki gpart, yang mencari hal-hal yang mungkin menyerupai sistem file dan membangun tabel partisi dari itu.
Simon Richter

19

Bukan momen saya, tapi milik orang lain.

Kembali ketika saya bekerja di fasilitas penelitian ilmu nuklir yang kami gunakan untuk menjalankan sejumlah komputer SunOS, Ultrix dan Linux dan para peneliti harus membagikan CPU pada mesin-mesin itu. Ketika masing-masing kelompok riset mendapatkan dana penelitian sendiri, mereka membeli komputer sendiri, kebanyakan SparcStations dan mereka melakukan administrasi sistem sendiri.

SunOS digunakan untuk mengirim dengan desktop OpenView dan manajer file yang bagus, seperti inilah tampilannya: teks alternatif

Sebagian besar peneliti kami menjalankan sebagai root, dan lebih dari sekali kami harus menginstal ulang sistem operasi mereka karena seseorang telah memutuskan untuk merapikan direktori root dan memindahkan / bin, / etc, / tmp dan segala sesuatu yang mengacaukan tampilan menjadi Trashcan atau beberapa subfolder.

Pengguna lain memilih untuk merapikan direktori / bin dan menghapus perintah apa pun yang tidak mereka ketahui.

Yang beruntung memiliki cadangan, sebagian besar telah membeli tape drive, tetapi tidak memiliki tradisi menjalankan backup sendiri.


11
Merapikan direktori root? Sangat? SANGAT? hiks
Alex B

41
TRWTF adalah mereka berjalan sebagai root, di fasilitas penelitian ilmu nuklir!
balikkan

4
tangkapan layar keren! membuat saya semua nostalgia.
gabe.

@Alex - yah ada file VMUNIX besar ini yang saya tidak gunakan ....
Martin Beckett

1
Pada versi Mac OS lama, Anda bisa memindahkan file apa saja di mana saja, jadi mungkin itulah yang mereka harapkan ...
Kevin Cantu

18

Kembali di pertengahan hingga akhir 90-an, seorang teman saya dan saya sedang mendiskusikan kebodohan rm -rf *dan pada titik apa sebuah kotak Linux akan naik turun. Kami masuk ke perpustakaan yang terhubung secara statis versus yang terhubung secara dinamis dan saya berpendapat bahwa sistem dapat hidup dengan baik tanpa /libdan kemudian melanjutkan untuk mengubah nama di workstation saya. Hal-hal buruk terjadi , tetapi kami ditinggalkan dengan beberapa jendela konsol terbuka yang dapat digunakan untuk memperbaiki kerusakan (shutdown bukan pilihan lagi). Tak satu pun dari editor akan berjalan. Sungguh menakjubkan penggunaan esoteris yang dapat Anda temukan untuk echoperintah.


19
Ada cerita klasik tentang topik yang tepat ini: lug.wsu.edu/node/414
Alex B

1
@Alex B: Kisah ini juga merupakan bagian dari Unix Horror Stories , yang sangat bagus untuk dibaca.
Bobby

18

vidan Caps-Lockvs./etc/passwd

  1. Sambungkan ke kotak Solaris lama menggunakan terminal seri lama yang tidak menyegarkan layar dengan benar.
  2. su -
  3. vi /etc/passwd. Tidak ada vipw, dan "kami hanya melakukan pengeditan kecil".
  4. Hit Caps-Lockkunci dan tidak pemberitahuan.
  5. Tekan jbeberapa kali untuk menggulir ke bawah. Abaikan fakta bahwa Anda sebenarnya baru saja mengetik J("Gabung"), yang menggabungkan baris ini dengan baris berikutnya. Layar terminal serial tidak menyegarkan dengan benar, jadi Anda tidak melihat bahwa Anda baru saja menggabungkan 5 baris pertama menjadi satu baris Loooooong, sehingga merusak 5 pengguna pertama ('root', 'daemon', dll).
  6. Selesaikan suntingan yang dimaksudkan LAINNYA ke file, turun di bagian bawah.
  7. Menyimpan file.
  8. Keluar.

Saya melakukan ini sekali. Hebatnya, sistem tetap berfungsi selama berbulan-bulan. Cronjobs berjalan dengan baik, tidak ada kesalahan menonjol di logfiles.

Kami tidak melihat masalah ini sampai kami mem-boot ulang sistem beberapa bulan kemudian dan tidak bisa masuk di konsol. psmenunjukkan banyak pekerjaan yang dimiliki oleh UID '0' bukan oleh pengguna 'root'.

Anda tidak bisa masuk sebagai root, atau menjalankan suatau su -, dan tidak ada sudodi kotak ini. Tidak ada floppy drive, CD-ROM rusak dan tidak ada port USB (jadi tidak ada CD-ROM eksternal). Mode single user tidak berfungsi, karena Anda perlu mengetikkan kata sandi untuk root, dan itu berasal /etc/passwd.


2
Tentunya "J" adalah perintah "Bergabung" (seperti dalam gabung bersama)?
dr-januari

2
Tunggu sebentar, saya tidak perlu mengetikkan kata sandi untuk boot ke mode pengguna tunggal. Sebenarnya itulah cara saya mereset kata sandi root jika saya kehilangan itu. Atau apakah itu berbeda di masa lalu?
phunehehe

Pada Solaris, Anda perlu mengetahui kata sandi root untuk masuk ke mode pengguna tunggal. Saya harus melakukan ini 2 minggu yang lalu sebenarnya.
Stefan Lasiewski

@ phunehehe Saya pikir Anda memikirkan trik init = / bin / sh. Itu memang tidak memerlukan kata sandi root. Namun runlevel 1 masih membutuhkan root pass
Patrick

18
rm -f * ~

dan

rm -rf ${DIR}/

kapan DIRtidak diatur!


4
Maksudmu ${DIR}? Karena $(DIR)akan mencoba mengeksekusi perintah DIR.
Denilson Sá Maia

16

Saya ingat mencoba mengirim SysRqurutan kunci ke mesin jarak jauh ...

... tapi itu ditangkap oleh yang lokal.


14

Pengenalan sederhana haltbeberapa detik kemudian bahwa saya tidak menggunakan shell lokal dan tidak memiliki kemungkinan untuk menghidupkan kembali server produksi.

Pelajaran yang dipetik? Prompt dari mesin sekarang terlihat seperti

[ --> root <-- @kompost:/home/echox] #

dengan beberapa markup merah yang bagus ;-)


6
Ada alat yang disebut molly-guardyang memeriksa apakah Anda login jarak jauh dan bertanya apakah Anda benar-benar ingin melakukan ini.
Simon Richter

IPMI adalah hal yang sangat nyaman untuk dimiliki :-)
Andre Holzner

13

Momen favorit saya adalah, ketika rekan kerja, yang merupakan pengguna emacs, ingin mengedit file penting.

Karena emacsterlalu banyak mengetik, ia harus menyiapkan alias untuk emacs:

alias em=emacs

Di bawah pengaruh kopi yang tidak cukup atau terlalu banyak, dia tentu saja salah mengetik em...

Yah, ini hanyalah alasan lain untuk menggunakan vi...;)


Yang benar-benar saya sukai dari yang satu ini adalah kenyataan bahwa ia peduli dengan berapa lama emacs tetapi tidak hanya digunakan alias e=emacs.
Steven D

Selain kopi, perhatikan bahwa 'e' dan 'r' tidak terlalu jauh di dekat keyboard ...
leonbloy

11

Atau pengalaman lain, bagaimana merasa benar-benar bodoh dalam beberapa langkah mudah yang tampaknya tidak terlalu bodoh secara individual.

Langkah satu: buat akun untuk anak itu, kalau-kalau dia ingin menggunakan kotak Linux. Berikan kata sandi yang sepele, karena bagaimanapun ini adalah sistem rumah dan tidak terekspos ke internet.

Langkah dua: beri waktu untuk berlalu, jadi Anda tidak ingat langkah pertama.

Langkah tiga: buka port SSH di firewall (sebenarnya NAT di router) untuk ssh in. Lagi pula, akun saya memiliki kata sandi yang cukup bagus, dan tidak seperti ada sesuatu yang sangat berharga.

Langkah empat: dapatkan pemberitahuan dari ISP bahwa ada semacam aktivitas DOS yang menuju ke situs Swedia. Asumsikan itu mungkin kotak Windows, dan periksa dan perkuat.

Langkah lima: dapatkan pemberitahuan dari ISP bahwa itu masih terjadi. Mintalah beberapa perincian, dapatkan alamat IP situs Swedia, jalankan Wireshark, temukan kotak dari mana serangan itu berasal.

Langkah enam: bersihkan kotak Linux, merasa bodoh. Cari info masuk berasal dari alamat Rumania. Hapus akun tanpa kata sandi yang baik.


1
Pernah ke sana. Saya pernah membuat akun dengan login tes: tes, bermaksud menggunakannya hanya sekitar lima menit. Saya lupa menghapusnya dan mendapat hasil yang sama seperti Anda. Tidak akan lagi. Saya pergi semua kunci publik auth sekarang.
ATC

1
Ya, saya juga menggunakan kunci publik / pribadi. Kadang-kadang bisa sedikit mengganggu, tetapi jauh lebih aman daripada kata sandi sederhana.
Denilson Sá Maia

4
Saat membuka SSH ke internet, TIDAK PERNAH mengizinkan otentikasi kata sandi. Hanya kunci publik / kunci pribadi, dengan begitu Anda tidak dapat tertangkap basah.
wazoox

@wazoox: otp juga merupakan alternatif yang bagus.
Jürgen A. Erhard

Saya menggunakan port non-standar, bernomor tinggi untuk ssh, diteruskan dari router ke port ssh standar di Linux dan kotak Mac OS X saya. Aku tidak pernah mendapatkan setiap percobaan proses masuk. Saya memiliki port yang dikonfigurasi dalam shortcut di ~ / .ssh / config pada komputer saya yang lain sehingga biasanya saya bahkan tidak perlu mengetiknya.
Neil Mayhew

11

Di laboratorium komputer ketika saya masih kuliah, mereka memiliki screen saver yang mensimulasikan sekelompok bola yang akan melayang bolak-balik. Mereka menarik masing-masing dengan gravitasi simulasi.

Suatu kali, ketika saya bermain-main dengan pengaturan, itu jatuh dengan kesalahan Error: force on balls too great


10

Saya pernah mengembangkan driver perangkat untuk Unix. Itu memiliki masalah pointer dan selama pengujian mulai menghapus akhir array dalam memori kernel. Saya lambat menemukan ini dan tidak langsung menekan tombol reset. Driver telah menulis di seluruh cache buffer disk yang kemudian dibuang ke disk sebelum saya tekan reset. Banyak blok adalah inode dan direktori, dan saya berakhir dengan filesystem yang benar-benar hancur. Saya pikir 6000 file yatim piatu dimasukkan lost+foundsebelum saya menyerah dan diinstal ulang. Untungnya, ini hanya sistem pengujian, bukan workstation saya dengan semua file saya di atasnya.


Sekarang melakukan itu pada sistem kerja Anda akan benar-benar bodoh ;-)
Jürgen A. Erhard


7

Tahun lalu, seorang kolega saya menggunakan salah satu workstation linux kami untuk membuat salinan flash disk menggunakan ddperintah. Dia tidak sengaja mengetik sesuatu yang mirip dengan yang berikut:

dd if=flash-image.img of=/dev/sda1

Pada saat dia menyadari kesalahannya - menimpa hard disk mesin dan bukan flash drive - mesin sudah disemprot. Kami harus membangun kembali kotak itu, yang kebetulan juga merupakan mesin yang menampung semua VM pengembangan kami pada saat itu ...


2
1 - sangat sangat sangat berhati-hati dengan dd!!! :-)
Josh

7

Ini terjadi pada saya tahun lalu. Saya sedang menghapus beberapa file dari server menggunakan variabel sementara:

rm -rf ${prefix}*

Tebak apa? Variabel $prefixtidak ditentukan!
Bisa dibayangkan bencana ... itu mengakibatkan beberapa file yang sangat penting dihapus.

Saya hampir memecahkan Control-Cdan berlari ke CPU untuk melepaskan kabel jaringan !!

Hahaha aku yakin seseorang sudah melakukan ini ...


7

Sementara di tahun kedua saya belajar ilmu komputer kami diberi tugas pekerjaan rumah untuk menulis sebuah program dalam C yang akan menelurkan sejumlah subproses dengan forkdan membuat mereka berkomunikasi dengan pipa dalam "lingkaran" dan mencari tahu mana yang harus menjadi "pemimpin" ".

Kami masih sangat noobs saat itu dan sebagian besar peple tidak memiliki mesin Linux, jadi kami mengerjakan akun kami di server utama fakultas kami (yang menjadi tuan rumah situs resmi dan akun staf serta situs juga). Sebagian besar orang menulis forkbomb pada tahap mencoba mengerjakan pekerjaan rumah. Lebih dari setengah dari kelompok saya membuka abusersfile. Itu adalah beban tertinggi pada server itu dalam waktu yang lama :)


itu konyol dari mereka ... mereka seharusnya tidak menempatkan Anda pada mesin yang sama dengan webservers dan lainnya. (Sekolah saya memiliki hal yang sama, tetapi kami memiliki pengungkit yang didedikasikan untuk cangkang jarak jauh sehingga forkbombs tahunan tidak benar-benar lepas kendali)
Spudd86

Microsoft mendapat fakultas untuk masuk ke dalam kemitraan dan windows dan .net sudah banyak dipromosikan saat itu. Tidak ada yang mengharapkan banyak noobs di server :)
naugtur

6

Ketika Universitas saya memutuskan untuk mengganti jaringan nirkabel untuk menggunakan otentikasi LEAP Cisco milik ...

Memulai pertempuran yang sangat panjang yang berakhir dengan cukup baik. Menulis dokumentasi untuk orang lain yang ingin menjalankan Linux dan memiliki akses ke internet. Enam bulan kemudian mereka memutuskan untuk menambahkan dukungan PEAP juga. wajah tamparan

Itu favorit saya karena saya menang. Saya berhasil.


6

Sebagai root pada Solaris,

$ kill -9 1

... dan semuanya turun.

Teman saya dipecat karena ini.


6

Saya adalah seorang asisten lab untuk kelas Linux. Salah satu siswa memanggil saya karena dia tidak bisa lagi su -karena dia mendapatkan permission denied. Oke, dia salah ingat / salah ketik kata sandi. Reboot ke mode pengguna tunggal dan reset. Apa?! suMASIH tidak berfungsi ?! HARUS tunduk pada kehendak saya! Jadi saya reboot ke mode single user untuk mencari tahu apa yang dia lakukan. Saya menyadari bahwa dia berlarichmod -R 777 /var/www/html/drupal-6.19 /

Perhatikan jarak antara nama direktori dan garis miring terakhir.

Setelah beberapa menit, "Saya benar-benar tidak ingin menginstalnya kembali, jadi apa yang dilakukan dan bagaimana ini.", Saya berhasil menemukan bahwa / bin / su sekarang memiliki izin file 777. Itu juga dapat dibaca sebagai izin file 0777, yang menghapus bit setuid dari /bin/su. Cepat chmod u+s /bin/sudan saya adalah pahlawan.


5
Itu satu-satunya hal yang perlu Anda ubah untuk melepaskan sistemnya?
Michael Mrozek

1
Saya yakin itu masih rusak, tapi mungkin itu bekerja dengan cukup baik untuk seluruh kelas.
Stefan Lasiewski

1
Itu cukup berhasil untuk seluruh kelas; sekolah jelas memiliki persyaratan bahwa semua drive siswa harus diinstal ulang setiap kuartal. Dan dia tidak melanjutkan Linux setelah kuartal ini selesai, jadi saya tidak repot-repot memperbaikinya.
Kevin M

5

Bukan yang menyakitkan ... Tapi momen kecil yang menyenangkan:

Aku sudah salah ketik lssebagai sldan menemukan bahwa sysadmin memiliki sesuatu yang dipasang untuk kasus tersebut.

(sudah tersedia di repositori Debian , Ubuntu , Gentoo , ...)


4
Itu lebih merupakan Telur Paskah daripada saat yang menyakitkan. Saya membacanya sebelum saya menemukannya, tetapi saya tidak pernah menemukan kesalahan ketik, jadi tidak ada +1.
Umang

Grinn .. Aku pernah punya pengguna yang datang kepadaku "Sistemmu diretas !!! 11salah aku mendapat animasi ASCII-art ketika aku mengetik ls"
blauwblaatje

^ Tidak terlalu lucu!
mr_eclair

5
git init
git clean -f

Ini tidak menghapus repositori. Ini menghapus semua yang tidak ada di repositori.

Setelah mencoba untuk menyingkirkan repo yang ada dan kemudian mulai kontrol sumber lagi (pada menyelesaikan versi pertama dari proyek), kedua perintah nuked seluruh kode saya.


git rebase (dengan squashing) dan git filter-branch (untuk menghapus file) adalah teman Anda :-) Dengan ini saya maksudkan bahwa ada cara yang lebih aman untuk menghapus cruft dari riwayat repo Anda dan berakhir dengan proyek yang relatif bersih. Saya biasanya membuat salinan cadangan dari cabang saat ini sebelum rebasing yang luas.
Neil Mayhew

5

Sebuah perusahaan tempat saya bekerja dulu memiliki produknya yang berjalan di SCO. Saya sedang melakukan beberapa debug tentang aplikasi menjadi sangat lambat di server demo kami dan pada saat yang sama ada banyak pelanggan yang diberikan demo / kuliah tentang fitur baru yang akan datang.

Jadi, saya menjalankan aplikasi yang dulu macet, melakukan hal-hal saya untuk memverifikasi akar masalahnya, tetapi karena masih "macet", saya mencoba membunuhnya:

pkill -9 mytestapplication

Apa yang saya pelajari adalah bahwa pkill tidak melakukan hal yang persis sama pada SCO seperti pada linux =)

... Ini pada dasarnya membunuh semua yang dapat diakses pengguna, dan dengan root ... itu segalanya =)


1
Bisakah Anda jelaskan apa fungsinya pada SCO? Saya tidak tahu, dan saya tidak dapat menemukannya dengan mudah di google.
Denilson Sá Maia

1
itu pada dasarnya membunuh semua yang dapat diakses oleh pengguna, dan dengan root .. semuanya =)
rasjani

3

Peralihan saya dari Debian ke Ubuntu dimulai pada hari saya mencoba menghapus beberapa file dan direktori, yang berarti mengetik

rm -r /var/tmp/*

Sayangnya, saya memasukkan spasi antara "/ var / tmp /" dan "*" dan bahkan lebih buruk lagi, saya berada di root dari sistem file.

root@workstation:/# rm -r /var/tmp/ *

Tolong jangan mencobanya di rumah!


'zsh: yakin Anda ingin menghapus semua file di / [yn]?' - ini cukup berguna
André Paramés

ini akan menghapus file dari / bagaimana bisa?
mr_eclair

3

Ada trik rapi untuk melakukan hal yang sama dengan dirnamedan basename, masing-masing, di Bash:

${path%/*}
${path##*/}

Tidak begitu lucu ketika $pathberisi garis miring ...


3

Saya memiliki dua drive yang diinstal pada satu titik dan memiliki sistem file root dari drive kedua yang dipasang di direktori di dalamnya /mnt. Saya berada di direktori itu dan mencoba untuk menghapus vartetapi akhirnya mengetik rm -rf /var. Beberapa naluri sepertinya menendang yang mengatakan var harus didahului dengan garis miring!

Ketika saya menyadari apa yang telah saya lakukan, saya langsung memukul Ctrl-Ctetapi sudah terlambat. rpmDatabase saya sudah lama meninggalkan gedung. Saya menghabiskan waktu lama untuk mengembalikan semuanya menjadi normal.

Sekarang untuk bagian yang menyakitkan.

Saya kembali ke direktori itu /mntuntuk melanjutkan apa yang telah saya lakukan. Apa yang saya ketik? Baiklah, katakan saja insting itu muncul lagi.

Setidaknya saya bisa memulihkan sistem lebih cepat untuk yang kedua kalinya;)


1
Saya mengerti ini sebelum Anda tahu tentang chroot (1)?
Kevin M
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.