在不安装 grub 依赖项的情况下升级 Linux 内核?

Dan*_*lRS 4 upgrade apt boot grub2

我在已经使用 rEFInd 启动的系统中安装了 Ubuntu 16.04。安装后,我删除了所有与 grub 相关的包。然而,每次新的内核版本发布时,它都会尝试安装一些我不需要的 grub 依赖项,因为我没有安装 grub。这是我正在使用的命令:

$ sudo apt-get update && sudo apt-get upgrade
...
Fetched 306 kB in 0s (350 kB/s)    
Reading package lists... Done
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
  linux-headers-generic linux-signed-generic linux-signed-image-generic
Run Code Online (Sandbox Code Playgroud)

所以在那之后我尝试使用dist-upgrade

$ sudo apt-get dist-upgradeReading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following NEW packages will be installed:
  grub-common grub-gfxpayload-lists grub-pc grub-pc-bin grub2-common
  linux-headers-4.4.0-72 linux-headers-4.4.0-72-generic
  linux-image-4.4.0-72-generic linux-image-extra-4.4.0-72-generic
  linux-signed-image-4.4.0-72-generic os-prober
The following packages will be upgraded:
  linux-headers-generic linux-signed-generic linux-signed-image-generic
3 upgraded, 11 newly installed, 0 to remove and 0 not upgraded.
Need to get 71.8 MB/71.8 MB of archives.
After this operation, 314 MB of additional disk space will be used.
Do you want to continue? [Y/n] n
Abort.
Run Code Online (Sandbox Code Playgroud)

我无论如何都尝试升级并在之后删除 grub 包,但是,配置和安装时包管理器失败grub-pc,就像在这个线程中一样

有什么办法可以在不安装那些 grub 依赖项的情况下升级内核?

Dan*_*lRS 5

检查linux-headers-genericlinux-signed-genericlinux-signed-image-generic的依赖关系后。我看到它们都不依赖于grub. 因此,使用apt-mark忽略所有与 grub 相关的包的简单保留为我解决了这个问题:

$ sudo apt-mark hold grub* grub*:i386
Run Code Online (Sandbox Code Playgroud)

dist-upgrade 现在忽略 grub。