当我尝试使用下面给出的shell脚本登录到根用户时,它会引发一个错误:
su: must be run from a terminal
枕(scriptfile.sh
)看起来如下:
su -s <<EOF
echo Now i am root
whoami
EOF
虽然我可以从终端成功地执行su
,但默认情况下它会登录到根用户。
FYI:当我们用su
替换sudo
时,相同的脚本运行良好。我以普通用户的身份运行此脚本,而不是以根用户的身份运行。
错误的可能原因是什么?我如何解决这个问题?
注意:我想在不接触/etc/sudoers
文件的情况下完成它。
发布于 2021-07-01 14:22:22
python -c 'import pty; pty.spawn("/bin/sh")'
echo os.system('/bin/bash')
/bin/sh -i
perl —e 'exec "/bin/sh";'
perl: exec "/bin/sh";
ruby: exec "/bin/sh"
lua: os.execute('/bin/sh')
(From within IRB) exec "/bin/sh"
(From within vi) :!bash
(From within vi) :set shell=/bin/bash:shell
(From within nmap) !sh
发布于 2020-06-22 00:24:03
可以将以下内容添加到您的shell中
export TERM=xterm
https://unix.stackexchange.com/questions/594264
复制相似问题