我正在尝试自动创建和安装 btrfs 子卷。我很容易创建它们并创建 fstab 条目,但更难解析子卷 ID。
我注意到其他子卷具有以“@”为前缀的可预测名称,它们以这种方式安装在 /etc/fstab 中
UUID=280d6f04-6ad0-4647-96b9-580aec12bbdc /var/log btrfs noatime,subvol=@/var/log 0 0
Run Code Online (Sandbox Code Playgroud)
确实,通过这样的标签进行安装是有效的
$ mount -o subvol=@/var/log photoshop-32
Run Code Online (Sandbox Code Playgroud)
安装具有“常规”名称的子卷失败
$ mount -o subvol=var/users/robert/wines/photoshop-32 /var/users/robert/wines/photoshop-32/
mount: mount(2) failed: /var/users/robert/wines/photoshop-32: No such file or directory
Run Code Online (Sandbox Code Playgroud)
因此,我尝试使用这样的名称创建一个子卷,但失败了
# btrfs subvolume create /var/users/robert/wines/blah/@/var/users/robert/wines/blah
ERROR: cannot access '/var/users/robert/wines/blah/@/var/users/robert/wines': No such file or directory
# btrfs subvolume create /@/var/users/robert/wines/blah
ERROR: cannot access '/@/var/users/robert/wines': No such file or directory
# btrfs subvolume create //@/var/users/robert/wines/blah
# ERROR: cannot access '//@/var/users/robert/wines': No such file or directory
Run Code Online (Sandbox Code Playgroud)
如何创建名称中带有“@”的子卷?或者,如何在无需查找子卷 ID 的情况下安装子卷?
感谢 IRC 上的 #btrfs 频道(完整参考),我发现了以下内容:
subvolid=0
subvolume下创建的,默认是不挂载的例如,在我的场景中:
# mount UUID=280d6f04-6ad0-4647-96b9-580aec12bbdc -o subvolid=0 btrfs-sys/
# tree -L 2 /mnt/btrfs-sys/
/mnt/btrfs-sys/
??? @
??? boot
??? etc
??? opt
??? srv
??? tmp
??? usr
??? var
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1423 次 |
最近记录: |