Unix/Linux目录权限: rwx 之外的 s

以前一直不太明白Linux的目录权限当中的 s,今天终于明白了。

例:
名为 files 的目录,所有者为 user1,user1的所在组为 group1,group1对files有写的权限
执行 ls -la 结果如下:
drwxrwxr-x 4 user1 group1 4096 Aug 31 19:17 files

现在想把 group1 改成 apache,于是执行:
chown -R user1:apache files

执行 ls -la 结果如下:
drwxrwxr-x 4 user1 apache 4096 Aug 31 19:17 files

这样有个问题,用user1登陆,在 files 下生成新文件test
ls -a files/test 的结果:
drwxrwxr-x 4 user1 group1 4096 Aug 31 19:17 test

新文件的组还是 group1。

现在想做的是,用户在files下生成新文件的时候,文件的所在组还是用apache。这时候,·s· 派上用场了。

执行以下命令:
chmod -R g+s files

用user1登陆,在 files 下生成新文件 test2
ls -a files/test2 的结果:
drwxrwxr-x 4 user1 apache 4096 Aug 31 19:17 test 2

OK了,这就是想要的结果。

如果对目录下的文件设置默认用户id,只需
chmod -R u+s files

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值