LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2013|回复: 9

有没有用grub2引导btrfs成功的?

[复制链接]
发表于 2009-11-24 21:05:38 | 显示全部楼层 |阅读模式
有没有人用grub2引导btrfs文件系统的?或者有没有人用btrfs文件系统的?
我在/boot/grub/下没有找到有关btrfs的模块呀
发表于 2009-11-24 21:44:26 | 显示全部楼层
您先用文件系统无关的引导程序好了,如 lilo、syslinux。
或者使用独立的 /boot 分区。
回复 支持 反对

使用道具 举报

发表于 2009-11-25 00:18:39 | 显示全部楼层
btrfs可用了?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-25 09:49:33 | 显示全部楼层
apt-get install btrfs-tools
然后找个空分区你可以mkfs.btrfs一下,然后挂上,就可以用,感觉存储东西好象比reiserfs节省空间,也还可以在线fsck,但在grub下认不出,我的内核是最新的2.6.31
回复 支持 反对

使用道具 举报

发表于 2009-11-26 10:42:17 | 显示全部楼层
我的理解是, 只需要/boot所在的分区是 grub2支持的分区即可.
如果你的/boot和/在不同的分区, 则无所谓root使用什么样的文件系统.
没有环境, 没办法测试.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-26 23:38:22 | 显示全部楼层
Post by blue_stone;2049911
我的理解是, 只需要/boot所在的分区是 grub2支持的分区即可.
如果你的/boot和/在不同的分区, 则无所谓root使用什么样的文件系统.
没有环境, 没办法测试.


我试了一下,根分区用btrfs,/boot分区用reiserfs也不行,开机同样提示找不到/root
回复 支持 反对

使用道具 举报

发表于 2009-11-27 00:00:23 | 显示全部楼层
Post by gao_linfeng;2050089
我试了一下,根分区用btrfs,/boot分区用reiserfs也不行,开机同样提示找不到/root


引导镜像里面得有btrfs的模块吧...
回复 支持 反对

使用道具 举报

发表于 2009-11-27 00:17:15 | 显示全部楼层
/boot里的文件系统靠grub支持
/的文件系统靠/boot里的内核支持
不就o了吗
另外grub2编译个模块就直接支持BT.FS了 应该有的吧
回复 支持 反对

使用道具 举报

发表于 2009-11-27 05:42:33 | 显示全部楼层
我试了一下, 可以引导, 但是搞起来比较麻烦. 注意2点:
1 在/etc/initramfs-tools/modules添加如下内容:
btrfs
zlib_deflate
libcrc32c
crc32c
并重新生成initrd文件
2 在内核参数中指定rootfstype=btrfs, 我使用的grub.cfg文件如下:
guoliangc:~# more /mnt/root/boot/grub/grub.cfg
insmod ext2
set root=(hd0,1)
menuentry "Default" {
        linux /vmlinuz-2.6.31-1-amd64 root=/dev/sda2 rootfstype=btrfs
        initrd /initrd.img-2.6.31-1-amd64
}

另外, 由于grub2不支持btrfs文件系统, 不能使用update-grub自动生成引导记录.

Best Wishes
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-29 17:46:57 | 显示全部楼层
Post by blue_stone;2050128
我试了一下, 可以引导, 但是搞起来比较麻烦. 注意2点:
1 在/etc/initramfs-tools/modules添加如下内容:
btrfs
zlib_deflate
libcrc32c
crc32c
并重新生成initrd文件
2 在内核参数中指定rootfstype=btrfs, 我使用的grub.cfg文件如下:
guoliangc:~# more /mnt/root/boot/grub/grub.cfg
insmod ext2
set root=(hd0,1)
menuentry "Default" {
        linux /vmlinuz-2.6.31-1-amd64 root=/dev/sda2 rootfstype=btrfs
        initrd /initrd.img-2.6.31-1-amd64
}

另外, 由于grub2不支持btrfs文件系统, 不能使用update-grub自动生成引导记录.

Best Wishes



谢谢楼上的兄弟,现在可以用了,我重新dpkg-reconfigure initramfs-tools了一下就行了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表