根拥有主目录,chown不起作用


12

我正在运行Ubuntu 12.04,遇到各种问题。我可以追溯到用户的主目录(/ home / user)由root拥有的事实。

/ home目录实际上是挂载在另一个驱动器上,但是我可以看到在fstab中,我仅挂载/ home而不是/ home / user:

UUID=DC56D19E56DX3233 /home ntfs user,exec 0 2

下面的chown命令似乎不起作用:

sudo chown -R user /home/user

这将正确运行,但是实际上并不会更改目录的所有权。这是ls -ld运行命令后的输出:

drwxrwxrwx 1 root root 20480 Sep 25 00:07 /home/user

这与以前相同。


1
您能否从您的主分区/etc/fstab和/或mount命令的输出中添加相关行(例如,mount | grep 'home'
steeldriver

mount | grep home-> / dev / sdb1 / home类型上的fuseblk(rw,nosuid,nodev,allow_other,blksize = 4096)
DJElbow 2013年

cat /etc/fstab-> UUID = DC56D19E56DX3233 / home ntfs user,exec 0 2
DJElbow 2013年

1
因此,潜在的问题似乎是您在主分区中使用了非Linux文件系统(ntfs)-它实际上并不支持* nix样式的文件权限。可能可以通过在挂载上使用适当的文件掩码选项来使其工作,但我对此没有任何经验。祝好运。
钢铁司机

是的,您已经将/ home挂载为Windows文件系统,这不是受支持的配置。
psusi

Answers:


17

NTFS不支持Unix风格的“所有者”,因此Linux内核被迫为整个卷分配一个所有者-通常是root。除了将整个主目录移动到EXT4之外,您还可以使用mount(或在中fstab)的'uid'或'gid'选项将整个分区的所有权授予特定的用户或组。在多用户环境中存在安全隐患,但是我在双启动便携式计算机上使用了此方法。

mountman mount)手册页的很长一段距离内,我们在NTFS的文件系统特定选项下找到了此代码:
uid=value, gid=value and umask=value
Set the file permission on the filesystem. The umask value is given in octal. By default, the files are owned by root and not readable by somebody else.

您在线路fstab将被改变UUID=DC56D19E56DX3233 /home ntfs user,exec,uid=username,gid=group 0 2,而你会是免费的,如果你想编辑的umask。


3

如评论中所述,问题是我的主目录安装在具有NTFS文件系统的其他硬盘驱动器上。

我使用Deja Dup将主目录备份到外部驱动器。然后使用gparted格式化内部NTFS驱动器并将文件系统更改为EXT4。

接下来,我更改了/ etc / fstab以匹配驱动器的新UUID,并将“ ntfs”更改为“ ext4”。

重新启动后,我必须按Ctrl + Alt + F1来登录终端。我在那里能够使用sudo chown -R user:user / home / user。

然后,我能够登录到GUI,并使用Deja Dup和外部驱动器上的备份还原我的主目录。

到目前为止,一切都很好。


1
不幸的是,我有同样的问题,但我希望也可以从Windows访问该文件夹。因为我是唯一的用户,所以我将根据Mactrent的答案更改整个分区的owner:group。
flurbius '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.