[英]rundeck - switch to root user in job script
通过终端登录,我可以切换到root用户身份:
ubuntu@ip-10-0-0-70:~$ sudo -s
root@ip-10-0-0-70:~# whoami
root
因此,我在rundeck中使用以下命令创建了一个作业脚本:
whoami;
echo "1st step";
sudo -s;
echo "2nd step";
当我运行它时,它会打印:
ubuntu
1st step
打印“第一步”后,它将永远卡住。 sudo -s
命令似乎有问题。
sudo -i
但还是发生了同样的情况 sudo su - root
但同样的情况 有任何想法在rundeck脚本中切换到root吗?
这是预期的行为。 您正在通过'sudo -s'运行shell,然后不离开/退出它! 因此,它永远等待着不会出现的事情。
您可能可以将“ sudo”添加为脚本的“高级”选项(其中显示“使用解释器或前缀运行脚本。例如:sudo,时间:”)。 但是它将以root身份运行整个脚本。 如果只希望以root用户身份运行特定命令,则只需在命令前加上sudo即可:
sudo "enter_your_command_to_be_run_as_root_here"
输入以Sudo为前缀的命令将在大多数linux发行版中产生以下错误。
sudo: sorry, you must have a tty to run sudo
您可以通过运行'visudo'并注释掉默认行或从默认行中删除'requiretty'来启用不带tty的sudo。
详细信息可以在这里找到:
http://www.cyberciti.biz/faq/linux-unix-bsd-sudo-sorry-you-must-haveattytorun/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.