안녕하세요. 이번 포스팅에서는 리눅스의 GRUB 에 대해서 써보도록 하겠습니다.
0. GRUB 이란?
GRUB은 "Grand Unified Bootloader"의 약자로써 멀티부트로더 중의 하나입니다.
부트로더(Bootloader)는 간단하게 설명하자면 PC를 켰을 때, 가장 먼저 실행되고 리눅스 OS의 커널을 로드하고 파라미터를 커널에 넘겨주는 등 부팅 전반에 걸친 작업들을 진행합니다.
이 GRUB의 큰 특징은 파일시스템과 커널 포맷을 이해한다는 점입니다.
그렇기 때문에 파일명과 커널이 위치하고 있는 디스크 파티션만 알고 있다면 커널을 로드해낼 수 있습니다.
이렇게 설명하자면 이해가 어려우니 실제로 GRUB이 무엇을 하는지 아래의 사진을 보면 알 수 있습니다.
1. GRUB 장치명
위에서 GRUB은 파일명과 커널이 위치하고 있는 디스크 파티션을 알고 있다면 커널을 로드할 수 있다고 하였습니다.
그렇지만 GRUB과 리눅스에서 사용되는 디스크명은 차이가 있습니다.
GRUB에서는 ROM-BIOS에서 사용하는 정보를 그대로 사용하고 IDE, SCSI 등의 장치명을 구분짓지 않습니다.
그 둘의 차이는 아래와 같습니다.
- 리눅스 디스크 구분
구분 | SCSI | IDE |
1 | /dev/sda1, /dev/sda2..... | /dev/hda1, /dev/hda2.... |
2 | /dev/sdb1, /dev/sdb2..... | /dev/hdb1, /dev/hdb2.... |
3 | /dev/sdc1, /dev/sdc2....... | /dev/hdc1, /dev/hdc2.... |
위처럼 SCSI, IDE 타입 디스크들 모두 첫번째 디스크부터 순서대로 뒤에 a,b,c의 형식으로 이어집니다.
SCSI 타입의 경우는 sda,sdb... / IDE 타입은 hda, hdb.....
그리고 파티션은 해당 디스크의 이름 뒤에 숫자로 표기됩니다.
SCSI 타입 첫번째 디스크의 파티션의 순서는 sda1, sda2.... 와 같은 순서로 이어집니다.
- GRUB에서의 디스크 구분
구분 | DISK | 파티션 |
1 | hd0 | (hd0,0), (hd0,1), (hd0,2) |
2 | hd1 | (hd1,0), (hd1,1), (hd1,2) |
3 | hd2 | (hd2,0), (hd2,1), (hd2,2) |
위와 같이 GRUB에서는 디스크 타입(SCSI, IDE...)을 구분하지 않고 hd로 통일하기 때문에 더 단순합니다.
디스크는 순서대로 hd0, hd1... / 파티션은 그 뒤에 숫자로 순서대로 표기합니다.
- 해당 GRUB에 관한 포스팅은 추후 보충예정입니다.
본 포스팅의 내용 및 이미지를 무단 전재, 재배포 또는 복사를 금지합니다.
인용 시 출처와 같이 공개해주세요!
도움이 되셨다면 댓글 또는 공감 부탁드립니다!
'IT > Linux_리눅스' 카테고리의 다른 글
[Linux] 리눅스 호스트네임 변경하기 / hostnamectl 명령어 (0) | 2022.06.15 |
---|---|
[Linux] 리눅스의 Dirty Page (0) | 2021.03.11 |
[Linux]RHEL/CentOS 에서 분실한 root 패스워드 재설정, 복구하기 (0) | 2021.03.11 |
[Linux / Memory] 메모리의 Slab 영역과 slabtop 명령어, slab 할당자(allocator) (0) | 2021.03.11 |
[Linux / Architecture] NUMA(Non-Uniform Memory Access) 란????? (0) | 2021.03.11 |
댓글