Dalam Linux, shell merujuk kepada "shell", iaitu "jurubahasa baris arahan" yang wujud pada sistem pengendalian Ia merujuk kepada antara muka arahan berorientasikan pengguna, yang dinyatakan dalam bentuk arahan yang boleh dimasukkan oleh antara muka pengguna, antara muka ini juga boleh menyuap kembali maklumat yang sedang berjalan. Fungsi shell: 1. Terjemahkan arahan pengguna kepada kernel untuk diproses 2. Terjemahkan hasil pemprosesan teras (kernel) kepada pengguna.
Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.
Atur cara shell Linux dipanggil shell (jurubahasa baris perintah), yang merujuk kepada antara muka arahan berorientasikan pengguna Borang ialah antara muka yang boleh dimasukkan oleh pengguna antara muka ini juga boleh berjalan semula maklumat
Fungsi shell ialah:
Terjemah arahan kepada kernal
Terjemahkan hasil pemprosesan kernl kepada pengguna
Umumnya shell yang kami gunakan ialah bash.
Apabila mentafsir perintah, bash tidak akan mengambil bahagian secara langsung dalam tafsiran, tetapi akan mencipta proses baharu untuk mentafsir perintah Bash hanya perlu menunggu hasilnya, yang memastikan keselamatan proses bash.
1. Sebab
Apabila menggunakan Linux, kita semua Berbanding dengan. Windows, Linux tidak mempunyai antara muka grafik, dan ia dikendalikan menggunakan baris arahan. Walau bagaimanapun, kaedah baris arahan bukanlah operasi langsung komputer. Kita tahu bahawa lapisan bawah komputer sebenarnya terdiri daripada
0 dan 1Penghantaran setiap arahan akhirnya akan ditukar kepada 0,1 isyarat dan dihantar ke komputer untuk komputer untuk menjalankan arahan yang sepadan. Tetapi jika semua orang menggunakan komputer dengan cara ini, sudah pasti ia akan menjadi sangat sukar.
2 Fungsisistem pengendalian linux sebagai
teras (kernel), pengguna tidak boleh terus Ia. beroperasi . Sebaliknya, ia berkomunikasi dengan komputer melalui shell. Maksud bahasa Inggeris "shell" ialah "shell" , iaitu "jurubahasa baris arahan" yang wujud pada sistem pengendalian, digunakan untuk menterjemah arahan pengguna Diproses oleh kernel, kernel kemudian menterjemahkan hasil pemprosesan kepada penggunaCangkang sebenarnya boleh dianggap sebagai
penterjemah, halangan bahasa antara pengguna dan sistem pengendaliantidak boleh berkomunikasi secara langsung , tetapi perbualan dijalankan selepas terjemahan melalui cangkerang
3 cangkerang Windows dan Linux(1) windows
(2) linux
jalankan keputusan melalui kernel , dan huraikan hasil kepada pengguna melalui shell
4. Kepentingan kewujudan(1) Memudahkan komunikasi antara pengguna dan sistem pengendalian
(2) Lindungi sistem pengendalian
menghalang sistem pengendalian daripada melakukan operasi yang tidak berguna atau berbahaya. Sebagai contoh, jika kita memasukkan rentetan aksara bercelaru di bawah Linux, cangkerang akan memintas arahan dan mengembalikan
5. Mod berjalanApabila shell melaksanakan perintah, ia akan melaksanakan arahan pengguna dengan
memotong proses anak, manakalashell itu sendiri secara amnya tidak melaksanakan arahan yang sepadan . Anda boleh menganggap shell
sendiri sebagaipresiden syarikat penghantaran terjemahan Apabila pengguna mempunyai keperluan terjemahan, mereka membuat permintaan kepada shell, dan shell, sebagai presiden syarikat penghantaran, Secara amnya, kami tidak akan menyediakan perkhidmatan dari pintu ke pintu secara peribadi, tetapi akan menghantar penterjemah lain di bawah arahan kami untuk menyediakan perkhidmatan bagi menampung keperluan yang banyak dan kompleks. penterjemah sumber luar ini ialah sub-proses .
1. Konsep kebenaran linux
Kebenaran adalah kawalan pengguna. dalam sistem pengendalian Kekangan
Di bawah Linux, pengguna dibahagikan kepada dua jenis. Satu ialah pengguna super, iaitu akar. Yang lain ialah pengguna biasa.
1. Pengguna super (root)
Hanya ada satu pengguna root. Pada masa yang sama, pengguna root mempunyai kebenaran tertinggi pada sistem pengendalian.
Boleh difikirkan bahawa pengguna akar dalam sistem pengendalian adalah seperti maharaja sebuah negara purba dan tidak terikat dengan mana-mana peruntukan undang-undang. Di bawah pengguna akar, melaksanakan sebarang arahan tidak akan dihadkan oleh kebenaran. Anda boleh mengakses fail pengguna biasa lain dan mengubah suai serta memadamnya . Anda boleh melakukan pemadaman direktori root sistem pengendalian, pangkalan data dan operasi lain yang akan menyebabkan kerosakan serius atau bahkan keruntuhan sistem pengendalian
Oleh itu, kata laluan akaun root mesti ditetapkan kepada yang kompleks dan disimpan dengan baik.
Gesaan arahan pengguna root ialah “#”
2 Pengguna biasa boleh mempunyai berbilang
s. Pengguna biasa akan tertakluk kepada kekangan kebenaran. Kekangan kebenaran ini datang daripada pengguna sistem dan akar.Gesaan arahan untuk pengguna biasa
ialah“$”
(2) Penukaran penggunaDi sini, anda perlu memasukkan kata laluan akaun yang anda mahu log masuk ke . Oleh itu, cuba tetapkan kata laluan untuk setiap akaun supaya berbeza
Untuk keluar dari akaun, masukkankeluar
atau gunakan kekunci pintasan"ctrl d" yang Tersedia
Nota: Apabila menggunakan "su" sebagai pengguna biasa, anda perlu memasukkan kata laluan pengguna yang sepadan
. Walau bagaimanapun,Dalam "su" di bawah pengguna akar, tidak perlu memasukkan kata laluan pengguna yang sepadan
(3 ) Jangan tukar pengguna untuk melaksanakan Perintah surat menyuratmelaksanakan arahan yang memerlukan root kebenaran, dan kami Jika anda tidak mahu menukar pengguna untuk melaksanakan , anda boleh menggunakan perintah "sudo" pada masa ini. Perintah ini boleh secara ringkas meningkatkan keistimewaan pengguna biasa . Nota: Apabila memasukkan kata laluan, masukkan kata laluan pengguna ini, bukan kata laluan pengguna root
Tetapi pada masa ini kita akan mendapat ralat berikut:
Ini kerana pengguna biasa bukan pengguna root yang dipercayai
dan pengguna biasa tidak wujud dalam fail root yang sepadan, mengakibatkan dalam ketidakupayaan untuk melaksanakan Perintah "sudo"2 pengurusan kebenaran Linux
Dalam linux, kebenaran ditentukan oleh "orang. "
dan" Terdiri daripada "atribut benda" . Orang merujuk kepada pengguna yang menjalankan operasi dan Atribut benda merujuk kepada atribut fail
(1) Klasifikasi pelawat fail (orang)kumpulan , yang lain . Tidak seperti pengguna akar dan pengguna biasa yang orang konkrit, ketiga-tiga kategori pelawat fail adalah agak konsep abstrak, yang boleh dilihat sebagai peranan. Iaitu, identiti pengguna lain di bawah fail ini. Sebagai contoh, pengguna biasa mungkin kelihatan sebagai pemilik dan kumpulan fail dalam direktorinya sendiri, tetapi mungkin kelihatan seperti fail orang lain kepada pengguna lain 1 untuk kewujudan
Sesetengah orang mungkin keliru. adakah orang lain selain pencipta Jika anda adalah pengguna selain , apakah kepentingan kumpulan yang dimiliki oleh fail itu?
Andaikan sekarang kami mempunyai Pasukan A dan Pasukan B membangunkan produk pada mesin Linux yang sama Pada masa ini, ahli Pasukan A telah melaksanakan modul, dan ketua pasukan mahu untuk melihat kandungan modul. Jika pemilik dan lain-lain wujud dalam Linux, kerana pemilik adalah diri kita sendiri, maka apabila ketua ingin melihat kod tersebut, kita perlu melepaskan kebenaran orang lain. Tetapi pasukan lain juga dianggap sebagai lain oleh dokumen ini dengan cara lain yang bukan sahaja ketua boleh melihatnya, tetapi juga pasukan lain boleh melihat kod anda, yang boleh menyebabkan kebocoran kod dengan mudah. Untuk mengelakkan situasi ini, anda perlu tergolong dalam kumpulan. Kami hanya perlu menambahkan ketua kepada kumpulan yang mana fail itu dimiliki dan melepaskan kebenaran kumpulan itu, supaya kami boleh membuka kod kepada ketua tanpa membuka kebenaran lain
Sekarang kami mempunyai fail test.c di atas, anda boleh lihat , terdapat senarai panjang atribut sebelum nama fail. Sebelum ini, yang paling kami tahu ialah "25 Okt 16:43" ialah masa pengubahsuaian terakhir dan 100 ialah masa fail dalam bait penggunaan cakera fail . Tetapi kita tidak tahu sifat-sifat sebelumnya.
1. Pelawat fail
Kami juga ada menyebut klasifikasi pelawat fail di atas Akar pertama mewakili pemilik , dan akar kedua merujuk kepada kumpulan miliknya. Lain tidak dipaparkan kerana pengguna selain daripada dua pengguna ini adalah milik orang lain, dan tidak perlu memaparkan
2. Jenis fail
Kita semua tahu bahawa di Linux, akhiran fail tidak bermakna. Kerana linux tidak membezakan jenis fail melalui imbuhan fail. Tetapi itu tidak bermakna tiada jenis fail dalam Linux. Jenis fail Linux dibezakan dengan aksara pertama dalam lajur pertama lajur atribut yang dipaparkan oleh "ll". Seperti yang anda boleh lihat dalam gambar di atas, aksara pertama dalam test dan test.c ialah aksara “d” dan “-” masing-masing. Kedua-dua aksara ini sebenarnya jenis fail.
1) Jenis fail biasa dalam Linux
-: Fail biasa
terutamanya termasuk kod sumber, fail perpustakaan, Boleh Laku atur cara, pakej pemampatan dokumen, dsb.
d: Fail direktori
c: Fail peranti aksara
Terutamanya perkakasan , seperti papan kekunci, monitor, dsb.
b: sekat fail peranti
seperti cakera
l: fail pautan
Ambil Windows sebagai contoh Pintasan pada desktop sebenarnya adalah fail pautan. Pintasan memaut ke program permulaan perisian yang sepadan. Di bawah Linux, kami melaksanakan perintah "ln -s a.out test" :
Pada masa ini, dicipta untuk fail a.out. 🎜>Ujian fail pautan, dan permulaan fail sebenarnya "l", yang bermaksud Pautkan fail
jika kita ingin melaksanakan fail a.out , anda boleh menggunakan ujian:
p: Fail paip
Fail paip melibatkan komunikasi antara proses , saya tidak akan menerangkan secara terperinci di sini, sekarang anda hanya perlu tahu bahawa fail sedemikian wujud
3 Kebenaran fail
boleh dilihat Jadi di sini, kecuali aksara pertama iaitu jenis fail, tinggal 9 aksara lagi. Pada masa yang sama, kami tahu bahawa pelawat fail dibahagikan kepada tiga kategori , dan antara 9 aksara ini, setiap tiga aksara mewakili jenis hak akses pelawat .
(1) Klasifikasi kebenaran fail
Kebenaran fail dibahagikan kepada tiga kategori iaitu "r", "w", "x" .
"r" bermaksud baca, iaitu baca fail. “w” bermaksud menulis, iaitu, mengubah suai kandungan fail. ' "x" mewakili pelaksanaan , iaitu, melaksanakan fail yang sepadan
Kebenaran pelawat setiap fail terdiri daripada tiga kebenaran ini. Isih sebagai "rwx". Jika kebenaran yang sepadan ialah "-", anda tidak mempunyai kebenaran
Seperti yang ditunjukkan dalam gambar di atas, kebenaran " rwx -xr r-x" , bermaksud pemilik telah membaca dan menulis kebenaran pelaksanaan ; kumpulan yang tergolong mempunyai kebenaran membaca dan menulis tetapi tiada kebenaran pelaksanaan ; pelawat mempunyai kebenaran membaca dan melaksanakan tetapi tiada kebenaran menulis Kebenaran . Ruang ditambah di sini hanya untuk kemudahan perbezaan
satu demi satu Kebenaran dalam Linux juga menyokong pengubahsuaian, gunakan perintah "chomd"
. Sebagai contoh, jika kita ingin menukar kebenaran pelaksana dalam gambar di bawah kepada "-wx", kita boleh melaksanakan"chomd u-r test":
Ini Dalam borang ini, "u" mewakili
pemilikdan "-"
mewakilimengalih keluar kebenaran yang sepadan . Dan "g" mewakili kumpulan milik dan "o" mewakili orang lain . Jika anda ingin mengubah suai kebenaran pelawat lain, cuma ubah suai "u" dengan sewajarnya. Jika anda ingin menambah beberapa kebenaran, anda boleh tukar "-" kepada " ". Sudah tentu, apabila menambah atau memadamkan kebenaran, anda juga boleh menggunakan bentuk berbilang pelawat dan berbilang kebenaran, seperti “chmod u-rwx,g-rwx test” :
Jika anda mahu mengubah suai kebenaran semua pelawat , anda juga boleh menukar
“u, g, o”ke “a ”
Bawa kebenaran yang sepadan, yang tidak akan ditunjukkan di sini.2. Ubah suai pemilik fail dan kumpulan Ubah suai pemilik fail, anda memerlukan kebenaran yang sepadan, jika tidak, anda perlu menggunakan "sudo"
Meningkatkan keistimewaan. Perintah untuk mengubah suai pemilik fail ialah"chown the corresponding user file name":
Jika anda mahu ubah suai kumpulan miliknya, gunakan perintah
"chgrp", kaedah penggunaan adalah sama seperti "chown"
, yang tidak akan ditunjukkan di siniJika anda mahu untuk ubah suai pemilik dan kumpulan pada masa yang sama, hanya gunakan perintah "chown username:username file name" , kaedah penggunaannya adalah sama:
Pengguna root digunakan di sini, tidak perlu sudo untuk digunakan, pengguna biasa memerlukan sudo. Untuk
yang lain, tidak perlu mengubah suai, kerana pengguna selain daripada pemilik dan kumpulan mereka adalah orang lain
3 pada masa yang sama
Kami telah mengatakan bahawa dalam komputer, semua arahan dihantar dalam bentuk isyarat 0,1.
Kebenaran wujud dalam dua keadaan:dengan dan tanpa, dan juga terdiri daripada 0,1
.“rwx”
boleh dianggap sebagai“111”, dan “---” boleh dianggap sebagai “000”. Dan perduaan ini, jika ditukar kepada oktal, ialah "7" dan "0". Oleh itu, julat oktal kebenaran boleh dilihat sebagai "[0, 7]" . Dalam oktal, "r" bermaksud 4, "w" bermaksud 2, "x" bermaksud 1 Oleh itu, apabila mengubah suai kebenaran, selain mengubah suainya dalam bentuk "u-", kita juga boleh mengubah suainya dalam format oktal . Iaitu "nama fail gabungan nombor perlapanan pelawat chmod" . Contohnya, "chmod 777 test"
:Kaedah pengubahsuaian ini lebih baik daripada kaedah pertama mengubah suai kebenaran berbilang pelawat satu demi satu apabila anda perlu mengubahnya dengan mudah Nota: Jika anda tidak menulis keseluruhannya dengan cara ini, seperti
“7”, “35”
, sistem akan berfungsi dari belakang ke hadapan Iaitu, mengubah suainya dari arahlain->kumpulan->pemilik
, kerana pada masa ini, keizinan lain lalai kepada 0 dan lakukan. tidak dipaparkan . Seperti yang ditunjukkan di bawah: Malah, kebenaran permulaan direktori baharu ialah 777 dan baharu folder kebenaran memulakan ialah 666. Tetapi apa yang kita lihat sebenarnya tidak seperti ini. Sebabnya ialah membuat fail atau direktori akan dipengaruhi oleh umask (permission mask) . nilai umask, iaitu kebenaran yang wujud dalam topeng kebenaran Apabila menjana fail atau direktori, alih keluar kebenaran dalam topeng kebenaran . "umask": ialah kebenaran yang perlu dialih keluar oleh setiap pelawat. Iaitu, secara lalai dalam sistem, pemilik setiap fail atau direktori yang baru dibuat tidak perlu mengalih keluar kebenaran dan kumpulan yang tergolong perlu mengalih keluar 2 , iaitu , keizinan tulis ; Yang lain perlu mengalih keluar 2, iaitu, keizinan tulis pengguna biasa ialah 002 dan nilai umask pengguna akar ialah 022 "umask 0 keizinan sepadan". Contohnya, "umask 0444": Nilai umask tidak menggunakan kebenaran awal untuk mengurangkan nilai kebenaran, tetapi mengalih keluar kebenaran yang sepadan . Sebagai contoh, kebenaran awal fail ialah 666. Pada masa ini, kami menukar nilai umask kepada 0111. Jika anda menggunakan penolakan, ia akan menjadi 555, iaitu "r-xr-xr-x" . Tetapi sebenarnya ia sepatutnya alih keluar kebenaran "x" sepadan dengan 1, iaitu, ia masih kebenaran "666", iaitu, "rw-rw-rw-": memasuki direktori, anda memerlukan kebenaran pelaksanaan, iaitu kebenaran "x": pengguna akar, maka boleh memasuki direktori tanpa kebenaran "x", kerana pengguna root tidak dihadkan oleh kebenaran Cadangan berkaitan: "3. Topeng kebenaran
(1) Peranan topeng kebenaran
(2) Semak umask
Untuk menyemak nilai umask, terus masukkan perintah (3) Pengubahsuaian Nilai umask
Walaupun nilai umask boleh dijana oleh sistem secara lalai, ia juga boleh diubah suai secara manual. Kaedah pengubahsuaian ialah
Atas ialah kandungan terperinci Apakah maksud shell linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!