如何在Linux上管理两个用户帐户之间的文件或文件夹权限
有两个用户:用户如何在Linux上管理两个用户帐户之间的文件或文件夹权限,linux,bash,permissions,Linux,Bash,Permissions,有两个用户:用户jenkins和用户nginx(两者实际上都是服务帐户) 首先,用户jenkins在/usr/share/nginx/html 文件夹。然后下载一些html文件,并将其保存在此文件夹中 然后用户nginx尝试打开其中一个html文件,并获得权限被拒绝错误 为了解决此问题,我首先检查了用户所属的组: 对jenkins进行分组并返回:jenkins:jenkins 然后我检查了用户nginx被分配到的组。它是nginx:nginx 我检查了创建为/usr/share/nginx/ht
jenkins
和用户nginx
(两者实际上都是服务帐户)
首先,用户jenkins
在/usr/share/nginx/html
文件夹。然后下载一些html
文件,并将其保存在此文件夹中
然后用户nginx
尝试打开其中一个html文件,并获得权限被拒绝
错误
为了解决此问题,我首先检查了用户所属的组:
对jenkins进行分组
并返回:jenkins:jenkins
然后我检查了用户nginx
被分配到的组。它是nginx:nginx
我检查了创建为/usr/share/nginx/html/frontend
的frontend
文件夹jenkins
的权限,它被自动分配给用户jenkins
和组jenkins
。通过使用chown
命令更改此文件夹的权限,我发现为了让nginx
用户能够读取这些文件,需要将文件夹设置为nginx:nginx
所有权
我还尝试创建一个新的组workers
,然后将jenkins
和nginx
用户分配给它
sudo groupadd workers
sudo usermod -aG workers jenkins
sudo usermod -aG workers nginx
但不幸的是,这并没有解决问题jenkins
用户继续创建与以前拥有相同所有权的文件夹jenkins:jenkins
有没有办法让两个用户都能完全访问其中一个用户创建的文件夹?我该怎么办
附笔。
下面是一些额外的信息。
frontend
文件夹由jenkins
用户在/usr/share/nginx/html/
中创建。以下是一些细节:
sudo namei -om /usr/share/nginx/html/
然后,在创建frontend
文件夹后,我运行
sudo namei -om /usr/share/nginx/html/
要检查其所有权,请执行以下操作:
f: /usr/share/nginx/html/frontend
dr-xr-xr-x root root /
drwxr-xr-x root root usr
drwxr-xr-x root root share
drwxr-xr-x nginx jenkins nginx
drwxrwxrwx nginx nginx html
drwxr-xr-x jenkins jenkins frontend
答:稍后编辑:
下面是使一个用户创建的单个文件夹可供另一个用户访问所需步骤的分解
jenkins
用户使用默认的jenkins:jenkins
所有权创建一个文件夹后,使用jenkins
用户更改文件夹的所有权,并使用jenkins:newgroup
(请注意,jenkins
将无法将文件夹的组所有权设置为newgroup
,除非它是newgroup
的成员):jenkin
用户将读写权限分配给所有者用户(jenkins
)和所有者组(newgroup
):
这将允许双方访问。您说您在打开文件时出现权限错误,但您只向我们显示目录权限。文件权限如何?您说您在打开文件时出现权限错误,但您只向我们显示目录权限。文件权限如何?
chown-Rjenkins:groupname两个帐户共享/usr/share/nginx/html/frontend
,然后chmod-R 775/usr/share/nginx/html/frontend
递归运行良好。chown-R jenkins:groupname两个帐户共享/usr/share/nginx/html/frontend
,然后chmod-R 775/usr/share/nginx/html/frontend>递归运行良好。
f: /usr/share/nginx/html/frontend
dr-xr-xr-x root root /
drwxr-xr-x root root usr
drwxr-xr-x root root share
drwxr-xr-x nginx jenkins nginx
drwxrwxrwx nginx nginx html
drwxr-xr-x jenkins jenkins frontend
sudo groupadd newgroup
sudo usermod -aG jenkins
sudo usermod -aG nginx
chown -R jenkins:newgroup /path/to/folder/created/by/jenkins/
chmod -R 775 /path/to/folder/created/by/jenkins/