사용자 정의 커널이 부팅할 수 없는 initramfs를 생성합니다 - CentOS 7

사용자 정의 커널이 부팅할 수 없는 initramfs를 생성합니다 - CentOS 7

make저는 자체 커널(4.19.37)을 구축해 왔으며 빌드() 또는 설치( make install_modules+ ) make install중에 문제가 없었습니다 . 를 실행할 때까지 모든 것이 잘 진행되는 것 같습니다 grub2-mkconfig -o /boot/grub2/grub.cfg. 이 명령을 실행하면 grub은 vmlinuz-*기존 커널과 새 커널 /boot/및 해당 커널을 찾습니다 initramfs-*.img. 그러나 이 시점에서 시스템은 무기한(> 몇 시간) 정지됩니다. Ctrl+C멈출 수가 없어 재부팅해야 합니다. 이 문제를 조사한 결과 부팅 가능한 운영 체제에서 삭제된 디스크를 감지하는 것이 문제일 수 있음을 발견했습니다. 해당 디스크를 삭제하고 GRUB_DISABLE_OS_PROBER=true각 디스크에 추가하여 /etc/default/grub문제를 제거했습니다.이 SE 게시물. 둘 다 도움이 되지 않습니다.

grub>재부팅 후 명령줄 에 도달했습니다 . 아마도 grub2-mkconfiggrub 구성 파일이 완료되지 않고 손상되었기 때문일 것입니다. 여기에서는 이전 커널과 새 커널은 물론 initramfs도 문제 없이 로드할 수 있지만 부팅을 실행하면 커널 패닉이 발생합니다.

end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)

커널 패닉 종료 - 동기화되지 않음: VFS: 알 수 없는 블록(1,0)에 루트 파일 시스템을 마운트할 수 없습니다.

물론 내 가정은 initramfs-4.19.37.img내 빌드 프로세스에 문제가 있다는 것입니다. 실험으로 새 커널을 로드할 수 있는지 테스트했지만 이전 initramfs(4.19.10)를 사용하여 실제로 부팅했습니다 emergency mode. 그러나 새 커널을 사용하여 이전 커널에서는 반대 작업을 수행할 수 없었습니다. initramfs. 그래서 내 새로운 initramfs 이미지에는 뭔가 수상한 점이 있습니다.

더 똑똑해지면서 마지막 실험은 mount. 또한 커널 빌드의 이전 파일과 새 파일을 비교했는데 .config차이점이 미미했습니다.

기타 참고 사항/관찰 사항:

  • 위 이미지를 보면 아무런 결과도 나오지 않은 것을 알 수 List of all partions:있는데, 파일시스템 종류에 문제가 있는 것인지 궁금합니다. 내 하드 드라이브에는 xfs어떤 파일 시스템이 있습니까 initramfs? 최고정보책임자?
  • grub>명령줄 에서 ls /생성합니다. /boot.it에는 모든 vmlinuz-*파일이 포함되어 있습니다.initramfs-*.img
  • 내 파일 시스템은xfs
  • 동일한 결과로 다양한 다른 커널 버전을 시도했습니다.
  • 저는 두 번 성공적으로 빌드하고 설치했습니다. 한 번은 업그레이드된 기존 커널(4.19.10)을 사용했고, 두 번째는 low-latency선점 모델이 있는 동일한 커널을 사용했습니다. 나는 그 당시 내가 무엇을 다르게 했는지 평생 알 수 없습니다.

따라서 마지막 질문은 - initramfs이러한 빌드의 형태에 어떤 문제가 있습니까? 무결성을 확인하기 위해 또 무엇을 할 수 있나요? .config파일 시스템용 커널을 구축할 때 변경해야 할 사항이 있습니까 xfs?


면책조항: 따라서 이것은 실제로 연속입니다.이 문제, 하지만 문제를 조금 단순화했습니다. 일부 배경 정보가 관련될 수 있습니다.

관련 정보