繁体   English   中英

在Shell脚本中与非root用户连接后更改root

[英]Changing root after connecting with a non-root user in shell script

我在上课时有个小问题。 我有脚本将安装名为SCCM和TrendMicro的代理。 以sudo特权用户登录后,我想以root用户身份在脚本中运行命令。 我不知道该怎么办。 我尝试了sudo来获取想要root priv的命令。 但是我收到“ sudo:抱歉,您必须有一个tty才能运行sudo”消息。 所以我想用sudo priv登录。 用户然后更改为root并运行所有命令。

注意:我只是添加SCCM安装。 我弄清楚这一点之后,我将在$ SCRIPT中添加TM安装命令。

> #!/bin/bash USERNAME=user HOSTS="host1 host2" 
  SCRIPT="mkdir /tmp/SCCM; wget -O /tmp/SCCM/ccm-Universalx64.tar
> ftp://local/pub/SW/SCCM/ccm-Universalx64.tar; wget -O
> /tmp/SCCM/install ftp://local/pub/SW/SCCM/install; chmod 755
> /tmp/SCCM/*; cd /tmp/SCCM; /tmp/SCCM/install -mp another_host
> -sitecode MGR ccm-Universalx64.tar;  /etc/init.d/ccmexecd stop; /etc/init.d/ccmexecd start" for HOSTNAME in ${HOSTS} ; do
>     ssh -l ${USERNAME} ${HOSTNAME} "${SCRIPT}" 

完成出口

您可以访问要连接的主机的/etc/sudoers吗?

该博客以及Unix&Linux Stack Exchange网站指向将/etc/sudoersDefaults requirettyDefaults !requiretty或者使用-t-tt选项对ssh进行设置,从而在远程端生成伪终端。 当心副作用(有关详细信息,请参见上面列出的第二个链接)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM