【发布时间】:2014-01-23 17:10:11
【问题描述】:
当我运行这样的脚本时:
ssh -t root@10.10.10.10 '/tmp/somescript.sh'
脚本定义为:
#!/bin/sh
mkdir -p /data/workday/cred
chown -R myuser:myuser /data
su myuser - # <------- NOTICE THIS ! ! ! !
rpm -Uvp --force --nodeps --prefix /data/place /data/RPMs/myrpm.rpm
注意上面的 su 命令。
如果我注释掉 su 命令,脚本会远程运行,然后我的 shell 提示符会返回到我来自的地方(我在上面运行 ssh 命令的同一台服务器)
但保留上面列出的脚本会导致脚本成功完成,但 shell 提示符仍保留在远程服务器上。
我怎样才能防止这种情况发生?确保 rpm 命令的发出者是与 root 不同的用户,只是列出的?
【问题讨论】:
-
不鼓励在多个网站上提出相同的问题:serverfault.com/q/569408/30957