我将 CentOS 6 安装迁移到 Debian 10,并且 btrfs 快照在这些系统上大量使用。在 CentOS 下,我可以轻松拥有两个用户 - user1 和 user2,它们是组 - user1user2group 的一部分。当我与其中一个用户创建快照并在此快照上使用 g+rw 时,另一个用户也应该能够对该子卷进行快照:
user1@somehost:/BTRFS$ mkdir folder
user1@somehost:/BTRFS$ chown user1:user1user2group folder/
user1@somehost:/BTRFS$ chmod 770 folder/
user1@somehost:/BTRFS$ cd folder/
user1@somehost:/BTRFS/folder$ btrfs subvolume create snap-shot
Create subvolume './snap-shot'
user1@somehost:/BTRFS/folder$ chown user1:user1user2group snap-shot/
user1@somehost:/BTRFS/folder$ chmod 770 snap-shot/
user1@somehost:/BTRFS/folder$ su - user2
user2@somehost:~$ cd /BTRFS/folder
user2@somehost:/BTRFS/folder$ ls -lah
total 0
drwxrwx--- 1 user1 user1user2group 18 Jul 5 08:02 .
drwxrwx--- 1 user1 user1user2group 12 Jul 5 08:02 ..
drwxrwx--- 1 user1 user1user2group 0 Jul 5 08:03 snap-shot
我通过简单的复制验证 user2 对“快照”和“文件夹”拥有正确的权限:
user2@somehost:/BTRFS/folder$ cp -pr snap-shot copy-snap-shot
然后我尝试在 Debian 10 上以 user2 身份创建快照:
user2@somehost:/BTRFS/folder$ btrfs subvolume snapshot snap-shot/
user2-snapshot Create a snapshot of 'snap-shot/' in './user2-snapshot' ERROR: cannot
snapshot 'snap-shot/': Operation not permitted
在 CentOS 上,最后一个命令返回成功:
Create a snapshot of 'snap-shot/' in 'user2-snapshot'
我知道过去几年 BTRFS 发生了很多变化,但我发现这是相当基本的功能。有谁知道这是否可以解决?
答案1
@AB 找到了修补,它引入了这一变化,所以我会考虑这个答案。