커널 sysfs가 스토리지 kobject를 인식하지 못합니다.

커널 sysfs가 스토리지 kobject를 인식하지 못합니다.

나는 우분투 커널 4.xx와 해당 우분투 initrd.img를 사용하고 있으며 작동합니다. 그러나 다음에서 영감을 받은 사용자 정의 initramfs를 사용하고 싶습니다.lfs (처음부터 리눅스) initramfs. 커널은 sysfs 설치를 포함하여 init 스크립트를 추출하고 성공적으로 실행합니다. 그러나 /sys는 사용 가능한 저장소(두 개의 디스크가 있음)에 어떤 추적도 노출하지 않으므로 커널 루트를 초기화할 수 없습니다.

문제가 무엇입니까?

ubuntu 커널 추가 기능(/ubuntu 디렉터리)이 initrd에 대한 특별한 정책을 지정합니까?

답변1

작동 중인 시스템에서 sysfs의 장치와 해당 device심볼릭 링크를 확인하세요. 이는 상위 장치를 가리키며, 상위 장치는 자체 상위 장치 등을 가질 수도 있습니다. 장치 및 모든 상위 장치 목록을 직접 작성하십시오. 그런 다음 initramfs에서 이 모든 것을 확인할 수 있습니다. 두 개 이상의 디스크 장치에 대한 요구 사항이 누락되었을 수 있습니다.

둘째, 장치 목록을 만들 때 driver/module각 장치를 살펴보고 그것이 무엇인지 기록해 두십시오. 이는 어떤 커널 모듈이 장치를 인식하고 있는지 알려줍니다.

udev가 커널 모듈을 로드해야 합니다.

불행하게도 LFS initramfs는 systemd-udev를 가져와 systemd 없이 실행하려고 합니다. 이는 불행한 일입니다. systemd를 사용하면 systemd-udev가 발생한 모든 오류를 systemd 로그에 기록하기 때문입니다. 그런 다음 로그에서 오류를 확인할 수 있습니다. LFS initramfs에서 udev 오류 로깅이 작동하는지 모르겠습니다.

ubuntu 커널 추가 기능(/ubuntu 디렉터리)이 initrd에 대한 특별한 정책을 지정합니까?

아니요.

관련 정보