Unix Legendry (dan * nix lainnya juga)

12

Ini adalah kembaran dari pertanyaan ini .

Sebagian besar jawaban yang tidak jelas / dipilih akan mendapatkan suara jawaban!

Sebagian besar sistem Unix dan Unix-like memiliki "sejarah tradisional" yang diwariskan kepada setiap generasi, sehingga pendatang baru dapat melihat dan memahami beberapa bagian sistem yang lebih esoteris. Berapa lama admin * nix di luar sana berkontribusi terhadap "Legendry" dari "UNIX", sejauh pengetahuan esoterik yang harus dihadapi oleh admin baru?

Avery Payne
sumber
2
Haruskah wiki ini, methinks
squillman
Saya akan, pada waktu yang tepat. ;) Sejujurnya, saya telah melakukan beberapa wiki bermain murni, dan kecuali ada sedikit pun suara yang akan diperoleh, tidak ada yang akan datang . Serius, ini bekerja seperti ini setiap saat, tanpa gagal Orang tidak akan memasukkan entri untuk wiki kecuali itu bukan kepalang yang terkait dengan pekerjaan (yaitu kartun sysadmin favorit, dll.)
Avery Payne
2
Saya perhatikan hal "no one comment in wiki". Itu sangat aneh. Orang-orang memainkan kesalahan server seperti itu adalah video game. Bodoh.
Matt Simmons
1
Saya telah memperhatikannya juga, tapi (IMHO) tidak berarti kita harus mendorong rep-pelacur ... Beritahu saya ketika Anda mengambil alih ke meta, mereka datang dengan beberapa nyala api yang cukup bagus di sana (percayalah padaku , Anda akan mendapatkannya) :)
squillman
1
Aku benci mengatakannya ... tapi kupikir harus ada semacam kompromi. Pengamatan umum saya adalah bahwa jika Anda mencapai "massa kritis" tertentu, Anda dapat beralih ke wiki dan pertanyaannya akan terus mengumpulkan jawaban. Jadi, saya bertanya-tanya, jika Anda mengatur bendera wiki, mungkin itu harus menunggu jawaban yang cukup untuk memulai pertanyaan, dan mungkin setelah waktu yang ditentukan - katakanlah 3 jam - itu menendang secara otomatis ke wiki. Ini adalah kompromi yang baik, keseimbangan antara menghargai orang-orang yang bersedia memulai proses dan menjadikannya upaya komunitas berdasarkan kontribusi. Ide ide? Komentar?
Avery Payne

Jawaban:

20

Favorit pribadi selalu menjadi "Case of the 500-Mile Email"

http://www.ibiblio.org/harris/500milemail.html

Spoiler

$ units
2411 units, 71 prefixes, 33 nonlinear units

You have: 3 millilightseconds
You want: miles
    * 558.84719
    / 0.0017893979
faultyserver
sumber
1
Wow, saya memposting tiga jawaban tetapi yang ini harus menjadi pemenang!
HTTP500
+1 Ya, saya suka yang ini. Kecuali Anda salah mengeja favorit (haha, jk)
squillman
@squillman Semua yang Tolkien tumbuh ;-)
faultyserver
@squilman - tidak, dia tidak melakukannya. Itu ejaan bahasa Inggris yang benar.
Alnitak
@squilman Tergantung jika Anda orang Kanada. (warna, favorit, periksa, dll.) ;-)
KPWINC
11

Bagi saya hal yang paling menakjubkan tentang tradisi UNIX adalah bahwa UNIX pada dasarnya ditulis oleh satu orang - Ken Thompson saat berada di Bell Labs. Ada akun menarik tentang hal ini yang dapat ditemukan di sini: http://www.bell-labs.com/history/unix/

Beberapa kutipan hanya tak ternilai:

"Saya mengalokasikan setiap minggu untuk sistem operasi, shell, editor, dan assembler untuk mereproduksi dirinya sendiri ...", Thompson menjelaskan.

Pipa:

Inovasi lain dari UNIX adalah pengembangan pipa, yang memberi programmer kemampuan untuk merangkai sejumlah proses untuk hasil tertentu.

Itu tidak mudah. "Sangat mudah untuk mengatakan 'kucing menjadi grep ke ...,' atau 'siapa yang menjadi kucing menjadi grep,'" McIlroy menjelaskan. "Tetapi ada semua parameter samping yang dimiliki oleh perintah ini; mereka tidak memiliki argumen input dan output, tetapi mereka memiliki semua opsi ini."

Meskipun terhalang, McIlroy tidak membatalkan ide itu. "Dan selama periode 1970 hingga 1972, saya dari waktu ke waktu mengatakan, 'Bagaimana kalau membuat sesuatu seperti ini?', Dan saya akan mengajukan proposal lain, proposal lain, proposal lain. Dan suatu hari saya muncul dengan sintaksis untuk shell yang sejalan dengan perpipaan, dan Ken berkata, 'Aku akan melakukannya!' "

"Dia bosan mendengar hal ini," jelas McIlroy. "Dia tidak melakukan persis apa yang telah saya usulkan untuk panggilan sistem pipa. Dia menemukan yang sedikit lebih baik yang akhirnya berubah sekali lagi menjadi seperti yang kita miliki hari ini. Dia memang menggunakan sintaksis saya yang canggung."

"Thompson melihat bahwa argumen file tidak akan sesuai dengan skema hal ini dan dia masuk dan mengubah semua program itu di malam yang sama. Saya tidak tahu bagaimana ... dan keesokan paginya kami memiliki pesta satu ini -linier. "

" Dia memasukkan pipa ke UNIX, dia memasukkan notasi ini ke dalam shell, semuanya dalam satu malam ," kata McElroy heran.

Secara teknis apik pencapaiannya, ketika Thompson menciptakan pipa, ia juga memasukkan sesuatu yang lain ke dalam UNIX - sebuah filosofi.

Seperti yang dijelaskan McIlroy, "filosofi yang mulai diajukan oleh setiap orang adalah 'Menulis program yang melakukan satu hal dan melakukannya dengan baik. Menulis program untuk bekerja bersama. Menulis program yang menangani aliran teks, karena itu adalah antarmuka universal.'"

HTTP500
sumber
7
Terbaik. Begadang. Pernah.
Matt Simmons
8

tar tidak pernah keluar dengan kesalahan. TIDAK PERNAH. Waspadalah.

Sumber: Buku Pegangan UNIX-HATERS, halaman 31 ( http://simson.net/ref/ugh.pdf ) Maaf, tidak ada versi HTML.

Buku ini kebetulan penuh dengan legenda lainnya, dan sebagian besar masih berlaku. Dalam tahun-tahun saya menggunakan Linux, saya telah menjalankan banyak gotcha ini ... hanya saja tidak ada yang melibatkan rm-ing seluruh drive saya, syukurlah. Sungguh menakjubkan bagi saya bahwa sebagian besar buku ini masih akurat, meskipun sudah ditulis lebih dari 15 tahun yang lalu.

Dan sekarang kisah horor tar saya sendiri, hampir merupakan replika yang persis sama dengan UNIX-HATERS. Serangga yang sama, 14 tahun kemudian!

Saya ingin nirkabel saya berfungsi pada eeepc saya, untuk itu saya harus mengunduh driver, kompilasi, dan instal. Saya mengunduh semua yang saya butuhkan, dan berangkat ke perpustakaan untuk bekerja. Di tengah jalan, saya menyadari bahwa ya, saya TIDAK butuh internet untuk sesuatu, jadi saya pergi untuk menginstal.

tar -cvf somewirelessdriver.tar ./importantcompilerfiles

Oh sial. Apakah saya hanya mengetik -cvf daripada -xvf?

Ya.

Apakah tar hanya diam membuat file tar dari sampah acak, menimpa file saya yang dapat digunakan?

Ya. Bagus. Saya kira saya akan melakukannya tanpa akses internet. Untung itu bukan file multi-gigabyte ... Oh, tunggu, itu terjadi seminggu sebelumnya.

Jujur, apa-apaan ini dengan argumen command-line samar dan program linux? Tidak bisakah mereka hanya secara otomatis melakukan operasi dasar ketika dipanggil pada file dengan ekstensi yang sesuai. Mengapa dalam nyala api saya harus memberi tahu tar apa yang harus dilakukan dengan ARCHIVE? Apakah menurut saya saya ingin mengarsipkannya LAGI?

Saya pikir saya akhirnya mengerti apa itu 'tar pit', sekarang. ITULAH TEMPAT YANG MENJADI FILES.

SilentW
sumber
1
Wow. Cuma wow. Apakah Anda dapat mengedit kembali dengan tautan ini?
Avery Payne
4
Ayo, kesalahan berarti tar itu gagal. Anda hanya harus menyatakan kebenaran ... tar tidak pernah gagal ;-)
Matt Simmons
Tautan ditambahkan, serta lebih banyak komentar. Sebagai catatan, saya sebenarnya membeli MSI Wind saya, menghabiskan tambahan $ 350, hanya agar saya tidak harus menggunakan Linux jika saya tidak menginginkannya. Kisah ini adalah salah satu alasan BANYAK mengapa.
SilentW
Apakah ada yang Anda lakukan saat ini untuk menghindari kesalahan tar semacam ini? Jika demikian, apakah Anda memiliki jawaban untuk stackoverflow.com/questions/1122977/…
Andrew Grimm
7

Masuk dengan semua huruf besar

http://utcc.utoronto.ca/~cks/space/blog/unix/UnixFossilizationExample

hrm Saya khawatir saya mungkin salah paham pertanyaannya :-)

Tapi saya meninggalkan tautannya, karena menurut saya menarik!

Matt Simmons
sumber
Sebenarnya, jawabannya tepat; maksud dari pertanyaan ini adalah untuk mengumpulkan esoterika (seperti pertanyaan saudara kandungnya) dari pengalaman berbagai orang.
Avery Payne
6

The original simbol pipa itu ^

Kunci hapus asli adalah #

Kunci "kill" asli (hapus semua yang ada di telepon) adalah @

Jika Anda pernah masuk ke sistem yang lebih lama dan sepertinya tidak bisa mengetikkan komentar atau alamat email, stty menjadi teman Anda.

Ini adalah contoh sesi login edisi ke-7 di mana orang yang membuat log cukup ramah untuk menjalankan stty .. Juga, seperti yang disebutkan di sini ia mengatakan "Bagaimana mengidentifikasi shell Bourne tradisional? 1 Pemeriksaan sederhana untuk fitur yang sering tidak berdokumen tetapi karakteristik: Anda dapat menggunakan circumflex ^ (caret) sebagai pengganti | (pipa). "

chris
sumber
1
Menarik. Sumber apa saja untuk bacaan selanjutnya?
sleske
2

Salah satu yang mungkin tidak diketahui oleh banyak pendatang baru di Linux adalah bahwa pencipta Linux (Linus Torvalds) banyak meminjam dari Sistem Operasi MINIX (alat pendidikan) yang dibuat oleh Profesor Andrew Tanenbaum: http://en.wikipedia.org /wiki/Andrew_S._Tanenbaum#MINIX .

Linus dan Prof. Tanenbaum juga berdebat panjang lebar tentang manfaat / pragmatisme kernel monolitik (Linux) versus mikrokernel (MINIX, Solaris). Perdebatan itu terbuka untuk umum dan dapat ditemukan di sini: http://oreilly.com/catalog/opensources/book/appa.html

Bersulang

HTTP500
sumber
1
Debat Torvalds-Tanenbaum adalah klasik nyata :-).
sleske
2

Seni Pemrograman Unix adalah bacaan yang bagus untuk siapa saja yang tertarik dalam komputasi, bukan hanya mereka yang tertarik pada Unix. Ya, beberapa di antaranya bertanggal, tetapi masih merupakan bacaan penting.

goo
sumber
2

Semuanya adalah file, atau dapat diperlakukan seperti itu ... kecuali pengguna sialan.

Kesalahan bus berarti Anda mencoba untuk mengeksekusi data, yang disimpan di sisi data bus data / program PDP / 11.

Unix adalah satu-satunya O / S yang mendapatkan kalender dan jam sejak awal, hanya karena seorang astronom adalah salah satu penciptanya. (Ekstra komentar-kredit: sebutkan penulis itu. Ekstra kredit ekstra: beri nama pemenang medali Olimpiade di tim UNIX.)

Bidang GCOS di / etc / passwd dinamai sistem operasi GECOS, dan ditempatkan di sana hanya karena mereka menggunakan mainframe GECOS sebagai server cetak ke mini Unix asli, dan diperlukan data untuk menerima pekerjaan cetak.

kmarsh
sumber
1
dan jaringan. Siapa yang tahu apa yang mereka merokok ketika membuat model jaringan BSD di unix, tapi itu pasti tidak unixy.
chris
AT&T mengimplementasikan Streaming untuk menjadi API jaringan yang lebih UNIX, dan meletakkan lapisan Socket API di atasnya untuk kompatibilitas. Kemudian BSD (4,4 saya pikir) menambahkan Streaming sebagai API lapisan kompatibilitas yang disebut Soket.
kmarsh
1

Suatu hal yang tidak terlalu lucu saya lakukan dengan tar sekali, dan tar yang membutuhkan waktu seminggu untuk menjalankan:

  1. tar zcf foo.tar.gz ...
    • Beberapa saat pada hari berikutnya atau lebih, sesi layar naik di layar saya: <UP>
    • Sehari kemudian: <enter>
    • Tar selesai, tebak apa yang harus dipegang kunci di buffer, dan masukkan ke dalam shell yang kedua setelah tar selesai ...

Suara positif pada komentar mereka untuk orang pertama yang menjelaskan apa yang terjadi :-) Moral cerita, menjalankan hal-hal di latar belakang sesi layar.

Yang sedang berkata, saya masih suka * NIX. Saya tidak keberatan ketika segalanya kacau karena itu salah saya .

Kyle Brandt
sumber
Lebih respon terhadap jawaban SilentW daripada pertanyaan itu sendiri :-)
Kyle Brandt