GRUB

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색
GNU GRUB
GRUB screenshot.png
개발자 GNU
최근 버전 2.00 (GRUB2) / 2012년 6월 27일, 756일 경과
종류 부트로더
라이선스 GPL
웹사이트 gnu.org/software/grub/
GNU GRUB on MBR-partitioned hard disk drives
GNU GRUB on GPT-partitioned hard disk drives
boot.img has the exact size of 446 Bytes and is written to the MBR (sector 0). core.img is written to the empty sectors between the MBR and the first partition, if available (for legacy reasons the first partition starts at sector 63 instead of sector 1, but this is not mandatory). The /boot/grub-directory can be located on an distinct partition, or on the /-partition.

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

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

기능[편집]

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


설치[편집]

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

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

지원하는 파일 시스템[편집]

이 자료는 2005년 현재 자료이다.

지원하는 운영 체제[편집]

GNU GRUB 구성 파일의 예. 이 파일은 사용자가 윈도 XP우분투를 불러올 수 있게 한다.

체인 로딩 기능을 쓰면 마이크로소프트 윈도같은 상용 운영 체제도 불러올 수 있다.

GRUB 부팅 과정[편집]

  1. 바이오스가 부팅 장치를 찾고 MBR을 읽어온다.
  2. MBR에 GRUB 스테이지 1이 있으며, 이는 스테이지 1.5나 2를 불러온다.
  3. 스테이지 1.5는 MBR 직후 30 킬로바이트 영역에 저장되며 이는 스테이지 2를 불러온다.
  4. GRUB 스테이지 2는 부트 메뉴나 명령 프롬프트를 보여 준다.
  5. 그 이후 기본값 커널이나 사용자가 선택한 커널을 불러 온다.

같이 보기[편집]

Loadlin(로드 리눅스)

바깥 고리[편집]