由于在装ubuntu2004的时候没有关闭自动更新内核,导致在一次关机之后auto update了,再启动发现无法使用nvidia-smi
nvidia-smi
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.
解决办法是回退到之前安装nvidia显卡驱动的老内核,并把自动升级的内核卸载掉。下面是详细过程。
查看当前系统内核
uname -a
找到机器已安装内核
在终端里输入命令:
dpkg --get-selections | grep linux-image
输出如下:
(oa) ➜ 下载 dpkg --get-selections | grep linux-image
linux-image-5.15.0-139-generic install
linux-image-5.4.0-26-generic install
linux-image-5.8.0-38-generic deinstall # 这里是因为我已经将其卸载
linux-image-generic-hwe-20.04 instal
卸载新的内核版本:
sudo apt-get remove linux-image-5.8.0-38-generic
卸载后可以参考https://blog.csdn.net/sdbyp/article/details/139853774重新安装一下n卡驱动
更新grub
查看当前grub内容:
grep menuentry /boot/grub/grub.cfg
根据内容确定如何修改/etc/default/grub文件。例如,上一步输出为:
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
menuentry_id_option=""
export menuentry_id_option
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-47dea8a8-9098-4cb9-8964-a9cd533cfa1f' {
submenu 'Ubuntu 的高级选项' $menuentry_id_option 'gnulinux-advanced-47dea8a8-9098-4cb9-8964-a9cd533cfa1f' {
menuentry 'Ubuntu,Linux 5.15.0-139-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.15.0-139-generic-advanced-47dea8a8-9098-4cb9-8964-a9cd533cfa1f' {
menuentry 'Ubuntu, with Linux 5.15.0-139-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.15.0-139-generic-recovery-47dea8a8-9098-4cb9-8964-a9cd533cfa1f' {
menuentry 'Ubuntu,Linux 5.4.0-26-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.0-26-generic-advanced-47dea8a8-9098-4cb9-8964-a9cd533cfa1f' {
menuentry 'Ubuntu, with Linux 5.4.0-26-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.0-26-generic-recovery-47dea8a8-9098-4cb9-8964-a9cd533cfa1f' {
menuentry 'Windows Boot Manager (在 /dev/nvme0n1p1)' --class windows --class os $menuentry_id_option 'osprober-efi-F8D9-08D4' {
menuentry 'Ubuntu 18.04.5 LTS (18.04) (在 /dev/nvme0n1p6)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-4cd35c8b-2fd4-4386-9930-f9144071e7f7' {
submenu 'Ubuntu 18.04.5 LTS (18.04) (在 /dev/nvme0n1p6) 的高级选项' $menuentry_id_option 'osprober-gnulinux-advanced-4cd35c8b-2fd4-4386-9930-f9144071e7f7' {
menuentry 'Ubuntu (在 /dev/nvme0n1p6)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-5.4.0-90-generic--4cd35c8b-2fd4-4386-9930-f9144071e7f7' {
menuentry 'Ubuntu, with Linux 5.4.0-90-generic (在 /dev/nvme0n1p6)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-5.4.0-90-generic--4cd35c8b-2fd4-4386-9930-f9144071e7f7' {
menuentry 'Ubuntu, with Linux 5.4.0-90-generic (recovery mode) (在 /dev/nvme0n1p6)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-5.4.0-90-generic-root=UUID=4cd35c8b-2fd4-4386-9930-f9144071e7f7 ro recovery nomodeset dis_ucode_ldr-4cd35c8b-2fd4-4386-9930-f9144071e7f7' {
menuentry 'Ubuntu, with Linux 5.3.0-28-generic (在 /dev/nvme0n1p6)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-5.3.0-28-generic--4cd35c8b-2fd4-4386-9930-f9144071e7f7' {
menuentry 'Ubuntu, with Linux 5.3.0-28-generic (recovery mode) (在 /dev/nvme0n1p6)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-5.3.0-28-generic-root=UUID=4cd35c8b-2fd4-4386-9930-f9144071e7f7 ro recovery nomodeset dis_ucode_ldr-4cd35c8b-2fd4-4386-9930-f9144071e7f7' {
menuentry 'Ubuntu, with Linux 4.13.0-041300-generic (在 /dev/nvme0n1p6)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.13.0-041300-generic--4cd35c8b-2fd4-4386-9930-f9144071e7f7' {
menuentry 'Ubuntu, with Linux 4.13.0-041300-generic (recovery mode) (在 /dev/nvme0n1p6)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.13.0-041300-generic-root=UUID=4cd35c8b-2fd4-4386-9930-f9144071e7f7 ro recovery nomodeset dis_ucode_ldr-4cd35c8b-2fd4-4386-9930-f9144071e7f7' {
menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
因此应该修改
# 编辑 GRUB 配置文件
sudo nano /etc/default/grub
GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu,Linux 5.15.0-139-generic"
这里一定要和上一步相匹配,否则开机时需要手动进入advanced options选择旧内核
#更新 GRUB
sudo update-grub

2096

被折叠的 条评论
为什么被折叠?



