一个目录拥有多个用户可访问权限

问题:

root@localhost \~# id nginx

uid=1003(nginx) gid=1003(nginx) groups=1003(nginx)

root@localhost \~# id mml3

uid=1002(mml3) gid=1002(mml3) groups=1002(mml3)

我要让/home/images这个目录,nginx用户和mml3用户都可以访问,该怎么做


答案

要使 nginx 用户和 mml3 用户都能访问 /home/images 这个目录,你需要确保以下几点:

  1. 目录权限:确保目录的权限允许所属组和其他用户访问。

  2. 用户组 :一个简单的方法是将 nginx 用户和 mml3 用户都添加到一个共同的组,并为此组设置对 /home/images 的访问权限。

以下是具体步骤:

  1. 创建一个新的组 :例如,我们可以创建一个名为 webaccess 的组。

    bash 复制代码
    sudo groupadd webaccess
  2. nginxmml3 用户都添加到 webaccess

    bash 复制代码
    sudo usermod -aG webaccess nginx
    sudo usermod -aG webaccess mml3
  3. 更改 /home/images 目录的组,并设置正确的权限:

    bash 复制代码
    sudo chown :webaccess /home/images
  4. 设置目录权限:你可能希望设置 775 权限,这样目录的所有者和组都有读、写和执行权限,而其他用户只有读和执行权限。

    bash 复制代码
    sudo chmod 775 /home/images
  5. 如果 /home/images 目录内有已经存在的文件和子目录,并且你希望它们也具有相同的权限和组设置,你可以递归地应用上述更改:

    bash 复制代码
    sudo chown -R :webaccess /home/images
    sudo chmod -R 775 /home/images

完成上述步骤后,nginxmml3 用户都应该能够访问 /home/images 目录了。

问题:

这个是sudo usermod -aG webaccess nginx

sudo usermod -aG webaccess mml3

修改还是增加


答案:

这两个命令:

bash 复制代码
sudo usermod -aG webaccess nginx
sudo usermod -aG webaccess mml3

是用来增加用户到一个已存在的组。

在这里,-aG 选项的意思是:

  • -a:表示 "append"(附加),意思是在不删除用户从属于其他任何组的情况下,将用户添加到指定组。
  • -G:指定组名。

所以,这两个命令的作用是将 nginxmml3 这两个用户添加到 webaccess 组,而不会影响他们属于其他的组。

相关推荐
Mr.HeBoYan2 分钟前
DPDK为什么越来越少使用rte_ring?——从Lock-Free到Run-to-Completion,重新理解现代DPDK架构演进(上)
linux·网络·算法·性能优化·架构·dpdk
云栖梦泽1 小时前
从 IMX415 摄像头驱动理解 Media Controller 框架
linux·开发语言·c++·嵌入式硬件
纳兰青华1 小时前
CentOS Stream 9 下载与安装完全指南:为什么它是当前最稳妥的选择?
linux
草邦设计开发团队_媒体资源平台1 小时前
Linux 稳定常驻启动 PHP 队列,服务器重启自动恢复
linux·服务器·php·队列执行
A_humble_scholar2 小时前
Linux(十六)从页表到线程封装:深入理解 Linux 线程的共享、控制与封装
linux
海盗12342 小时前
.NET编码规范03-C#命名规范大全
linux·服务器·.net
WZF-Sang2 小时前
TCP和UDP协议
linux·服务器·网络·c++·学习·tcp/ip·udp
做个文艺程序员2 小时前
Linux第11篇:存储管理——磁盘分区、LVM 与文件系统
linux·运维·服务器
天空'之城3 小时前
Linux 系统编程 14:Reactor 反应堆模式
linux·开发语言·网络编程·reactor 反应堆模式
孫治AllenSun3 小时前
【Linux】服务器设置固定ip
linux·服务器·tcp/ip