Rumah >Operasi dan penyelenggaraan >operasi dan penyelenggaraan linux >Apakah maksud Linux grub?
Linux grub ialah singkatan daripada "GRand Unified Bootloader". Fungsinya adalah untuk mengambil alih kawalan daripada BIOS semasa permulaan, memuatkan dirinya sendiri, memuatkan kernel Linux ke dalam memori, dan kemudian menyerahkan hak pelaksanaan kepada kernel. ; sebaik sahaja kernel bermula Ambil kawalan, GRUB telah menyelesaikan tugasnya dan tidak diperlukan lagi.
Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.
Apakah maksud Linux grub?
GRUB berasal daripada singkatan GRand Unified Bootloader. Fungsinya adalah untuk mengambil alih kawalan daripada BIOS semasa boot, memuatkan dirinya sendiri, memuatkan kernel Linux ke dalam memori, dan kemudian memindahkan hak pelaksanaan kepada kernel. Setelah kernel mengambil kawalan, GRUB telah menyelesaikan tugasnya dan tidak lagi diperlukan.
GRUB menyokong berbilang kernel Linux dan membenarkan pengguna memilih antaranya melalui menu pada masa but. Saya mendapati ini adalah alat yang sangat berguna kerana banyak kali saya mengalami masalah dengan aplikasi atau perkhidmatan sistem yang gagal di bawah versi kernel tertentu. Beberapa kali, masalah yang sama telah dielakkan apabila boot ke kernel yang lebih lama. Secara lalai, tiga kernel disimpan apabila mengemas kini dengan yum atau dnf - yang terbaru dan dua yang lebih lama. Bilangan teras yang dikekalkan sebelum dialih keluar oleh pengurus pakej boleh dikonfigurasikan dalam fail /etc/dnf/dnf.conf atau /etc/yum.conf. Saya biasanya menukar nilai installonly_limit kepada 9 untuk mengekalkan 9 teras. Ini sangat berguna apabila saya perlu kembali ke kernel beberapa versi lebih rendah.
Menu GRUB
Fungsi menu GRUB adalah untuk membolehkan pengguna memilih daripada kernel yang dipasang apabila kernel lalai bukan apa adalah dikehendaki. Menggunakan kekunci anak panah atas dan bawah membolehkan anda memilih kernel yang dikehendaki, dan menekan kekunci Enter akan meneruskan proses but menggunakan kernel yang dipilih.
Menu GRUB juga menyediakan mekanisme tamat masa, jadi jika pengguna tidak membuat pilihan, GRUB akan terus but dengan kernel lalai tanpa campur tangan pengguna. Menekan sebarang kekunci pada papan kekunci kecuali kekunci Enter menghentikan pemasa undur yang dipaparkan pada terminal. Menekan kekunci Enter serta-merta akan meneruskan proses but menggunakan kernel lalai atau kernel yang dipilih.
Menu GRUB menyediakan kernel "penyelamat" untuk menyelesaikan masalah atau jika kernel biasa tidak dapat menyelesaikan proses but atas sebab tertentu. Malangnya, kernel penyelamat ini tidak akan boot ke mod penyelamat. Aspek ini akan diperkenalkan dengan lebih terperinci kemudian dalam artikel.
fail grub.cfg Fail
grub.cfg ialah fail konfigurasi GRUB. Ia dijana oleh program grub2-mkconfig berdasarkan konfigurasi pengguna menggunakan set fail konfigurasi induk serta fail lalai grub. Fail /boot/grub2/grub.cfg akan dijana buat kali pertama apabila Linux dipasang, dan akan dijana semula apabila kernel baharu dipasang.
Fail grub.cfg mengandungi kod yang serupa dengan skrip Bash dan senarai kernel yang dipasang yang diisih mengikut susunan pemasangan. Sebagai contoh, jika anda mempunyai 4 kernel yang dipasang, indeks kernel terbaru ialah 0, indeks kernel sebelumnya ialah 1, dan indeks kernel tertua ialah 3. Jika anda mempunyai akses kepada fail grub.cfg, anda harus melihat dan merasai rupanya. grub.cfg terlalu besar dan tidak disertakan dalam artikel ini.
Fail Konfigurasi GRUB
Fail konfigurasi utama grub.cfg berada dalam direktori /etc/grub.d. Setiap fail dalam direktori ini mengandungi kod GRUB yang akhirnya disepadukan ke dalam fail grub.cfg. Corak penamaan fail konfigurasi ini direka bentuk dalam cara yang disusun, yang membolehkan fail grub.cfg terakhir dipasang dalam susunan yang betul. Setiap fail mempunyai ulasan yang menunjukkan permulaan dan penghujung bahagian itu, dan ulasan ini juga merupakan sebahagian daripada fail grub.cfg terakhir, membolehkan anda melihat fail mana setiap bahagian dijana. Komen terhad kelihatan seperti ini:
### BEGIN /etc/grub.d/10_linux ### ### END /etc/grub.d/10_linux ###
Jangan ubah suai fail ini melainkan anda seorang pakar GRUB dan faham perkara yang akan berlaku dengan perubahan tersebut. Walau apa pun, anda harus sentiasa menyimpan salinan sandaran fail asal apabila mengubah suai fail grub.cfg. Dua fail khas, 40_custom dan 41_custom, digunakan untuk menjana pengubahsuaian pengguna pada konfigurasi GRUB. Anda masih harus mengetahui akibat perubahan pada fail ini dan menyimpan sandaran fail grub.cfg asal.
Anda juga boleh menambah fail anda sendiri pada direktori /etc/grub.d. Satu sebab yang mungkin untuk melakukan ini adalah untuk menambah baris menu untuk sistem pengendalian bukan Linux. Berhati-hati untuk mengikuti konvensyen penamaan dan pastikan bahawa pilihan menu tambahan dalam fail konfigurasi adalah sejurus sebelum atau selepas entri 10_linux.
Cadangan berkaitan: "Tutorial Video Linux"
Atas ialah kandungan terperinci Apakah maksud Linux grub?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!