我安装了Ubuntu,但没有创建交换分区,而是/
在btrfs上安装了Ubuntu 。#现在,每次启动时,我都会收到消息“不允许稀疏文件”。此消息出现在初始屏幕之前。有没有办法消除此警告?
GRUB_SAVEDEFAULT=false
在/etc/default/grub
与运行update-grub
我安装了Ubuntu,但没有创建交换分区,而是/
在btrfs上安装了Ubuntu 。#现在,每次启动时,我都会收到消息“不允许稀疏文件”。此消息出现在初始屏幕之前。有没有办法消除此警告?
GRUB_SAVEDEFAULT=false
在/etc/default/grub
与运行update-grub
Answers:
好了,经过一番摸索之后,我发现了如何至少暂时摆脱该问题的方法,这很简单,但是我没有使用btrfs进行系统设置,因此无法确认此修复程序。
注释掉或删除此行:
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
要么
if [ -n "\${have_grubenv}" ]; then if [ -z "\${boot_once}" ]; then save_env \
recordfail; fi; fi
在这个文件中
/etc/grub.d/00_header
然后跑
update-grub
不/boot/grub/grub.cfg
直接编辑的原因是,每次grub更新时,它都会被覆盖,在这种情况下,如果grub通用软件包已更新,则只需“重新做”此修复程序。
如果您想添加自己的bug,这是启动板上的bug#736743
从错误报告中引用Colin Watson
这实际上是一个误导性的错误消息:发生的是GRUB的btrfs实现未实现用于将阻止列表返回到调用代码的文件读取挂钩接口。我就此事发表在grub-devel上,上游维护者指出,除了多设备问题之外,从GRUB写入btrfs基本上是有风险的,因为:
多个快照可以使用同一块,使用给定块的每棵树将包含其校验和,依此类推
但是,btrfs在开始时会为引导加载程序保留空间。这个空间超出了GRUB自身需要嵌入的空间,因此我们可以将1KB的空间用于环境块。
在任何情况下,这都不是使用子卷引起的新问题,也不会阻止引导(您会得到一个虚假的“按任意键继续”提示,但是如果您忽略它,它将继续引导)。降级到愿望清单。
希望这可以帮助
if [ -n "\${have_grubenv}" ]; then if [ -z "\${boot_once}" ]; then save_env recordfail; fi; fi
我正在运行Raring Ringtail的开发部门。
关于稀疏文件不允许消息,我遇到了同样的问题。GRUB根本不显示,直接启动到Ubuntu。
我正在阅读Linux Magazine(LXF),其中有几篇有关恢复和修复分区,文件,引导加载程序和其他内容的文章。
其中一位文章作者提到了一个可以使用的简单工具... Boot-Repair。
这个工具帮了我大忙,我认为应该在Ubuntu的存储库中占据重要位置。
将引导修复添加到您的系统:
打开一个终端窗口,然后复制/粘贴/键入以下内容:
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
复制/粘贴/键入以下内容以安装并启动引导修复:
sudo apt-get install -y boot-repair && boot-repair
引导修复的主GUI现在可见。
Click on a button called 'Recommended repair'.
让工具做到“神奇”。
当魔法结束时,
create a little note of the url visible.
重新引导系统,并检查是否可以访问恢复的操作系统。
如果没有成功,请使用修复结束时显示的URL寻求帮助。