[Share Experiences] 如何去除 update-grub 报错“get rootb uuid error” Resolved
Tofloor
poster avatar
忘记、过去
deepin
2023-02-06 09:54
Author

应该有人见过这个错误吧:get rootb uuid error: failed to get "rootb" uuid

截图_deepin-terminal_20230206014237.png

这个报错主要出现在非全盘安装的系统上,由于没有全盘安装时生成的 rootb 备份分区,导致 update-grub 命令执行时有错误提示(虽然不影响用,只是容易引起强迫症患者不适)

问题原因

截图_deepin-editor_20230206014158.png

/etc/default/grub.d/12_deepin_ab_recovery.cfg 文件中有一条命令用于获取隐藏系统盘(rootb),rootb 不存在时会打印该错误

P.S. 可以手动执行下 sudo /usr/lib/deepin-daemon/ab-recovery -print-sh-hide-os 这个命令看看效果

解决方式

方法1:修改 /etc/default/grub.d/12_deepin_ab_recovery.cfg,将前面的整个 if 语句全部注释掉
方法2:修改 /etc/default/grub.d/12_deepin_ab_recovery.cfg,将图中框出部分修改为 eval $(/usr/lib/deepin-daemon/ab-recovery -print-sh-hide-os 2>/dev/null) || true,屏蔽错误信息打印
方法3:直接删除该文件,影响也不大。

处理后再执行 sudo update-grub 就没有这个烦人的提示了 XD

Reply Favorite View the author
All Replies
忘记、过去
deepin
2023-02-06 10:05
#1

题外话:手动设置 swapfile 且大小大于物理内存,尝试休眠仍然提示空间不足无法休眠
https://bbs.deepin.org/post/250420

6 楼提到需要修改 grub 启动参数,添加 resume=UUID= 和 resume_offset= 指定 swapfile 所在分区和偏移量。这里其实不需要直接修改 /etc/default/grub。参考 /etc/default/grub.d 中几个 cfg 文件,不难发现实际都是 shell 脚本,在执行 update-grub 时会被执行,修改某些环境变量内容并最终写入 /boot/grub/grub.cfg

由这个错误的处理方式,可以尝试多写一个 cfg(以 40_custom_resume.cfg 为例)放在 /etc/default/grub.d 中,内容中指定

GRUB_CMDLINE_LINUX_DEFAULT="resume=UUID=xxxx resume_offset=xxxx $GRUB_CMDLINE_LINUX_DEFAULT"

由此即可实现相同功能 joy

Reply View the author
hanzn-zzx
deepin
2023-02-06 16:46
#2

好分享!kissing_heart

已收入常用资源整理~ @pzm9012 @PossibleVing

Reply View the author
Ziggy
deepin
2023-02-07 05:15
#3

是不是系统盘卷标设置成roota了

Reply View the author
忘记、过去
deepin
2023-02-07 07:40
#4
Ziggy

是不是系统盘卷标设置成roota了

并不是 doubt

截图里的判断条件是:判断 /etc/default/grub.d/11_deepin_ab_recovery.cfg 是不是一个文件。然而非全盘安装的时候,这个文件压根不存在,所以满足条件就进入执行命令,然后打印这个错误提示了

Reply View the author
Signal
deepin
2024-02-15 13:47
#5

请问手动分配硬盘后,怎样修改rootb的UUID呢?不然系统自带的备份功能无法使用啊。

Reply View the author
忘记、过去
deepin
2024-04-08 14:41
#6
Signal

请问手动分配硬盘后,怎样修改rootb的UUID呢?不然系统自带的备份功能无法使用啊。

手动分配硬盘安装的话就没有 rootb 这个分区了,用不了系统自带的备份还原功能

Reply View the author