dracut -f <pathToInitRamFs> <kernelVersion>
initramfs에 일부 사용자 정의 드라이버를 추가하기 위해 실행하면 nvme
명령에 오류 메시지가 표시됩니다.
또한 이러한 사용자 정의 드라이버를 initramfs에 복사하지 못하고 표시됩니다.
dracut-install: Failed to find module 'DtPcie' /lib/modules/4.18.0-147.el8.x86_64//kernel/drivers/misc/DtPcie.ko
파일이 루트 파일 시스템 트리에 존재하더라도:
# ls -l /lib/modules/4.18.0-147.el8.x86_64//kernel/drivers/misc/Dta.ko
-rw-r--r-- 1 root root 56015744 Jul 6 13:03 /lib/modules/4.18.0-147.el8.x86_64//kernel/drivers/misc/Dta.ko
그리고 lsinitrd
initramfs에 Dta.ko 드라이버가 포함되어 있지 않은지 확인합니다(실제로 전체 drivers/misc
하위 트리가 아님:
# lsinitrd /boot/initramfs-4.18.0-147.el8.x86_64.img | grep Dta
# (nothing)
# lsinitrd /boot/initramfs-4.18.0-147.el8.x86_64.img | grep misc
# (nothing)
원래 오류 메시지
dracut -f /boot/initramfs-4.18.0-147.el8.x86_64.img 4.18.0-147.el8.x86_64
nvme-1.9.dirty
usage: nvme <command> [<device>] [<args>]
The '<device>' may be either an NVMe character device (ex: /dev/nvme0) or an
nvme block device (ex: /dev/nvme0n1).
The following are all implemented sub-commands:
list List all NVMe devices and namespaces on machine
list-subsys List nvme subsystems
id-ctrl Send NVMe Identify Controller
etc etc etc
See 'nvme <plugin> help' for more information on a plugin
dracut-install: Failed to find module 'DtPcie' /lib/modules/4.18.0-147.el8.x86_64//kernel/drivers/misc/DtPcie.ko
dracut-install: Failed to find module 'Dta' /lib/modules/4.18.0-147.el8.x86_64//kernel/drivers/misc/Dta.ko
dracut-install: Failed to find module 'Dtu' /lib/modules/4.18.0-147.el8.x86_64//kernel/drivers/misc/Dtu.ko
dracut-install: Failed to find module 'LXV4L2D_PL330B' /lib/modules/4.18.0-147.el8.x86_64//kernel/drivers/misc/LXV4L2D_PL330B.ko
nvme
이는 필수 매개변수를 사용하여 직접 입력한 것과 동일한 출력입니다.
위의 명령을 사용하여 initramfs를 재구축한 것 외에는 아무 잘못도 하지 않았지만 dracut
이런 오류 메시지가 나왔습니다.
initramfs에 이러한 모듈이 필요하지만 이전에는 이 dracut 오류를 본 적이 없습니다. 이 문제를 어떻게 해결할 수 있나요?
시스템 정보: 센토스 8.1
# uname -a
Linux 4.18.0-147.el8.x86_64 #1 SMP Wed Dec 4 21:51:45 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
# yum list installed | grep dracut
dracut.x86_64 049-27.git20190906.el8 @anaconda
dracut-config-rescue.x86_64 049-27.git20190906.el8 @anaconda
dracut-network.x86_64 049-27.git20190906.el8 @anaconda
dracut-squash.x86_64 049-27.git20190906.el8 @anaconda
답변1
누락된 모듈은 dracut 구성 파일에 수동으로 지정하여 포함할 수 있습니다./etc/dracut.conf.d/myModules.conf
add_drivers+="Dta Dtu DtPcie"
(+= 주위에 공백을 추가하지 마십시오)
depmod -a
또한 initramfs를 다시 빌드하기 전에 dracut을 실행해야 합니다.
nvme
이렇게 해도 명령의 오류가 수정되지는 않습니다 .