我正在运行 Ubuntu 12.04.3 LTS
apt-get update
我使用 btrfs 转换了我的数据驱动器。我在安装 btrfs-tools 之前先做了这件事。
不幸的是,仍然只安装了 0.19 版本
我可以安装驱动器,但无法识别选项 compress=lzo 和 commit=60。由于这些选项在 v0.19 中甚至不存在,所以这是意料之中的。我安装了一个 .deb 包来更新我的 btrfs-tools。
当我跑步时btrfs version
,答案是Btrfs v3.12
目前情况已经是最新的了。
问题是,我仍然无法使用 fstab 中的 commit=60 和 compression=lzo 进行启动。
Fstab:
/dev/sdf1 /mnt/6 btrfs rw,noatime,commit=60,compression=lzo 0 2
当我删除这两个选项时,一切都正常。
这可能是因为驱动器从 ext4 转换为 btrfs,使用的是旧版本(0.19)吗?
如果可以的话,我可以以某种方式更新 fs 吗?
答案1
Btrfs 挂载选项由 btrfs 内核模块解析。您应该升级内核,因为 Btrfs 在较旧的内核上得不到很好的支持。幸运的是,12.04 具有关键的 13.10 软件包的反向移植:LTS启用堆栈
sudo apt-get install --install-recommends {linux-generic,xserver-xorg,libgl1-mesa-glx}-lts-saucy
这应该将内核从 3.2 升级到 3.11。
Btrfs 就地转换会产生碎片化的文件系统,并且不允许您选择一些重要功能。如果您有机会将数据 rsync 到新的 btrfs 文件系统,请使用以下命令:
mkfs.btrfs --nodesize 16k --leafsize 16k --features skinny-metadata /dev/YourDevice