Linux/Ubuntu2011. 12. 15. 01:21

grub2에서 boot menu 의 순서를 변경하는 방법을 알아보자.

#cd /boot/grub/grub.cfg 
#ls -l 
 

-rwxr-xr-x   1 root root  6698 2011-10-01 21:40 00_header*

-rwxr-xr-x   1 root root  5522 2011-04-21 22:20 05_debian_theme*

-rwxr-xr-x   1 root root  6933 2010-10-06 21:23 07_os-prober*

-rwxr-xr-x   1 root root  7269 2011-10-01 21:40 10_linux*

-rwxr-xr-x   1 root root  6344 2011-10-01 21:40 20_linux_xen*

-rwxr-xr-x   1 root root  1588 2010-09-25 02:14 20_memtest86+*

-rwxr-xr-x   1 root root  7545 2011-10-01 21:40 30_os-prober*

-rwxr-xr-x   1 root root   214 2010-10-06 21:23 40_custom*

-rwxr-xr-x   1 root root    95 2010-10-06 21:23 41_custom*


00_, 05_, 07_  와 같은숫자의 순서에 따라 /boot/grub/grub.cfg 파일에서 menuentry 등록 순서가 결정이 된다.
즉, 위의 파일들을 rename 하는 것으로서 부팅 menuentry 순서를 변경 할 수 있는 것이다.

예 를 들어 아래와 같이 변경하게 되면 linux 가 window보다 상위에 위치하게 된다. 
#mv 10_linux 06_linux

수정을 마쳤으면 변경된 순서를 적용하기 전에 grub.cfg 파일은 백업을 해두고,

#/usr/sbin/update-grub

update-grub 을 하면 새로운 grub.cfg 파일이 생성되고 reboot.

두번째 방법은 grub.cfg를 직접 수정하는 것이다.

#vi /boot/grub/grub.cfg

...
menuentry 'Ubuntu, with Linux 2.6.35-23-generic' --class ubuntu --class gnu-linux --class gnu --class os {
        recordfail
        insmod part_msdos
        insmod ext2
        set root='(hd0,msdos2)'
        search --no-floppy --fs-uuid --set 2742a9ed-e2ac-4411-ac63-53117647ac54
        linux   /boot/vmlinuz-2.6.35-23-generic root=UUID=2742a9ed-e2ac-4411-ac63-53117647ac54 ro   quiet splash
        initrd  /boot/initrd.img-2.6.35-23-generic
}
... 

 

menuentry의 위치를 변경 하는 것으로 grub menu에서 부팅 순서를 변경할 수 있다.
또는 
set default="0" 값을 변경 하면 됨.

 


 
Posted by ekwang