±¾ÆÚΪ¡°·þÎñPGµç¾º¹ÙÍø²Ù×÷ϵͳ³£¼ûÎÊÌâ½âÎö¡±ÏµÁб¨µÀµÚÊ®ÆÚ£¬½éÉÜÔÚÏµÍ³ÖØÆôʱ£¬ÈôÓöµ½grubÎÞ·¨Æô¶¯µÄÎÊÌ⣬Ӧ¸ÃÔõÑù½øÐе÷ÊÔ¡£
ÎÊÌâÃèÊö
GRUB£¨Grand Unified Bootloader£©×÷ΪLinuxϵͳµÄºËÐÄÒýµ¼¼ÓÔØ³ÌÐò£¬ÊÇÁ¬½ÓÓ²¼þ¹Ì¼þÓë²Ù×÷ϵͳµÄ¹Ø¼üÇÅÁº¡£ÆäÖ÷Òª×÷ÓðüÀ¨£º
ÔÚPGµç¾º¹ÙÍø»úÆô¶¯Ê±¼ì²â²Ù×÷ϵͳ²¢Éú³ÉÒýµ¼²Ëµ¥£»
¼ÓÔØLinuxÄںˣ¨vmlinuz£©¼°³õʼ»¯ÄÚ´æÎļþϵͳ£¨initramfs£©£»
ÏòÄں˴«µÝ¹Ø¼üÆô¶¯²ÎÊý£¨Èç¸ùÎļþϵͳ·¾¶£©£»
Ìṩ¹ÊÕϻָ´»úÖÆ£¨Èçµ¥Óû§Ä£Ê½»ò¾ÈԮģʽ£©£»
ÔÚϵͳµÄÆô¶¯Á÷³ÌÖУ¬GRUBͨ¹ýBIOS/UEFI¼ÓÔØµÄ³õʼÆô¶¯Îļþ£¨grubx64.efi»òshimx64.efi£©£¬½âÎöÅäÖÃÎļþ£¨grub.cfg£©£¬¶¨Î»ÄÚºËÎļþ²¢½âѹÖÁÄÚ´æÔËÐУ¬×îÖÕ½«¿ØÖÆÈ¨Òƽ»Äںˣ¬Íê³É´ÓÓ²¼þ³õʼ»¯µ½ÏµÍ³·þÎñÆô¶¯µÄƽ»¬¹ý¶É¡£×÷ΪϵͳÒýµ¼µÄºËÐÄ»·½Ú£¬GRUBµÄÎȶ¨ÔËÐÐÊÇÈ·±£²Ù×÷ϵͳ˳Àû¼ÓÔØÓë³õʼ»¯µÄ»ùʯ¡£
ϵͳÆô¶¯µÄʱºò£¬´ó¼ÒÓÐûÓÐÓöµ½¹ýÏÂÃæµÄ³¡¾°£º
a. ͨ¹ýBIOSµÄF11Ñ¡ÏѡÔñÆô¶¯É豸ºó£¬Ã»ÓгöÏÖÔ¤ÆÚµÄgrub½çÃæ£¬³öÏÖÁËºÚÆÁ»òÆÁÄ»×óÉϽÇÒ»Ö±ÉÁ¹â±êµÄÏÖÏó£»
b. Æô¶¯µ½ÁËgrub½çÃæ£¬µ«Ã»ÓгöÏÖÔ¤ÆÚµÄµ¹¼ÆÊ±£¬»òµ¹¼ÆÊ±½øÐе½Ò»°ëʱ¿¨×¡£¬ÓÖ»òÕßµ¹¼ÆÊ±½áÊøÁË£¬È´Ã»ÓÐÆô¶¯½øÈëgrubÖÐËùÑ¡ÔñµÄÄںˣ¬ÈÔȻͣÁôÔÚgrub½çÃæ£»
c. ´Ógrub½çÃæÖпªÊ¼Æô¶¯ÄÚºËÁË£¬µ«Ã»ÓÐÔ¤ÆÚµÄÄÚºËÆô¶¯ÈÕÖ¾´òÓ¡£¬³öÏÖÁËºÚÆÁ»ò×óÉϽÇÒ»Ö±ÉÁ¹â±êµÄÏÖÏó£»
ÕâЩ³¡¾°ÖУ¬ÏµÍ³Äں˻¹Ã»¿ªÊ¼Æô¶¯£¬Ã»ÓÐÈκεÄϵͳÈÕÖ¾´òÓ¡ÄÚÈÝ£¬Ó¦¸ÃÔõÑù¶¨Î»ÕâÑùµÄÎÊÌâÄØ£¿grubÓÐûÓÐdebugģʽ£¬»òÕßÔõÑù¶Ôgrub½øÐе÷ÊÔÄØ£¿
µ÷ÊÔ²½Öè
Ò».ÔÚgrub½çÃæÔö¼Óµ÷ÊÔ²ÎÊý
ÉÏÊö³¡¾°ÖУ¬³¡¾°bÊÇ×î³£¼ûµÄ£¬ÒѾÆô¶¯½øÈëgrub½çÃæÁË£¬ÔÚgrub½çÃæÍ¨³£¿ÉÒÔ½øÐÐÏÂÃæµÄµ÷ÊÔ¶¯×÷£º
£¨1£©ÔÚgrub²ÎÊýÖÐÔö¼Ó´òÓ¡ÐÅÏ¢
ÔÚgrub½çÃæÖУ¬±à¼grub²ÎÊý£¬¿ÉÒÔÔö¼Óecho´òÓ¡ÐÅÏ¢£º

°´¡°e¡±±à¼grub²ÎÊý£º

¿ÉÒÔÔÚÒÑÓеÄÃüÁîÐÐÖУ¬ÖðÐÐÔö¼Ó´òÓ¡ÐÅÏ¢£¬°´×éºÏ¼üCtrl-xÖ´ÐÐÆô¶¯£¬¸ù¾Ý´òÓ¡ÐÅÏ¢£¬È·¶¨ÔÚÖ´ÐÐÄÄÐÐÃüÁîʱ³öÏÖÎÊÌ⣺

£¨2£©ÊÖ¶¯Ö´ÐÐgrubÒýµ¼ÃüÁî
ͨ¹ý°´×éºÏ¼ü¡°Ctrl+c¡±½øÈëgrubÃüÁî½çÃæ£¬ÊÖ¶¯ÊäÈëÐèÒªÖ´ÐеÄÃüÁɾ³ýËùÓв»±ØÒªµÄ²ÎÊý£¬¹Û²ìÔÚÖ´ÐÐʲôÃüÁîʱ³öÏÖÎÊÌ⣺

ÔÚgrubÃüÁîÐнçÃæÖУ¬¿ÉÒÔÖ´ÐеÄÃüÁîÁбíÈçÏ£¬¿ÉÒÔ¸ù¾Ýʵ¼ÊÇé¿ö£¬Êʵ±µÄʹÓÃÕâЩÃüÁî²é¿´»òÉèÖøü¶àµÄµ÷ÊÔÐÅÏ¢£º

3£©ÐÞ¸´Òýµ¼Îļþgrub.cfg
ϵͳÔÚʹÓùý³ÌÖУ¬¿ÉÄÜÓÉÓÚ¸÷ÖÖÔÒòµ¼ÖÂgrub.cfgÎļþË𻵣¬µ¼ÖÂϵͳÔÚÆô¶¯Ê±Í£ÔÚgrub½çÃæ£º

ͨ³£¿ÉÒÔ³¢ÊÔʹÓÃÏÂÃæµÄ·½·¨£¬³¢ÊÔÊÖ¶¯Òýµ¼½øÈëϵͳ£º

½øÈëϵͳºó£¬ÖØÐÂÉú³ÉÒ»·Ýgrub.cfgÎļþ£¬¼´¿ÉÍê³ÉÐÞ¸´£º
#grub2-mkconfig¨Co/boot/efi/EFI/kos/grub.cfg
¶þ¡¢ÊÖ¶¯¿ªÆôgrubµ÷ÊÔģʽ
¶ÔÓÚ³¡¾°c£¬´Ógrub½çÃæ¿ªÊ¼Òýµ¼ËùÑ¡ÔñµÄÄÚºËʱ³öÏÖµÄÎÊÌ⣬¿ÉÒÔÔÚgrub½çÃæÖУ¬ÉèÖÿªÆôµ÷ÊÔģʽºóÔÙÆô¶¯£¬»á´òÓ¡¸ü¶àµÄÈÕÖ¾¡£
ÈçÏ£¬ÔÚgrub½çÃæÖУ¬°´¡°c¡±½øÈëgrubµÄÃüÁîÐнçÃæ£º

ÔÚÃüÁîÐнçÃæÖУ¬ÊäÈë¡°set debug=all¡±¿ªÆôµ÷ÊÔģʽ£º

°´¡°Esc¡±¼ü·µ»Øgrub½çÃæ£¬Õý³£Æô¶¯Äںˣ¬»áÔÚÆô¶¯¹ý³ÌÖУ¬ÖðÒ³´òÓ¡ÏêϸµÄdebugÈÕÖ¾ÐÅÏ¢£¬ÐèÒªÊÖ¶¯·Ò³²é¿´£º

ÓÉÓÚdebugÈÕÖ¾¹ý¶à£¬ÊÖ¶¯·Ò³ºÜÂé·³£¬¿ÉÒÔÔÚ¿ªÆôµ÷ÊÔģʽʱ£¬ÔÙÉèÖÃÒ»¸ö½ûÓ÷ÖÒ³µÄ²ÎÊý¡°set pager=0¡±,²¢ÔÚgrub²ÎÊýÖУ¬Ìí¼Ó´®¿Ú²ÎÊý£¬½«Æô¶¯ÈÕÖ¾´òÓ¡µ½´®¿ÚÊä³ö£¬ÒÔ±ãÓڹ۲죺

Èý¡¢ÐÞ¸ÄgrubÅäÖÃÎļþ
¶ÔÓÚ³¡¾°a£¬´Óbios¿ªÊ¼¼ÓÔØbootloader¿ªÊ¼¾Í³öÏÖÎÊÌ⣬grub»¹Î´¼ÓÔØ³öÃüÁîÐнçÃæµÄÇé¿ö£¬ÐèÒªÔ¤ÏÈÅäÖ㬻ò½øÈë¾ÈԮģʽ£¬ÐÞ¸ÄgrubµÄÅäÖ㬿ªÆô¸üÏêϸµÄdebugÐÅÏ¢£¬²¢ÅäÖô®¿ÚÊä³ö£¬½«ÏêϸµÄÈÕÖ¾´òÓ¡µ½´®¿ÚÊä³ö²é¿´¡£
¾ßÌåÅäÖ÷½·¨ÈçÏ£º
£¨1£©ÅäÖÿªÆô´®¿Ú
#vim/etc/default/grub
ɾ³ýGRUB_CMDLINE_LINUXÐÐÖеÄrhgb quiet
Ôö¼Óconsole=tty0 console=ttyS0,115200

£¨2£©ÐÞ¸Ä00_headerÅäÖÃ
#vim/etc/grub.d/00_header
½«set pager=1ÐÞ¸ÄΪset pager=0

£¨3£©Ôö¼Ó01_grub_debugÎļþ¿ªÆôdebug
#vim/etc/grub.d/01_grub_debug #!/bin/sh-e echo"setdebug=all

#chmod755/etc/grub.d/01_grub_debug
£¨4£©ÖØÐÂÉú³Égrub.cfg
#grub2-mkconfig-o/boot/efi/EFI/kos/grub.cfg

Íê³Éºó£¬ÔÚÏÂÒ»´ÎϵͳÆô¶¯Ê±£¬grub½çÃæµÄǰºó£¬½«³öÏÖÈçϸü¶àµÄdebugÈÕÖ¾£º



¼ÓÔØ³ögrub½çÃæ£º
¿ªÊ¼¼ÓÔØËùÑ¡ÔñµÄÄںˣº


¿ªÊ¼Æô¶¯Äںˣº

µ÷ÊÔ×ܽá
×÷ΪϵͳÒýµ¼µÄºËÐÄ×é¼þ£¬GRUBµÄÕý³£ÔËÐÐÖ±½Ó¹ØÏµµ½²Ù×÷ϵͳÄÜ·ñ³É¹¦Æô¶¯¡£±¾ÎÄͨ¹ý·ÖÎöGRUB½çÃæ¼ÓÔØµÄǰ¡¢ÖС¢ºóÈý¸ö³¡¾°£¬¶ÔÓÚ³öÏÖµÄºÚÆÁ¡¢Òýµ¼¿¨¹â±ê¡¢ÈÕ־ȱʧµÈµäÐ͹ÊÕϳ¡¾°£¬ÏµÍ³ÐÔµØÌá³öÁËGRUBµ÷ÊÔ·½·¨ÂÛ£º
a. ¶ÔÓÚ¿ÉÒÔ½øÈëGRUB²Ù×÷½çÃæµÄ³¡¾°£¬¿Éͨ¹ý×·¼Óµ÷ÊÔ²ÎÊý¡¢ÊÖ¶¯Ö´ÐÐÒýµ¼ÃüÁî»òÐÞ¸´ÅäÖÃÎļþ¿ìËÙ¶¨Î»ÎÊÌ⣻
b. ¶ÔÓÚÀ뿪GRUB½çÃæºó£¬¿ªÊ¼¼ÓÔØÄں˽׶εÄÒì³££¬ÐèÆôÓÃdebug=all²¢ÅäºÏpager=0½ûÓ÷ÖÒ³£¬ÒÔ»ñÈ¡ÍêÕûµÄGRUBµ÷ÊÔÈÕÖ¾£»
c. ¶ø¶ÔÓÚGRUB½çÃæ¼ÓÔØÇ°µÄ¹ÊÕÏ£¬ÔòÐèÔ¤ÏÈÅäÖô®¿ÚÊä³ö¼°È«¾Öµ÷ÊÔ²ÎÊý£¬Í¨¹ýÈÕÖ¾»ØËÝ·ÖÎö¸ù±¾ÔÒò¡£
¸Ãµ÷ÊÔ·½°¸Éæ¼°Á˴ӹ̼þ²ãÃæµ½ÄÚºËÆô¶¯µÄÕû¸öÒýµ¼Á÷³Ì£¬Í¨¹ýÕûºÏ»ù´¡ÃüÁîÐвÙ×÷ÓëÅäÖòÎÊýµÄ¾«Ï¸»¯ÅäºÏ£¬Äܹ»¸ßЧµØÓ¦¶Ô²¢½â¾ö´ó¶àÊýÓëGRUBÒýµ¼Ïà¹ØµÄ¼¼ÊõÎÊÌâ¡£
ͬʱ£¬ÔÚÔËάʵ¼ùÖУ¬½¨Ò鶨ÆÚУÑégrub.cfgÍêÕûÐÔ²¢±¸·Ý¹Ø¼üÅäÖã¬ÒÔÌáÉýϵͳÆô¶¯¿É¿¿ÐÔ¡£
²úÆ·ÏÂÔØ
²úÆ·¼¤»î
ÊÛǰ×Éѯ
ÊÛºó·þÎñ
»Øµ½¶¥²¿
ÊÛǰ×Éѯ
ÊÛºó·þÎñ