Linux Boot Process

김재현·2023년 8월 1일
0

Linux

목록 보기
2/12
post-thumbnail

Linux Boot Process

RHEL은 메이저 버전에 따라 부팅 절차에 조금씩 차이가 있다.
RHEL7 버전을 기준으로 다음과 같은 부팅 절차를 따른다.

1. BIOS/UEFI

서버의 전원이 켜지면 BIOS/UEFI 가 실행된다.
이 단계에서 하드웨어를 검사하고 초기화하여 기본적인 하드웨어 설정을 준비한다.

2. MBR(Master Boot Record) 또는 GPT(GUID Partition Table) 로딩

RHEL 7버전은 기본적으로 MBR/GPT 를 지원한다.
MBR을 사용할 경우 부팅 디스크의 첫 섹터에 있는 부트로더 코드가 실행되고,
GPT를 사용할 경우 UEFI 파티션에 있는 부트로더 코드가 실행된다.

3. GRUB 로딩

부트로더로 GRUB2(GRand Unified Bootloader 2)가 사용된다.
GRUB은 메뉴를 통해 사용자가 원하는 커널이나 운영 체제를 선택할 수 있도록 한다.
부트로더는 커널 이미지와 초기 루트 파일 시스템의 위치를 알아야 한다.

4. 커널 로드

GRUB이 선택한 커널 이미지(vmlinuz)를 메모리에 로드한다.
RHEL 7버전은 보통 하드웨어에 호환되는 Jeneric 커널을 제공한다.

5. initramfs 로드

initramfs 는 실제 루트 파일 시스템을 마운트하기 전에 초기 루트 파일 시스템으로 사용된다.
이 단계에서 필요한 모듈, 드라이버 및 설정 파일이 로드된다.

6. 커널의 제어권 이전

initramfs 가 준비되면 커널은 init 프로세스를 실행하고 제어권을 init 에게 이전한다.

7. systmed 실행

systemd 가 init 프로세스를 대체하여 시스템 초기화 및 관리를 담당한다.
systemd 는 서비스를 병렬로 시작하여 부팅 시간을 최적화한다.

8. 레벨 설정

systemd 는 레벨 또는 타깃을 기반으로 서비스와 태스크를 실행한다.
레벨은 특정 시스템의 상태를 정의하는 것으로 Graphical, Multi-user, Single 등이 있다.

9. 사용자 로그인

시스템 초기화가 완료되면 사용자가 로그인할 수 있는 화면을 제공한다.

profile
Linux/Cluster/Infra Engineer

0개의 댓글

관련 채용 정보