今天,Ubuntu 20.04 中的软件更新程序提示我对最新内核升级进行“部分升级”。
我当前的内核是 5.13.0-39-generic。部分升级要安装以下内容:
linux-headers-5.13.0-40-generic
linux-hwe-5.13-headers-5.13.0-40
linux-image-5.13.0-40-generic
linux-modules-5.13.0-40-generic
linux-modules-extra-5.13.0-40-generic
linux-modules-nvidia-390-5.13.0-40-generic
linux-objects-nvidia-390-5.13.0-40-generic
linux-signatures-nvidia-5.13.0-40-generic
它希望升级以下内容:
libnvidia-cfg1-390
libnvidia-common-390
libnvidia-compute-390
libnvidia-compute-390:i386
libnvidia-decode-390
libnvidia-decode-390:i386
libnvidia-encode-390
libnvidia-encode-390:i386
libnvidia-fbc1-390
libnvidia-fbc1-390:i386
libnvidia-gl-390
libnvidia-gl-390:i386
libnvidia-ifr1-390
libnvidia-ifr1-390:i386
linux-generic-hwe-20.04
linux-headers-generic-hwe-20.04
linux-image-generic-hwe-20.04
linux-libc-dev
linux-modules-nvidia-390-generic-hwe-20.04
nvidia-compute-utils-390
nvidia-dkms-390
nvidia-driver-390
nvidia-kernel-common-390
nvidia-kernel-source-390
nvidia-utils-390
xserver-xorg-video-nvidia-390
到目前为止一切顺利。但它还想删除以下两个包:
linux-modules-nvidia-390-5.13.0-37-generic
linux-modules-nvidia-390-5.13.0-39-generic
由于 5.13.0-39 是我当前工作的内核,如果后者被删除,我想如果升级出现问题,我将无法启动以前的内核,因为 NVIDIA 模块将会丢失。
有人已经这样做了吗?这样做安全吗?
答案1
我今天进行了部分升级。一切顺利。唯一可能出现问题的是软件包linux-modules-nvidia-390-5.13.0-39-generic
已被删除(我担心的),因此如果我选择从以前的内核 5.13.0-39 启动,我可能无法启动(安装内核 5.13.0-40 后,与更早的内核 5.13.0-37 相关的所有内容都被删除了,因此 37 不是问题)。但因为一切正常,我不需要这样做。
整个“部分升级”可能是由于 NVIDIA 驱动程序从版本 144 更新到 147 并且同时内核从 5.13.0-39 更新到 5.13.0-40 造成的。
该软件包linux-modules-nvidia-390-5.13.0-39-generic
与 NVIDIA 驱动程序的 147 版不兼容,因为它需要 144 版(如果我尝试通过 Synaptic 重新安装它,就会清楚地显示),因此必须在升级期间将其删除(通常不会这样做,所有与上一个内核相关的软件包都会保留,只有在下一次内核升级后才会删除)。这可能无法在常规升级期间完成(我猜),因此需要“部分升级”程序。
所以回答我自己的问题是,是的,可以安全地完成。