개발 일지

Windows 10 부팅 지연 이슈 (시스템 예약 위치..)

북극곰은콜라 2023. 11. 14. 00:40
반응형


개요

어느 날부터인가 부팅이 수십 초 느려지는 현상이 생겼다.
해결 과정에 대해 정리한다.

 


추측 1

Boot Disk 우선순위 문제?

느려지는 구간은 구동 후 메인보드 로고가 뜨고, BIOS 설정으로 들어갈 수 있는 로딩화면이었다.
이와 비슷한 현상은 이전에 경험해 봤었는데,
바로 boot disk의 우선순위가 잘못 설정되어 있을 때였다.
정기적으로 윈도우를 포맷하여 사용하기에, 이번에도 그런 이슈 일 것이라 추측했다.
스크린샷은 못 찍었지만
확인한 사항으로는 부팅 우선순위는 윈도우가 설치된 SSD었다.
우선 BIOS를 초기 설정으로 되돌리고, 디스크를 윈도우가 설치된 SSD로 돌려보았다.
하지만, 현상은 동일했다.

 


추측 2

MainBoard 이슈?

두 번째로 의심한 사항은, 메인보드의 자체적인 이슈이다.
사용 후 1~2년 후에 갑자기 나타난 이슈라 솔직히 그럴 리 없다 생각했다.
그래도 일단 확인정도는 해봐야 하기에 관련 이슈를 검색해 보았다.
부팅속도 관련 이슈가 있었으나, 이는 특정 제조사에서 발생하는 이슈였고, 내가 골랐던 메인보드 제조사는 관련 사항이 없었다.
생각해 보면, 메인보드 고를 때 꽤나 시간 들여서 하드웨어 이슈사항에 대해서 검색해 보았었기에, 이 문제는 아닐 거라 생각했다.

 


실마리 발견!

결국 이슈는 해결 못한 체 어제까지 해당 이슈를 체념하고 있었다.
다른 사항 때문에 디스크 관리자 쪽을 보았었는데, 시스템 예약이 이상하게 잡혀있던 것을 발견했다!
분명 시스템 예약은 C드라이브 쪽 디스크에 있어야 정상일 텐데...

 


시스템 예약이란

시스템 예약은 윈도우 설치 도중 생성되는 파티션으로, 시스템에서 나중에 사용하기 위해 일부 공간을 미리 할당해 놓는 곳이다. 중요한 점은 부팅을 위한 구성요소 중 일부가 여기에 저장되는 것이다.

역할

여기에는 부팅을 위한 데이터 (BCD), 윈도우 복구 환경 (WinRE) 등 시스템에서 필요한 데이터를 저장하는 역할을 한다. BCD는 부팅할 때 참조하는 데이터이고, WinRE는 윈도우 복구 툴을 사용할 때 참조하는 데이터이다.
요약하면, 윈도우 시스템에서 필요한 1차적인 데이터들이라 볼 수 있다.

 


추측

현상은 윈도우 Booting이 오래 걸리는 것이며, 디스크를 못 찾는 현상과 유사했었다.
이에 부팅 시 시스템 예약 파티션을 찾지 못해서 지연이 발생한 것이라 추측했다.
검색해 보니 윈도우 설치위치와 다른 곳에 할당된 시스템 예약을 복구할 수 있는 방법이 있었다.
이를 적용해 보았다.

해결과정

여러 블로그를 뒤져서 다른 파티션의 시스템 예약을 옮기는 방법을 찾았다.
요약하면
1. 간단하게 BCD 부팅 파일을 윈도우가 설치된 디스크에 새로 생성하고
2. 부팅 옵션을 해당 디스크로 설정하고
3. 잘못된 시스템 예약을 disable 시킨다.

BCD 부트 매니저 생성 및 설정

// bcdboot 명령을 통해 bootmgr를 생성한다.
bcdboot c:\windows /s c: /l ko-kr 
// bcdedit을 통해 부팅할 파티션을 지정한다.
bcdedit /set {bootmgr} device partition=c:

 

지금은 이미 활성해서 회색이지만, 파티션을 활성 파티션으로 표시한다.

잘못된 시스템 예약 파티션 Disable

C:\windows\system32>diskpart

...

DISKPART> list disk

  디스크 ###  상태           크기     사용 가능     Dyn  Gpt
  ----------  -------------  -------  ------------  ---  ---
  디스크 0    온라인        931 GB       1024 KB
  디스크 1    온라인       1863 GB           0 B
  디스크 2    온라인        232 GB           0 B
  디스크 3    온라인        111 GB       1024 KB

DISKPART> select disk 0

0 디스크가 선택한 디스크입니다.

DISKPART> list partition

  파티션 ###  종류              크기     오프셋
  ----------  ----------------  -------  -------
  파티션 1    주                  549 MB  1024 KB
  파티션 2    주                  930 GB   550 MB

DISKPART> select partition 1

1 파티션이 선택한 파티션입니다.

DISKPART> inactive

...

 

diskpart를 통해 500MB쯤 되는 시스템 예약을 inactive 시켰다.

 


주저리

부팅 지연 이슈는 해결되었다.
기분이 좋은 것을 보니 생각보다 그동안 스트레스를 받았던 것 같다.
이 이슈는 아마 언젠가 윈도우 포맷 중 설정을 잘못해서 발생한 것으로 추정된다.

정기적으로 포맷하는 습관을 줄여야 하는데...
학창 시절 윈도우는 SSD에 설치해야겠는데, 돈은 없어서 SSD 용량이 적었다...
이에 SSD로 윈도우만 설치하고, 상대적으로 싼 HDD로 다른 프로그램을 사용하던 시절이 있었다.
하지만 윈도우는 사용하다 보면 local 등 여러 잡다한 데이터가 쌓이게 되고, SSD의 용량이 부족해졌다.
그 시절부터 정기적으로 용량 확보를 위해 windows 포맷을 즐겼었다.
한 번씩 대청소를 하는 기분 + 새로 PC를 최적화 세팅하는 즐거움? 이 있어 아직도 하고 있다...

지금 쓰는 윈도우 SSD가 120GB 밖에 안 되는 것도 이 영향이 있다.
근데 슬슬 이 습관도 자제하는 게 좋을지도 모른다고 생각한다.

 


REFERENCE

- https://quasarzone.com/bbs/qf_cmr/views/2111658

- https://rootblog.tistory.com/218 (Special Thanks)

 

반응형