Btrfs 子卷挂载

打印 上一主题 下一主题

主题 1005|帖子 1005|积分 3015

起因

Btrfs Snapper 是按照 / 进行备份的,总是会将用户目次下的 Steam 游戏上百个 G 全部备份。
检索了一些方法,Btrfs 是按照颗粒度进行备份的,故而无法略过文件。
只能将 /home/ 作为一个独立子卷,而在配置 Snapper config 时,不指定该子卷,则到达了清除的结果。
  1. # subvolume to snapshot
  2. SUBVVOLUME="/"
复制代码
过程

新建子卷

创建一个名为 @home 的子卷
  1. sudo btrfs subvolume create /@home
复制代码
迁移数据

因为只是 /home 目次,一样平常情况下不必到 LiveCD 环境下进行操作,直接迁移数据即可。
  1. sudo cp -a /home/* /@home
复制代码
修改 fstab

先查看子卷的参数,注意记录下来 subvol 和 subvolid
  1. sudo btrfs subvolume list /
复制代码
输出如下
  1. ID 2714 gen 350042 top level 258 path .snapshots/1991/snapshot
  2. ID 2715 gen 350159 top level 258 path .snapshots/1992/snapshot
  3. ID 2716 gen 350298 top level 5 path @home
复制代码
注意上面的 @home,对应的 ID 为  2716
然后编辑 /etc/fstab,原来挂载 Btrfs 的根目次类似于
  1. UUID=3ccf9bca-025c-4398-991a-c7b151f3675b                  /                 btrfs             rw,compress-force=zstd,relatime,ssd,discard=async,space_cache=v2,subvolid=5,subvol=/        0 0
复制代码
复制该行,根据上面查到的 subvol 和 subvolid 修改
  1. UUID=3ccf9bca-025c-4398-991a-c7b151f3675b                  /home                 btrfs             rw,compress-force=zstd,relatime,ssd,discard=async,space_cache=v2,subvolid=2716,subvol=@home        0 0
复制代码
一开始笔者仅修改了 subvol,导致挂载不上 /home
验证

能正常开机就阐明正常挂载了。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

北冰洋以北

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表