首页 > 解决方案 > 即使 setuid 位打开,euid 也不会改变

问题描述

我有这个简单的 bash 脚本,文件名为myscipt.sh

echo uid: $UID, euid: $EUID

脚本的文件权限是

-rwsr-xr-x 1 john john 203 Sep 24 10:02 myscript.sh*

(请注意 setuid 位已打开)

我希望文件的 euid 在执行时更改为 john 的 uid。如果文件的所有者是 john,文件的 euid 不应该更改为 john 的 uid 吗?但是当我运行脚本时sudo ./myscript.sh,我得到

uid: 0, euid: 0

为什么是这样?以及如何解决它?

标签: bashpermissions

解决方案


推荐阅读