如何在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
    ):
  • 创建目录后,是否可以尝试使用“chgrp”命令

    chgrp groupname目录名

    之后,执行chmod以允许对组进行完全访问

    chmod 775目录名

    这将允许两者访问。

    创建目录后,您可以尝试使用“chgrp”命令吗

    chgrp groupname目录名

    之后,执行chmod以允许对组进行完全访问

    chmod 775目录名


    这将允许双方访问。

    您说您在打开文件时出现权限错误,但您只向我们显示目录权限。文件权限如何?您说您在打开文件时出现权限错误,但您只向我们显示目录权限。文件权限如何?
    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/