Saya baru saja mulai menggunakan Ubuntu sebagai OS utama saya dan saya ingin belajar tentang hal-hal yang seharusnya tidak saya lakukan, dan belajar dari hal-hal buruk yang telah dilakukan orang di masa lalu. Saya menemukan email-email ini tentang kisah-kisah horor yang dilakukan oleh admin sys UNIX & Linux di sistem mereka sendiri ketika mereka baru. Banyak dari mereka melibatkan penggunaan perintah mknod untuk menyimpangkan dan memperbaiki masalah. Saya belum pernah mendengar perintah ini sebelumnya dan halaman manual dalam Ubuntu tidak terlalu membantu. Jadi pertanyaan saya adalah, untuk apa perintah ini digunakan, dan apa saja contoh di mana itu berguna dalam penggunaan sehari-hari?
sumber
udev
apakah Linux itu spesifik, bukan? Mungkin sistem mirip Unix lainnya masih secara manual membuat perangkat?devfs
dan / ataudevd
tetapi saya tidak punya pengalaman pribadi dengan baik. Saya curiga beberapa unix lain telah bekerja dengan cara mereka sendiri untuk mengotomatiskan proses pembuatan node perangkat./dev/snd
sesuai dengan berbagai elemen dari setiap bit perangkat keras suara yang terdeteksi dan didukungnya. Perangkat lunak yang menggunakan suara dapat menggunakan perangkat itu untuk menghasilkan suara tanpa harus tahu persis apa jenis kartu suara yang mereka ajak bicara.Anda dapat membuat pipa bernama dengan itu.
Saya menggunakannya dengan satu program untuk membacanya, dan satu lagi untuk menuliskannya.
Membuatnya lebih mudah untuk berkomunikasi antar proses.
Jika tidak, Anda dapat membuat file perangkat, untuk perangkat yang tidak ada.
Juga: http://publib.boulder.ibm.com/infocenter/aix/v6r1/index.jsp?topic=/com.ibm.aix.cmds/doc/aixcmds3/mknod.htm
sumber
mknod
sesuatu selain membuat pipa bernama lebih dari jarang.Sebagai DBA oracle yang bekerja pada perangkat mentah untuk membuat grup disk Oracle ASM, kami secara rutin digunakan
mknod
untuk menautkan perangkat.Balasan di atas sangat membantu saya karena kami bukan admin sistem. Saya hanya ingin menunjukkan bahwa itu mungkin jarang dari sudut pandang admin penyimpanan untuk digunakan
mknod
tetapi dari sudut pandang Oracle ASM yang umum digunakan. (Mungkin seseorang bisa menemukan cara yang lebih baik untuk kita?)sumber
/dev
denganmknod
, perubahan tersebut akan hilang pada saat sistem reboot. Anda perlu menulis skrip atauudev
file aturan yang akan membuat perubahan / penambahan untuk Anda saat boot untuk membuatnya persisten.IMHO, bahkan untuk membuat pipa bernama, perintah mkfifo lebih baik dari mknod. Satu, itu deskriptif sendiri dalam namanya, Kedua, itu memungkinkan opsi -m untuk menimpa pengaturan umask.
sumber
mknod foo p
ketika itu satu-satunya cara.Perintah "mknod" dirilis ke pemegang lisensi di Unix (tm) Versi 4 oleh AT&T. Saya akan merekomendasikan kepada Anda semua bahwa ada baiknya menghabiskan waktu dan uang untuk mendapatkan salinannya
Bell System Technical Journal, 57: 6. Juli-Agustus 1978 hlm 1905-1929. Sistem Berbagi Waktu UNIX. (Ritchie, DM; Thompson, K.)
Masalah itu, dan terutama artikel itu, akan mengarahkan Anda pada apresiasi terhadap beberapa konsep dasar yang memungkinkan pembangunan sistem operasi yang elegan, kompak, cepat, stabil, aman, dan serbaguna seperti Unix (tm)). Berbagai sistem yang sekarang tersedia masih cukup serbaguna ;-)
Saya akan mencoba menyebutkan beberapa di sini.
1) bit setuid dan setgid dan bagaimana penggunaan bit tersebut memungkinkan pemisahan pengguna ke dalam domain privilege tepercaya dan tidak dipercaya. Hop springs abadi bahwa pengguna tepercaya akan cenderung cenderung memerintahkan sistem untuk "# cd /; rm -rf * .o ”, perhatikan penggunaan hak istimewa yang tidak tepat dan“ ruang penghancuran. ”Perhatikan juga bahwa akhir kalimat dengan frasa yang dikutip menentukan urutan tanda titik penuh dan tanda kutip penutup. Tata bahasa Inggris menyebalkan (fm). dmr dan ken menyumbangkan paten semnal kepada publik, memberkati mereka.
2) akses perangkat melalui namespace yang sama dengan file. Di sinilah keanggunan sederhana dari alat kecil yang dikombinasikan dengan alat sederhana lainnya untuk melakukan kegiatan yang tidak dipikirkan oleh pendiri menjadi kuat.
3) File dalam ruang data adalah string. Struktur dipaksakan oleh program-program di ruang program dan tidak terikat erat pada program Swiss-Army-Knife yang rumit. Apple (R), Microsoft (R), dan IBM (R) mungkin memiliki produk yang lebih baik jika lebih banyak dari mereka membaca BSTJ.
4) stdin, stdout, stderr.
5) cangkang, pemroses perintah interpretif, dapat dengan mudah membuat alat sederhana.
6) hanya optimalkan kode di loop batin, habiskan waktu dan uang Anda yang terbatas di tempat yang penting.
7) jangan menyematkan sintaksis i / o dalam prosesor terjemahan bahasa.
C. <FORTRAN
8) CIUMAN.
9) “Lebih mudah untuk merancang dan mengimplementasikan ekstensi sistem ayaeem timesharing multi-pengguna ke sistem real-time yang baik daripada sebaliknya,” saya, ekstensi timesharing ke RSX-11D, diimplementasikan menggunakan alat kecil, yang ditulis dalam MACRO 11 ketika tidak terhindarkan, jika tidak, skrip bahasa tingkat yang lebih tinggi cukup baik, 16 pengguna pada 248k byte PDP-11 // 45 (memori 16k solid state sisanya inti). Pengembangan program bersamaan dengan FOCAL, BASIC, FORTRAN IV, C, MACRO-11, pengeditan tautan, eksekusi program, batch, interaktif, dan akuisisi data / akuisisi dari beberapa percobaan ilmiah menggunakan LAB-11 dan antarmuka yang dapat dikustomisasi secara kreatif untuk A / D, D / A, jam resolusi tinggi, ...
Tidak ada keterlambatan pengeditan yang dapat dilihat dengan CRT 9600baud atau printer 120cps 30cps DECwriters. Staccato agak tersentak-sentak dengan printer 300 lpm. UT200 dan 2780 untuk RJE. Pengembangan program Fastesr daripada RSX-11M, RSX-11M +, IAS, dan versi awal VMS.
Penjadwal pembagian waktu yang sangat sederhana diimplementasikan sebagai tugas waktu nyata menggunakan karakteristik bahagia ATL terkait prioritas yang diimplementasikan sebagai dequeue.
Varietas Unix cepat kilat saat ini, tetapi hanya karena CPU dapat melakukan loop tak terbatas dalam tiga detik. TFC.
sumber