RHEL系操作系統(CentOS/CtyunOS)
安裝依賴包
yum install dracut -y運行以下命令,查看系統內核是否已經加載了NVMe驅動。
cat /boot/config-`uname -r` | grep -i nvme | grep -v "^#"返回結果如上圖所示,如果CONFIG_BLK_DEV_NVME=y則表示該操作系統可以直接使用,您需要跳過后續的步驟2、步驟3直接進行步驟4的參數配置。如果CONFIG_BLK_DEV_NVME=m則您需要依次完成以下操作步驟。
運行以下命令,查看initramfs中是否包含NVMe驅動。
lsinitrd /boot/initramfs-`uname -r`.img | grep -i nvme | awk '{print $NF}'如果有類似于如上圖所示的返回結果,則表示該操作系統可以直接使用,您需要跳過后續的步驟3,直接進行步驟4的參數配置。否則,您需要依次完成以下操作步驟。
依次運行以下命令,使initramfs支持NVMe驅動。
mkdir -p /etc/dracut.conf.decho 'add_drivers+=" nvme nvme-core nvme-fabrics nvme-fc nvme-rdma nvme-loop nvmet nvmet-fc nvme-tcp "' >/etc/dracut.conf.d/nvme.confdracut -v -f在GRUB中添加NVMe相關的nvme timeout參數
打開/etc/default/grub文件,在GRUB_CMDLINE_LINUX=一行中,添加
nvme_core.io_timeout=4294967295 nvme_core.admin_timeout=4294967295參數信息。添加參數后,文件內容如下圖所示:
運行以下命令,使配置的GRUB生效。
根據操作系統的啟動方式不同,選擇以下適用于您的操作系統的命令
(1)Legacy啟動方式
grub2-mkconfig -o /boot/grub2/grub.cfg(2)UEFI啟動方式
grub2-mkconfig -o /boot/efi/EFI/<distro> /grub.cfgwatchdog的時間修改為30s。
打開/etc/sysctl.conf文件,在文件末尾添加
kernel.watchdog_thresh=30文件內容如下圖所示:
鏡像制作完成后,為保證以上配置正確,可通過以下操作進行驗證驗證:
a)驗證 /etc/default/grub 修改是否生效,參考:
cat /proc/cmdlineb)驗證 /etc/sysctl.conf 是否正確配置 kernel.watchdog_thresh,參考:
cat /etc/sysctl.conf | grep watchdogc)重啟驗證 NVMe 驅動信息,參考:
lsinitrd /boot/initramfs-`uname -r`.img | grep -i nvme | awk '{print $NF}'參考上面步驟2
Debian系操作系統(Ubuntu/Debian)
運行以下命令,查看系統內核是否已經加載了NVMe驅動。
cat /boot/config-`uname -r` | grep -i nvme | grep -v "^#"返回結果如下所示,如果CONFIG_BLK_DEV_NVME=y則表示該操作系統可以直接使用,您需要跳過后續的步驟1、步驟2直接進行步驟4的參數配置。如果CONFIG_BLK_DEV_NVME=m則您需要依次完成以下操作步驟。
運行以下命令,查看initramfs中是否包含NVMe驅動。
lsinitramfs /boot/initrd.img-`uname -r` | grep -i nvme如果有類似于如上圖所示的返回結果,則表示該操作系統可以直接使用。
在GRUB中添加NVMe相關的nvme timeout參數
打開/etc/default/grub文件,在GRUB_CMDLINE_LINUX=一行中,添加
nvme_core.io_timeout=4294967295 nvme_core.admin_timeout=4294967295參數信息。添加參數后,文件內容如下圖所示:
運行以下命令,使配置的GRUB生效。
根據操作系統的啟動方式不同,選擇以下適用于您的操作系統的命令
(1)Legacy啟動方式
grub2-mkconfig -o /boot/grub2/grub.cfg(2)UEFI啟動方式
grub2-mkconfig -o /boot/efi/EFI/<distro> /grub.cfg(3)不分區啟動模式(該命令僅適用于Ubuntu/Debian系統)
update-grub / update-grub2watchdog的時間修改為30s。
打開/etc/sysctl.conf文件,在文件末尾添加
kernel.watchdog_thresh=30文件內容如下圖所示: