我正在尝试更改当前目录中某些文件(和目录)的所有权和权限。我试过这个:
chown username:groupname .
Run Code Online (Sandbox Code Playgroud)
...期望它会影响当前目录中的所有文件,而只会影响我所在的目录(这与我想要做的相反)。我想在所有文件上更改它而不影响我所在的当前目录。
如何 chown 和 chmod 当前目录中的所有文件?
我有一个/home/samantha/folder要与用户共享的文件夹tom。他可以读/写文件夹。我怎么做?
chown不会这样做,因为我仍然希望能够成为该文件夹的所有者。我也不知道如何做到这一点chmod。
如何递归执行chmod或chown隐藏文件?
sudo chmod -R 775 * 不适用于隐藏文件。
同样的事情也适用于sudo chown -R user:group.
我需要wget一些东西(在 cwd 中产生一个压缩文件),然后我必须提取它,然后做一些复制/移动/修改的事情,也许最后执行一个脚本(从下载的存档)。
现在,所有这些任务直接(wget、提取等)或间接(运行脚本)都会导致创建文件和目录(都在当前工作目录中)。我做所有这些事情root(无法与最终的所需用户一起做)。
问题是:在进程中创建的任何东西都归 root 或 sudo 用户所有。当我完成(有时在中途)时,我必须发出一系列chmod和chown命令来使事情正确。
现在,如果能以某种方式告诉系统“从现在起,当我以 root 用户身份发出命令时创建的任何文件或目录,您将创建具有这样那样的所有权和权限”,那就太好了。
来自 chown(2):
只有特权进程(Linux:具有 CAP_CHOWN 功能的进程)可以更改文件的所有者。文件的所有者可以将文件的组更改为该所有者是其成员的任何组。特权进程(Linux:带有 CAP_CHOWN)可以任意更改组。
这个限制的原因是什么?为什么非特权用户无法更改其拥有的文件的文件所有权(即没有 /etc/shadow)?
$ touch blah
$ chown root:root blah
chown: changing ownership of `blah': Operation not permitted
Run Code Online (Sandbox Code Playgroud) 试图让我的传输守护程序从保管箱文件夹中提取文件,以使远程启动更容易(这是一个无头系统)。
据我所知,settings.json 文件符合预期,但我放在文件夹中的文件都没有被提取。
我已经检查过 Dropbox 是否正确同步。
这是整个 settings.json 文件,但相关行包含在下面:
"watch-dir": "/home/john/Dropbox/torrents",
"watch-dir-enabled": true
Run Code Online (Sandbox Code Playgroud)
更新
这似乎是一个权限问题。来自 /var/log/syslog:
Unable to watch "/home/john/Dropbox/torrents": Permission denied (watch.c:79)
Run Code Online (Sandbox Code Playgroud)
我尝试停止守护进程 -> sudo service transmission-daemon stop-> 使用 chown 更改文件夹的权限 -> sudo chown -R john /home/john/Dropbox/torrents-> 重新启动守护进程 ->sudo service transmission-daemon start
相同的结果,但是
更新 2
该文件夹的权限是:
drwsrwsrwx 2 john debian-transmission 4096 2012-04-09 19:40
Run Code Online (Sandbox Code Playgroud) 我在 有一个文件夹/home/www/,所有者是www,它是www-group 的一部分。我有另一个用户,john,是该john组的一部分。我怎样才能chown /home/www/让它www和和都可以写john?谢谢
对单个文件或目录有什么影响chown nobody:nogroup,对目录中的文件有什么影响?
我应该如何解决这个问题?
Tue Oct 31 21:52:56 mona@dhcp-wifi-8021x-155-41-82-88:~$ brew update && brew upgrade && brew cleanup
Error: /usr/local is not writable. You should change the
ownership and permissions of /usr/local back to your
user account:
sudo chown -R $(whoami) /usr/local
Wed Nov 01 20:41:30 mona@dhcp-wifi-8021x-155-41-82-88:~$ sudo chown -R $(whoami) /usr/local
Password:
chown: /usr/local: Operation not permitted
Run Code Online (Sandbox Code Playgroud)
系统信息:
Wed Nov 01 20:42:36 mona@dhcp-wifi-8021x-155-41-82-88:~$ uname -a
Darwin dhcp-wifi-8021x-155-41-53-197.bu.edu 17.0.0 Darwin Kernel Version 17.0.0: Thu Aug 24 21:48:19 PDT 2017; root:xnu-4570.1.46~2/RELEASE_X86_64 x86_64
Run Code Online (Sandbox Code Playgroud)
和
Wed Nov …Run Code Online (Sandbox Code Playgroud) 每次我在 Linux 中创建一个新文件或文件夹时,它都可以由我自己而不是组来 r/w 访问。我想更改我的系统设置,以便该组可以自动访问每个新文件或文件夹。有吗?
chown ×10
linux ×8
chmod ×5
permissions ×5
unix ×2
debian ×1
homebrew ×1
macos ×1
macos-sierra ×1
ownership ×1
root ×1
transmission ×1
ubuntu ×1