Focal - 从更新 grub 中排除磁盘

Focal - 从更新 grub 中排除磁盘

我的新笔记本电脑有内置读卡器。与以前的笔记本电脑不同,读卡器显示为标准 USB 磁盘 (/dev/sdb),而不是专用 PCIe 设备 (/dev/mmcblk)。因此,GRUB 在运行时似乎会扫描它update-grub,这会产生错误,因为读卡器中没有卡:

$ sudo update-grub
Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/init-select.cfg'
Generating grub configuration file ...
  /dev/sdb: open failed: No medium found
  /dev/sdb: open failed: No medium found
  /dev/sdb: open failed: No medium found
  /dev/sdb: open failed: No medium found
  /dev/sdb: open failed: No medium found
  /dev/sdb: open failed: No medium found
...

这不是什么问题,但看到这些不必要的垃圾信息确实很烦人。我尝试过将 添加GRUB_DISABLE_OS_PROBER=true/etc/default/grub/etc/grub.d/30_os-prober,以及chmod -x /etc/grub.d/30_os-prober,但每次它仍然会检查/dev/sdb,所以我不确定调用在哪里。

我的这台笔记本电脑上只有 Ubuntu,而且只有一个 SSD,因此无需扫描任何其他磁盘。我安装了 19.10,本月升级到 20.04。我可以禁用扫描吗?

答案1

我想总结一下bug1834259mook765 提到。

对我有用的是:

我在根磁盘上使用 lvm2(我不确定如果不使用 lvm 是否可以工作)。

正如在bug1834259我在 的设备部分添加了一个全局过滤器/etc/lvm/lvm.conf

首先查找/dev/disk/by-id要添加的过滤器。

# ls -l /dev/disk/by-id/
total 0
...
lrwxrwxrwx 1 root root  9 Aug  8 17:23 usb-Generic_STORAGE_DEVICE_00001-0:0 -> ../../sdb
lrwxrwxrwx 1 root root  9 Aug  8 17:23 usb-Generic_STORAGE_DEVICE_00001-0:1 -> ../../sdc
lrwxrwxrwx 1 root root  9 Aug  8 17:23 usb-Generic_STORAGE_DEVICE_00001-0:2 -> ../../sdd
lrwxrwxrwx 1 root root  9 Aug  8 17:23 usb-Generic_STORAGE_DEVICE_00001-0:3 -> ../../sde

就我而言,usb-Generic 指向读卡器设备。

为了过滤掉这些设备,我的全局过滤器如下所示:

global_filter = [ "r|/dev/disk/by-id/usb-Generic.*|" ]

请注意,这是 之间的正则表达式|r开头的 表示“删除”。

可能还有更聪明的解决方案,但这对我来说有效。

相关内容