공든탑앱 열기

부팅 과정

리눅스마스터 2급 · 리눅스 설치 · 약 8분

쉽게 말하면

전원 버튼을 누르고 로그인 화면이 뜨기까지 정해진 순서가 있어요. 기계에 박힌 기본 프로그램이 장치를 점검하고 → 시작 안내 프로그램(GRUB)이 리눅스 심장(커널)을 불러오고 → 커널이 첫 번째 관리 프로그램(systemd)을 켜고 → 그 관리자가 나머지 프로그램을 하나씩 켜요.

시험용 정의

부팅은 펌웨어(BIOS/UEFI) → 부트로더(GRUB) → 커널 → initramfs → systemd(init) → 서비스·로그인 순서로 진행된다.

비유로 이해하기

공장 출근 순서다. 경비(BIOS)가 전기를 켜고, 안내원(GRUB)이 오늘의 공장장(커널)을 부르고, 공장장이 반장(systemd)을 세우면 반장이 각 라인(서비스)을 돌린다.

자세히

그림으로 보기: 부팅 순서

  1. BIOS/UEFIPOST 로 하드웨어 점검, 부팅 장치 찾기
  2. 부트로더(GRUB2)MBR 또는 ESP 에서 읽어 커널 선택
  3. 커널initramfs 로 드라이버 적재, 루트 파일 시스템 마운트
  4. systemd (PID 1)default.target 까지 서비스 시작
  5. 로그인그래픽(graphical.target) 또는 텍스트(multi-user.target)

먼저 알아 둘 말

말뜻
펌웨어 (BIOS·UEFI)메인보드 칩에 저장된 프로그램. 전원이 들어오면 CPU가 가장 먼저 실행한다. 하드웨어를 점검하고 부팅할 장치를 고른다
POSTPower-On Self Test. 펌웨어가 CPU·메모리·키보드 등이 정상인지 스스로 점검하는 과정. 문제가 있으면 삐 소리나 오류 화면을 낸다
부트로더커널 파일을 디스크에서 찾아 메모리에 올리고 실행시키는 프로그램(GRUB 2)
initramfs커널과 함께 메모리에 올라가는 작은 임시 루트 파일시스템. 진짜 루트 파티션이 RAID·LVM·암호화 디스크에 있으면 커널만으로는 열 수 없어서, 그 드라이버와 도구를 여기 담아 둔다. 진짜 루트를 연 뒤에는 버려진다
init과 PID 1커널이 가장 먼저 실행하는 사용자 영역 프로그램. 프로세스 번호(PID)가 1이고, 나머지 모든 프로세스의 조상이다. 예전엔 SysV init, 지금은 systemd
유닛systemd가 관리하는 대상 하나. 서비스(.service), 마운트(.mount), 목표 상태(.target) 등
getty와 디스플레이 매니저로그인 화면을 띄우는 프로그램. getty는 텍스트 콘솔의 login: 프롬프트, 디스플레이 매니저(GDM 등)는 그래픽 로그인 화면
커널 링 버퍼커널이 메시지를 적어 두는 메모리 속 고정 크기 기록장. 가득 차면 오래된 것부터 덮어쓴다(링). dmesg가 이것을 보여 준다

단계별

단계하는 일
1. BIOS / UEFI전원 켜짐, POST(하드웨어 자가 진단), 부팅 장치 선택
2. 부트로더 (GRUB 2)MBR·ESP에서 실행되어 부팅 메뉴를 보여 주고 커널과 initramfs를 메모리에 적재
3. 커널하드웨어 초기화, 드라이버 적재, initramfs 안의 도구로 실제 루트 파일시스템 마운트
4. initramfs (initrd)루트 파일시스템을 여는 데 필요한 드라이버를 담은 임시 루트
5. systemd (PID 1)default.target까지 필요한 유닛(서비스·마운트)을 병렬로 시작
6. 로그인getty(텍스트 콘솔) 또는 디스플레이 매니저(GUI)

부팅 로그 보기

dmesg: 커널 링 버퍼(하드웨어 인식 메시지). journalctl -b: 이번 부팅의 전체 로그. systemd-analyze(blame): 부팅에 걸린 시간과 서비스별 시간. 예전 시스템은 /var/log/boot.log, /var/log/messages.

시험에 이렇게 나와요

1차 출제기준 · 공개 기출 없음

확인 문제

Q1. 리눅스 부팅에서 커널이 메모리에 올라온 직후 가장 먼저 실행하는 사용자 영역 프로세스는?

  1. systemd (또는 init)
  2. GRUB
  3. sshd
  4. bash
정답 보기

1번 systemd (또는 init)

커널은 하드웨어를 초기화하고 루트 파일시스템을 마운트한 뒤 PID 1로 systemd(예전엔 init)를 실행한다. 이후 모든 서비스와 로그인 화면은 systemd가 띄운다. GRUB은 커널보다 먼저 동작하는 부트로더다.

Q2. 부팅 시 하드웨어 이상 유무를 스스로 점검하는 과정은?

  1. fsck
  2. POST
  3. MBR
  4. PXE
정답 보기

2번 POST

POST(Power-On Self-Test).

Q3. 커널이 부팅 과정에서 출력한 메시지를 확인하는 명령은?

  1. uptime
  2. lsmod
  3. dmesg
  4. last
정답 보기

3번 dmesg

dmesg다. 커널이 부팅하며 남긴 메시지(장치 인식 등)를 보여 준다. lsmod는 적재된 모듈, last는 로그인 기록을 본다.

Q4. 부팅 순서로 옳은 것은?

  1. BIOS → 커널 → GRUB → systemd
  2. BIOS → GRUB → 커널 → systemd
  3. 커널 → BIOS → GRUB → systemd
  4. GRUB → BIOS → 커널 → systemd
정답 보기

2번 BIOS → GRUB → 커널 → systemd

펌웨어 → 부트로더 → 커널 → PID 1.

헷갈리기 쉬운 O·X

systemd의 PID는 1이다.

정답 보기

O 맞는 설명이다.

initramfs는 부팅이 끝난 뒤 사용자 데이터를 저장하는 영구 파티션이다.

정답 보기

X 부팅 초기에 쓰는 임시 루트 파일시스템(메모리).

함께 보면 좋은 개념