리눅스 부팅과정에 대해서 알아봅시다!
리눅스 부팅과정을 모르면 장애 대응을 못할수가 있기 때문에 알아야합니다.
갑자기 시스템 부팅이 안되거나 특정 서비스가 부팅 시 시작이 안될경우 등등
어느 단계에서 막힌건지 알수가 없기 때문이죠
아무것도 모르는데 조치하려고하면 식은땀 좔좔 ;;
그리고 성능 튜닝도 해야하잖아요, 시간 = 돈 이니까요
실제 흐름은 아래와 같습니다.
뭐라는거냐구요?
쉽게 설명을 하면 이 과정은 식당을 아침에 여는 과정이랑 똑같습니다.
가. 리눅스 부팅과정 간단설명
1. BIOS(UEFI) (사장 아저씨가 식당 문을 열고 점검 시작)
- 서버 전원이 켜지면 맨먼저 BIOS가 실행됩니다.
- 하드웨어 점검을 합니다 (메모리, 키보드, 디스크) 잘 살아있나 ?
- 부팅 가능한 디스크를 찾아봅니다
> 전기는 들어오는지, 오늘 장사는 문제 없나 ?
2. GRUB (오늘 출근 누가하지 ? 리스트 확인)
- BIOS가 부팅할 디스크를 찾았으면 그 안에있는 GRUB(부트로더)가 실행됩니다.
- GRUB는 부팅할 커널 목록을 보여주는 역할이에요
> 오늘 직원 누가 출근하는지? 박장군이 출근하는 구나 ?
3. Kernel (박장군 출근, 주방 세팅 시작)
- GRUB 가 선택한 리눅스커널이 실행됩니다.
- 커널은 리눅스의 핵심 뇌 (인물) 입니다. (CPU, 메모리, 디스크, 장치 다 초기화)
- 루트 파일 시스템을 마운트 하는 역할
> 주방 세팅, 재료 창고확인, 바닥청소 다하는 에이스
4. init 또는 systemd (박장군이 요리 시작)
- 시작할 서비스, 데몬을 실행해야 함
- 네트워크 켜고, 로그인 화면 띄우고 서비스들을 다 켬
> 장사를 위해 POS, 네트워크 연결 등 진행
5. 로그인 화면 (매장 오픈)
- 리눅스 로그인 화면 나옴
> 손님입장
이해하셨을까요 ?
그러면 장애가 발생했을때 각 단계별로 어떤 증상일까요 ?
리눅스 장애 대응 간단설명
1. BIOS(UEFI) 장애
- 전원은 켜지지만 화면이 안 뜬다
- 부팅 가능한 디스크가 없다는 메시지
> No bootable device, Reboot and Select proper Boot device
> 식당 문이 안열려요
원인 :
- 디스크 인식실패 (SATA, NVMe 불량)
- BIOS 설정 초기화됨 (부팅 순서 문제)
- 하드웨어 손상 (램, SSD, 메인보드)
해결법 :
- BIOS 진입 ( F2, F10, DEL 등 제조사마다 다름)
- RAM, 케이블 점검
- UEFI > Legacy 변경 (OS 에 따라)
2. GRUB 단계 문제
- grub> 혹은 grub rescue>모드로 진입됨
> 출근할수 있는 직원이 없음
원인 :
- /boot/grub 또는 /boot 파티션 손상
- grub 설정파일 손상 (grub.cfg)
- 커널 업그레이드 후 GRUB 재설정 안 됨
해결법 :
- 라이브 CD 부팅 후 다음 순서:
mount /dev/sdXn /mnt # 루트 파티션 마운트
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt
grub-install /dev/sdX # 부트로더 다시 설치
grub-mkconfig -o /boot/grub/grub.cfg
- 재부팅
3. Kernel 단계 문제
- Kernel panic - not syncing: VFS: Unable to mount root fs
- 무한 재부팅
- 커널 버전 선택 시 실패
원인 :
- 커널 파일 손상 (vmlinuz, initramfs 등)
- /etc/fstab 잘못된 설정으로 루트 마운트 실패
- 드라이버 누락
해결법 :
- GRUB에서 다른 커널 버전 선택 (기존 정상 버전)
- initramfs 재생성:
dracut -f - fstab 수정
4. systemd/init 단계 문제
- 부팅 중 FAILED 메시지
- 특정 서비스 중지됨
- 로그인 화면 안 뜸
원인
- 서비스 실패 (ex. network.service, sshd.service)
- 의존성 문제
- 타겟(target) 전환 실패
해결법
- 부팅 로그 확인
> journalctl -xb
systemctl list-units --failed
- 기본 타겟 바꾸기 (예: 텍스트 모드로)
> systemctl set-default multi-user.target - 개별 서비스 재시작 / 복구
>systemctl restart 서비스명
5. 로그인/그래픽 문제
- GUI 로그인 화면 안 뜸
- 로그인 루프 (입력 후 다시 로그인 화면)
- 로그인 후 화면 까맣게 멈춤
원인
- Xorg, GDM, lightdm 등 그래픽 데몬 오류
- .Xauthority, .profile 문제
- 권한 오류
해결법
- 텍스트 모드로 부팅 후 로그인
> Ctrl + Alt + F2 또는 GRUB에서 3 레벨 지정 - 그래픽 재설치
> sudo apt reinstall xserver-xorg xinit
- Xauthority 제거:
> rm ~/.Xauthority
서버야 .. 제발 멀쩡해라.. 기도메타로 마무리합니다.
'서버 및 운영' 카테고리의 다른 글
git 명령어 완벽해지려고 정리 (1) | 2025.07.17 |
---|