我有一个带有启动脚本的系统,该脚本启动多个应用程序,每个应用程序都在其正确的用户和组下。初始化脚本检查每个用户的主目录并查找应用程序初始化脚本(/home/user1/init.sh),如果找到,它将运行以下命令:
/bin/su -c "/home/user1/init.sh start" - user1
我在 init 脚本的开头添加了一个“whoami”命令,但它失败并显示错误:whoami - unknown user id XXXX
我在命令sleep 5
之前添加了一个命令whoami
,我得到了user1
。
这种行为的解释是什么?我该如何解决它?