GRUB2 간단하게 시작하기
이 글에서는 GRUB2를 가져오는 방법과 초간단 설정으로 GRUB2을 동작하는 방법을 설명합니다. 더욱 실제적인 정보를 찾아보려면 GRUB2를 참고하십시오. 기존의 GRUB 에서 GRUB2로 옮겨가는 방법을 찾아보려면 GRUB2로 옮겨가기를 보십시오.
GRUB2 프로그램 설치
GRUB2를 설치하려면 GRUB_PLATFORMS 변수를 시스템 make.conf 파일에 적당한 값을 한 가지 이상 넣어 설정하십시오. 설정하지 않으면 GRUB2가 시스템에서 사용하는 플랫폼을 알아서 찾습니다. x86/amd64 아키텍처에서는 "pc"로(MBR 방식 설치) 추측합니다.
Standard PC (BIOS) support:
# Standard PC (BIOS)
GRUB_PLATFORMS="pc"
# UEFI on amd64
GRUB_PLATFORMS="efi-64"
# Both UEFI and PC
GRUB_PLATFORMS="efi-64 pc"
UEFI on amd64:
GRUB_PLATFORMS="efi-64"
Both standard PC (BIOS) and UEFI support:
GRUB_PLATFORMS="efi-64 pc"
변수를 설정했다면, 프로그램을 이머지하십시오:
root #
emerge --ask sys-boot/grub:2
GRUB2 부트 로더 활성화
가능하다면 /boot 를 마운트하십시오:
root #
mount /boot
EFI 플랫폼을 사용한다면, /boot/efi에 EFI 시스템 파티션이 있는지(마운트했는지) 확인하십시오. 지정 마운트 지점(/boot/efi) 또는 FAT 파일 시스템으로 포맷한 /boot 분할 공간 전체가 될 수 있습니다. /boot를 큰 EFI 시스템 분할 공간으로 적절하게 쓸 수도 있습니다.
/boot/efi는 FAT이라고만 가정합니다:
root #
mount /boot/efi
grub-install 유틸리티를 실행하여 /boot/grub에 관련 파일을 복사하십시오. PC 플랫폼에서는 마스터 부트 레코드(MBR)또는 파티션 부트섹터의 부트 이미지를 설치합니다.
MBR에 GRUB2를 설치하려면:
root #
grub-install /dev/sda
Installation finished. No error reported.
EFI 기능 탑재 시스템에 GRUB2를 설치하려면:
root #
grub-install --target=x86_64-efi
Installation finished. No error reported.
grub-install 명령은 --target
옵션으로 설치할 CPU/플랫폼을 지정합니다. 지정하지 않으면 grub-install이 알아서 추정합니다. x86/amd64에서는 기본적으로 i386-pc
값을 사용합니다.
자동 설정
GRUB2는 초기부터 grub-mkconfig 프로그램으로 설정 파일을 생성하여 설정했습니다.
grub-mkconfig는 /etc/grub.d의 템플릿 섹션을 기반으로 설정파일을 만듭니다. 기본 템플릿은 대부분의 일반 부팅 설정을 다루어야합니다.
user $
ls /etc/grub.d
00_header 10_linux 20_linux_xen 30_os-prober 40_custom 41_custom README
이 템플릿의 동작은 /etc/default/grub의 변수를 설정하여 통제할 수 있습니다. 더 많은 정보는 GRUB 설명서en 를 살펴보십시오.
커널 이름 형태
grub-mkconfig가 존재하는 리눅스 커널을 발견하게 하려면 커널 이름이 vmlinuz- 또는 kernel-로 시작해야합니다.
예를 들자면:
'"`UNIQ--pre-0000000A-QINU`"'
initramfsen을 사용할 때, 파일 이름은 initramfs- 또는 initrd-로 시작해야 하며 .img로 끝나야합니다. 버전은 커널 이미지와 같아야 합니다. Genkernel로 만든 이름을 붙인 파일도 동작합니다.
예를 들자면:
'"`UNIQ--pre-0000000D-QINU`"'
grub.cfg 파일을 만들려면 다음과 같이 grub-mkconfig 명령을 실행하십시오:
root #
grub-mkconfig -o /boot/grub/grub.cfg
Generating grub.cfg ... Found linux image: /boot/vmlinuz-3.2.9 done
메시지를 출력하지 않는 커널 압축해제
부팅 도중에 압축한 커널을 조용히 풀려면, /etc/default/grub을 편집하여 GRUB_CMDLINE_LINUX_DEFAULT
변수에 quiet
값을 추가하십시오.
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
Systemd
GRUB2에서 systemd로 부팅하려면 GRUB_CMDLINE_LINUX
변수를 다음과 같이 설정하십시오:
This is no longer necessary with sys-apps/systemd when the
sysv-utils
USE is enabled. This defaults to on with at least version 239 in GentooGRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd"
다른 운영체제 불러오기
grub-mkconfig는 다른 운영체제도 불러오는 설정을 만들 수도 있습니다. 이 경우 sys-boot/os-prober 꾸러미가 필요합니다.
윈도우로 부팅하려면 sys-fs/ntfs3g도 설치해야 합니다. grub-mkconfig 유틸리티에서 NTFS 파일 시스템을 감지할 수 있게 해줍니다.
직접 설정
사용자는 grub-mkconfig를 사용할 필요가 없습니다. 마찬가지로 grub.cfg 파일을 직접 편집할 수도 있습니다.
대부분의 사용자가 기존의 GRUB 형식을 사용했듯이 다음 예제에서는 기존의 GRUB 설정에서 가져온 정보를 기반으로 설정 파일을 작성하는 방법을 보여줍니다.
timeout 5
'''<span style="color:maroon">title</span>''' Gentoo Linux 3.2.12
root '''<span style="color:maroon">(</span>'''hd0,'''<span style="color:maroon">0)</span>'''
'''<span style="color:maroon">kernel</span>''' /boot/kernel-3.2.12-gentoo root=/dev/sda3
<br>
|
⇨ |
timeout'''<span style="color:green">=</span>'''5
'''<span style="color:green">menuentry '</span>'''Gentoo Linux 3.2.12'''<span style="color:green">' {</span>'''
root'''<span style="color:green">=</span>'''hd0,'''<span style="color:green">1</span>'''
'''<span style="color:green">linux</span>''' /boot/kernel-3.2.12-gentoo root=/dev/sda3
'''<span style="color:green">}</span>'''
|
이전 GRUB 버전에서는 분할 영역 번호가 0번으로 시작하지만, GRUB2 에서는 1번으로 시작합니다. 두 부트로더에서 '드라이브'는 0번부터 시작합니다.
추가 참조
- GRUB2 - 자세한 내용과 더 많은 자료가 있는 '완전한' GRUB2 게시글입니다