“chmod g+s”和“chmod +s”有什么区别

“chmod g+s”和“chmod +s”有什么区别

我的用户已经在 CentOS 的“wheel”组中,并且“ping”命令不起作用:

ping: socket: Operation not permitted

有关使用“chmod +s”进行“ping”的指南:
https://github.com/MichaIng/DietPi/issues/1012#issuecomment-532840857

但是,我看到另一个命令“chmod g+s”,它与“chmod +s”有何不同?

答案1

chmod +s两个都UID 和 GID 位,而chmod g+s仅设置 GID 位(并且chmod u+s仅设置 UID)。

UID和GID位让程序运行为所有者和/或所有者的组 - 而不是实际启动它的用户和组。例如,程序可能始终像由 root 启动一样运行。

假设您有一个所有权为 root:adm 的文件... chmod g+s将使程序能够访问某些日志(不好?)... chmod +s此外还会让程序以完全 root 权限运行(更糟糕!)。

相关内容