Grub

Урок за grub2-mkconfig

Урок за grub2-mkconfig
Ако използвате Linux от доста време и ежедневната ви задача е да инсталирате и тествате нови дистрибуции на Linux, тогава може би сте виждали понякога всички инсталирани операционни системи да не са изброени в менюто GRUB. Може да се дължи на това, че GRUB не е инсталиран правилно, или GRUB не е в състояние да сканира правилно твърдите дискове.

Ако някога ви се е случвало, не се побърквайте! Наистина е много лесно да се реши. Буутлоудърът GRUB 2 разполага със специални инструменти за сканиране на твърдите дискове, инсталирани на вашия компютър за стартиращи операционни системи, инсталирани на вашите твърди дискове.

В тази статия ще ви покажа как да разрешите горепосочените проблеми и да ги използвате grub2-mkconfig инструмент за решаването му.  Ще използвам Debian 9 Stretch за демонстрация, но трябва да работи на всяка модерна Linux дистрибуция с инсталиран GRUB 2. Да започваме.

Какво прави grub2-mkconfig:

grub2-mkconfig е наистина прост инструмент. Всичко, което прави, е да сканира твърдите дискове на вашия компютър за инсталирани стартиращи операционни системи (включително Window, Mac OS и всякакви дистрибуции на Linux) и генерира GRUB 2 конфигурационен файл. Това е.

Разлика между grub2-mkconfig и grub-mkconfig:

Въпреки че GRUB 2 е инсталиран на вашия компютър, grub2-mkconfig команда може да не е налична във вашата любима дистрибуция на Linux. Но grub-mkconfig команда може да е налична във вашата дистрибуция на Linux. Няма разлика между grub-mkconfig и grub2-mkconfig ако е инсталиран GRUB 2.

Имайте предвид, че ако имате инсталиран GRUB legacy, тогава grub-mkconfig и grub2-mkconfig командите няма да са еднакви.

Можете да проверите коя версия на GRUB е инсталирана на вашата машина с Linux със следната команда:

$ sudo grub2-mkconfig --version
Или
$ sudo grub-mkconfig --version

Както можете да видите, на моя Debian 9 Stretch машина, GRUB 2.02 е инсталиран. Аз също нямам grub2-mkconfig на разположение на Debian 9 Stretch. Преименува се на grub-mkconfig. Така grub-mkconfig и grub2-mkconfig е същото в моя случай.

Използване на grub2-mkconfig:

The grub2-mkconfig или grub-mkconfig команда има само една важна опция. The -o или дълъг формат на -изход опция. Той се използва, за да каже на GRUB 2 къде трябва да се запази генерираният конфигурационен файл на GRUB.

По подразбиране, grub2-mkconfig или grub-mkconfig команда отпечатва генерирания конфигурационен файл в ИЗКЛЮЧЕНО, който е терминалът на вашата операционна система Linux.

Ако това е, което искате, тогава стартирайте grub2-mkconfig или grub-mkconfig команда, както следва:

$ sudo grub2-mkconfig
Или
$ sudo grub-mkconfig

Както можете да видите, генерираната конфигурация GRUB 2 се отпечатва на екрана на терминала. Това може да не е много полезно.

Ако искате, можете да експортирате генерираната конфигурация на GRUB 2 във файл. Форматът на командата е даден по-долу:

$ sudo grub2-mkconfig -o FILE_PATH
Или
$ sudo grub-mkconfig -o FILE_PATH

Ако предпочитате дългия формат, тогава

$ sudo grub2-mkconfig - изход FILE_PATH
Или
$ sudo grub-mkconfig - изход FILE_PATH

ЗАБЕЛЕЖКА: Тук, ФАЙЛОВА ПЪТЕКА е пътят към файла, където искате да бъде запазена генерираната конфигурация на GRUB 2.

Да кажем, че искате да запазите генерираната конфигурация на GRUB 2 във файл личи.cfg във вашия потребител У ДОМА директория.

За да направите това, изпълнете следната команда:

$ sudo grub2-mkconfig -o ~ / grub.cfg
Или
$ sudo grub-mkconfig -o ~ / grub.cfg

Както можете да видите, се генерира нов конфигурационен файл GRUB 2.

Както виждаш, личи.cfg файл се генерира на моя потребител У ДОМА директория.

Както можете да видите, съдържанието на генерираното личи.cfg файлът е същият като по-рано, когато отпечатах изхода в терминала.

Актуализиране на конфигурационния файл GRUB 2 (BIOS):

Ако използвате стари дънни платки, базирани на BIOS, тогава конфигурационният файл на GRUB 2 за зареждане трябва да е в / boot / grub / grub.cfg файл, както можете да видите на екранната снимка по-долу.

ЗАБЕЛЕЖКА: На някои дистрибуции на Linux като CentOS 7 или RHEL 7 конфигурационният файл GRUB 2 може да бъде намерен на / boot / grub2 / grub.cfg. Ако случаят е такъв за вас, уверете се, че сте коригирали пътя, преди да стартирате grub2-mkconfig или grub-mkconfig команда в статията по-долу.

За да актуализирате конфигурационния файл GRUB 2 на BIOS базирана инсталация на Linux, изпълнете следната команда:

$ sudo grub2-mkconfig -o / boot / grub / grub.cfg
Или
$ sudo grub-mkconfig -o / boot / grub / grub.cfg

Конфигурационният файл на GRUB 2 трябва да бъде актуализиран.

Ако очаквате някакви промени, рестартирайте компютъра със следната команда:

$ sudo рестартиране

Трябва да видите какво очаквате в менюто GRUB веднага след като натиснете бутона за захранване.

Актуализиране на конфигурационния файл GRUB 2 (UEFI):

На дънните платки, базирани на UEFI, актуализирането на конфигурацията GRUB 2 е малко по-сложно.

При инсталираните на EFI Linux Linux конфигурационният файл GRUB 2 е в / boot / efi / EFI /<ВАШИТЕ_OS>/ груб.cfg

Тук, е името на директорията, където личи.cfg се намира. Името на директорията ще бъде различно за всяка дистрибуция на Linux. Номерът е да се определи името на директорията, която се използва по време на зареждане. Ако не сте си играли с различна дистрибуция на Linux, шансовете са по-големи, че ще има само една директория. В противен случай ще има много директории, от които ще трябва да определите активния.

Изпълнете следната команда, за да изброите всички налични директории в / boot / efi / EFI директория:

$ sudo ls / boot / efi / EFI

Както можете да видите, на моята машина CentOS 7 имам само една директория centos /

Сега, за да актуализирате конфигурационния файл GRUB 2, изпълнете следната команда:

$ sudo grub2-mkconfig -o / boot / efi / EFI / centos / grub.cfg
Или
$ sudo grub-mkconfig -o / boot / efi / EFI / centos / grub.cfg

Конфигурационният файл на GRUB 2 трябва да бъде актуализиран.

Сега рестартирайте компютъра си и ще видите очакваните записи в менюто GRUB.

Друго използване на grub2-mkconfig и grub-mkconfig:

Да предположим, че сте актуализирали ядрото на вашата любима дистрибуция на Linux. След инсталацията проверихте версията на вашето ядро ​​и сте изненадани, че не е актуализирана! о, не!

Е, не се разстройвайте. The grub2-mkconfig или grub-mkconfig команда може също да сканира / boot директория, за да проверите за инсталирани ядра на Linux и да генерирате GRUB 2 запис за зареждане за всяко от тях.

Командите и процесите са същите, както са дадени в Актуализиране на конфигурационния файл GRUB 2 (BIOS) и Актуализиране на конфигурационния файл GRUB 2 (UEFI) раздели на тази статия по-горе.

Така че вие ​​използвате това grub2-mkconfig или grub-mkconfig команда за решаване на много проблеми с зареждането на Linux. Благодаря, че прочетохте тази статия.

Как да инсталирате и играете Doom на Linux
Въведение в Doom Серията Doom възниква през 90-те години след пускането на оригиналния Doom. Това беше незабавен хит и от този момент нататък серията ...
Vulkan за потребители на Linux
С всяко ново поколение графични карти виждаме, че разработчиците на игри преместват границите на графичната вярност и се приближават една крачка до фо...
OpenTTD срещу Simutrans
Създаването на собствена транспортна симулация може да бъде забавно, релаксиращо и изключително примамливо. Ето защо трябва да сте сигурни, че изпробв...