为什么只有 root 才能写入已挂载的 (btrfs) 文件系统

为什么只有 root 才能写入已挂载的 (btrfs) 文件系统

我跟着教程创建 btrfs 文件系统。文件系统是使用以下方式创建的:

sudo mkfs.btrfs /dev/sdb /dev/sdc

似乎新的 btrfs 文件系统已成功创建:

$ sudo btrfs filesystem show /dev/sdb 
[sudo] password for dwayne:  
Label: none  uuid: ada8b4f3-f4a8-4a9d-a078-2149f5d7fd0c     
Total devices 2 FS bytes used 896.00KiB     
devid    1 size 4.55TiB used 2.01GiB path /dev/sdb  
devid    2 size 4.55TiB used 2.01GiB path /dev/sdc

使用(如文章所示)安装它

sudo mount /dev/sdb /mnt

但我无法写信给它:

$ cd /mnt   
$ touch helloworld.txt  
touch: cannot touch 'helloworld.txt': Permission denied  
$ sudo touch helloworld.txt  
$ ls -al  
total 20  
drwxr-xr-x  1 root root   28 Mar  1 00:27 .  
drwxr-xr-x 24 root root 4096 Feb 27 21:27 ..
-rw-r--r--  1 root root    0 Mar  1 00:27 helloworld.txt  
$ df -h .  
Filesystem      Size  Used Avail Use% Mounted on  
/dev/sdb        9.1T 17M  9.1T   1% /mnt

为什么 root 具有写入权限,但其他人却没有?我做错了什么?

答案1

这是创建新分区并以 root 身份挂载后出现的正常情况。您必须使用chowmchmodsetfacl等授予权限和所有权,然后 root 以外的任何人都可以写入该分区。

当您挂载支持 POSIX 权限和所有权的分区时,挂载点将设置为由挂载它的人拥有 - 通常是 root ( sudo mount)。GUI 挂载使用u盘,负责将您设置为挂载点本身的所有者。

相关内容