首页/系统/Linux 运维命令速查/场景:团队共享目录权限设计
本包目录(613 条)
文件与目录76 条文本处理77 条网络命令82 条进程与作业69 条磁盘与文件系统51 条
用户与权限44 条
日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

场景:团队共享目录权限设计

多人协作目录的经典需求:组内可写、新文件属组正确、互不误删;用 SGID + 默认 ACL + umask 三板斧落地。

Linux 运维命令速查系统更新于 2026-10-12
场景团队共享目录协作
方案SGID + setfacl 默认 ACL
验证两个账号互测读写)

一次性配置

一次性配置
sudo groupadd devteam
sudo usermod -aG devteam alice; sudo usermod -aG devteam bob

sudo mkdir -p /data/shared
sudo chown root:devteam /data/shared
sudo chmod 2775 /data/shared                 # SGID:新文件继承 devteam 组

# 默认 ACL:新文件/目录自动带上组权限
sudo setfacl -m d:g:devteam:rwx /data/shared
sudo setfacl -m d:o::- /data/shared

验证

验证
sudo -u alice touch /data/shared/a.txt
ls -l /data/shared/a.txt        # 组应为 devteam
sudo -u bob touch /data/shared/b.txt   # bob 应能写入
要防「互删」用粘滞位(1777)或把删除权限收窄;共享目录里 umask 002 常与 SGID 配合使用。

易错点

  • 只改已有文件 ACL 不加 d:(默认)ACL:新文件永远不带权限,问题反复出现
  • SGID 只保证目录内继承组,子目录被挪出目录树后组继承关系消失

数据来源与参考

  • man 1 setfacl
  • man 1 chmod(2 位 SGID)
  • man 5 acl

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌