GRUB

GNU GRUB(대개 GRUB)은 GNU 프로젝트의 부트로더이다. 대부분 운영 체제의 커널을 불러올 수 있으며, 인자를 넘겨 줄 수도 있다. GNU GRUB의 이전 이름은 GRand Unified Bootloader이었고 이는 대통일 이론의 영문 이름의 패러디이다. 대부분 리눅스 배포판에서 부트로더로 사용한다.

대부분 사용되는 GRUB은 "GRUB Legacy"로 분류된다. 현재의 버전은 기능 추가 대신 버그 수정이 이뤄지고 있다. 현재는 GRUB 2 개발에 집중하고 있으며 이는 PUPA 프로젝트의 코드를 기반으로 한다.

기능 
 동적으로 설정 가능하다. 심지어 부팅 시간에도 커널의 인자를 조정할 수 있다.
 Bash와 같은 명령줄 인터페이스가 있다.
 사용자 정의 부팅 기능
 파일 시스템 직접 접근 기능
 다양한 실행 파일 형식 지원
 비 멀티부팅 운영 체제 지원
 사람이 읽을 수 있는 설정 파일 제공
 메뉴 인터페이스
 그래픽 메뉴 및 배경 그림도 사용할 수 있다.
 비 GUI 인터페이스도 쓸 수 있다.
 다양한 파일 시스템 지원
 자동으로 압축 해제 지원
 지오메트리 정보 독립
 모든 RAM을 바이오스와 관계없이 인식
 LBA 및 네트워크 지원
 디스크 없는 시스템 지원

설치 
GRUB은 LILO와 달리 설정 변경 후에 재설치가 필요 없다. GRUB은 스테이지 단위로 부팅 과정이 구성되어 있으며, GRUB의 스테이지 1은 MBR에 존재한다. GRUB 설정 파일은 대개 스테이지 2에서 불리며 이들은 GRUB이 읽을 수 있는 파티션에 존재한다. 만약 설정 파일이 없으면 명령줄로 간다. 이들 설정 파일은 /boot/grub에 있으며 배포판마다 파일 이름이 다르다. 이러한 구조 때문에 GRUB 설정 파일이 있던 파티션만 지웠다면 평소 보던 메뉴가 사라지므로, 초보자들은 부팅이 되지 않는다는 것으로 착각할 수 있다.

CD, DVD 같은 다양한 장치에서의 부팅도 지원한다.

지원하는 파일 시스템 
이 자료는 2005년 현재 자료이다.
 ext2/ext3/ext4
 IBM JFS
 ISO 9660
 미닉스 파일 시스템
 ReiserFS
 SGI XFS
 UFS/UFS2
 FAT 계열 파일시스템
 NTFS

지원하는 운영 체제 

 임의의 멀티부팅 가능한 커널
 FreeBSD
 NetBSD
 OpenBSD
 리눅스
체인 로딩 기능을 쓰면 마이크로소프트 윈도우같은 상용 운영 체제도 불러올 수 있다.

같이 보기 

 Loadlin
 RAID
 LVM

각주

외부 링크 
 GNU GRUB 웹사이트
 GRUB 설명서
 An introductory tutorial
 GRUB development wiki
 Booting with GRUB
 Linux+Win9x+Grub HowTo
 Win32 GRUB
 WinGRUB
 GRUB Installer for Windows
 GRUB for DOS - Bridging DOS/Windows to Unix/Linux
 Grub from the Ground Up - gathering required information, configuring, troubleshooting
 Freshmeat project page

시스템 소프트웨어
GRUB
C로 작성된 자유 소프트웨어
어셈블리어로 작성된 자유 소프트웨어