问题描述
我希望用户对此文件夹(以及所有sub-directories和其中的文件)拥有完整的权限:
~/.blabla
目前由root拥有。
我已经找到了许多文章(在这个论坛和其他地方)如何为文件做到这一点,但我找不到一种方法来完成整个文件夹。
最佳解决思路
使用chown
更改所有权,并使用chmod
更改权限。
正如PawełKarpiński所说,使用-R选项也可以为目录内的所有文件应用权限。
请注意,这两个命令也适用于目录。 -R选项使它们也更改目录内所有文件和目录的权限。
例如
sudo chown -R username:group directory
将改变directory
和directory
本身内的所有文件和目录的所有权(用户和组)。
sudo chown username:group directory
只会更改文件夹directory
的权限,但会将文件和文件夹留在目录中。
正如enzotib提到的,您需要使用sudo
将所有权从根改为自己。
编辑:
请注意,如果您使用chown <user>: <file>
(请注意left-out组),它将使用该用户的默认组。
如果你只想改变组,你可以使用:
chown :<group> <file>
次佳解决思路
让当前用户拥有文件夹内的所有内容(以及文件夹本身):
sudo chown -R $USER ~/.blabla
第三种解决思路
如果你愿意,也可以用GUI来完成。您需要以root身份打开Nautilus才能这样做。按Alt
+ F2
访问”Run Applications”对话框并输入gksu nautilus
接下来,浏览并右键点击您想要修改的文件夹。然后,从上下文菜单中选择”Properties”。您现在可以选择您想要成为该文件夹的”Owner”的用户或组以及您希望授予它们的权限。最后,按“将权限应用于封闭文件”以递归应用更改。
尽管看起来这并不总是适用于深层文件夹树中的某些操作。如果它不起作用,请使用适当的终端命令。
第四种思路
如果它由root拥有,你可以这样做
sudo chown <your username>:<your usergroup> -R <path to>/.blabla
由于./blabla由root拥有,您需要获得root权限才能更改该权限。这就是sudo会做的。 chown命令的-R选项表示:该目录及其中的所有内容递归。
第五种思路
你应该尝试chmod -R