3. 부팅 프로세스: 부트로더

Linux 에서 부트로더란 무엇인가

BIOS/UEFI가 작업을 완료하면 부팅 프로세스의 다음 단계인 부트로더로 제어권을 넘깁니다. Linux 의 부트로더는 운영 체제의 커널을 메모리에 로드한 다음 실행하는 작은 프로그램입니다. 이는 시스템 펌웨어와 Linux 커널 사이의 다리 역할을 합니다.

Linux 부트로더의 역할

Linux 부트로더의 주요 책임은 간단하지만 매우 중요합니다:

  • 운영 체제 선택: 멀티 부팅 설정을 사용하는 경우 Linux 가 아닌 시스템을 포함하여 다양한 운영 체제로 부팅할 메뉴를 표시할 수 있습니다.
  • 커널 선택: 로드할 Linux 커널 버전을 선택할 수 있게 해주므로 문제 해결이나 테스트에 유용합니다.
  • 커널 매개변수 전달: 커널이 올바르게 시작하는 데 필요한 중요한 매개변수를 지정합니다.

가장 일반적인 Linux 부트로더는 GRUB(GRand Unified Bootloader) 이며, 여러분도 아마 이것을 사용하고 있을 것입니다. LILO, SYSLINUX, Coreboot 와 같은 다른 부트로더도 있지만, 이 강의에서는 GRUB 에 중점을 둘 것입니다.

GRUB 의 일반적인 커널 매개변수

부트로더의 주된 목표는 커널을 로드하는 것이지만, 커널을 로드하는 방법과 위치에 대한 지침이 필요합니다. 이러한 지침은 커널 매개변수로 제공됩니다. 일반적으로 시작 시 GRUB 메뉴에서 'e' 키를 눌러 이러한 매개변수를 보거나 편집할 수 있습니다.

다음에 접하게 될 가장 일반적인 매개변수는 다음과 같습니다.

  • initrd - 메모리에 로드되는 임시 루트 파일 시스템인 초기 RAM 디스크의 위치를 지정합니다. 다음 강의에서 이에 대해 더 자세히 다룰 것입니다.
  • BOOT_IMAGE - 로드해야 할 커널 이미지 파일의 경로를 정의합니다.
  • root - 실제 루트 파일 시스템의 위치를 가리킵니다. 커널은 이 경로를 사용하여 init 프로세스를 찾습니다. 이는 종종 장치 이름 (예: /dev/sda1) 또는 UUID 로 표시됩니다.
  • ro - 루트 파일 시스템을 처음에 읽기 전용 모드로 마운트하도록 커널에 지시하는 표준 매개변수입니다. 이는 파일 시스템 검사가 실행되기 전에 변경 사항이 적용되지 않도록 하는 안전 조치입니다.
  • quiet - 이 매개변수는 대부분의 상세한 부팅 메시지를 억제하여 더 깔끔하고 덜 장황한 시작 화면을 제공합니다.
  • splash - 텍스트 메시지 대신 부팅 프로세스 중에 그래픽 스플래시 화면이 표시되도록 활성화합니다.

로그인하여 학습 진행 상황을 저장하세요

로그인

연습 문제

연습이 완벽함을 만듭니다! GRUB 부트로더와 그 구성을 이해하는 데 도움이 되는 실습 랩이 있습니다.

  1. Linux 에서 GRUB2 부트 메뉴 사용자 지정하기 - GRUB2 기본 구성 파일을 수정하여 부트 메뉴 설정을 변경하고 이러한 변경 사항을 적용하는 연습을 합니다.

이 랩은 실제 시나리오에서 개념을 적용하고 부트로더 관리에 대한 자신감을 키우는 데 도움이 될 것입니다.

퀴즈

부팅 메시지가 보이지 않도록 하는 커널 매개변수는 무엇입니까? 단일 단어 매개변수를 소문자 영어로 답변하십시오.