【发布时间】:2017-03-03 14:22:41
【问题描述】:
如果我正在执行多个这样的命令
'sudo -s && cd /apps/10.0.10.200/wso2am-1.7.0/repository/logs && tail wso2carbon.log'
但是当我用我的用户登录服务器时,我必须通过执行以下命令来获得 root 权限
sudo -s
然后我还必须重新输入密码。 所以我的问题是当我执行上面的命令时,我怎样才能传递我的密码。因为我必须执行命令并等到它要求输入密码。 请指导我解决。 这是我的代码。
include('Net/SSH2.php');
$ssh = new Net_SSH2('10.0.10.200');
$ssh->login('xxxxx', 'xxxx') or die("Login failed");
echo $ssh->exec('sudo -s && cd /apps/10.0.10.200/wso2am-1.7.0/repository/logs && tail wso2carbon.log');
【问题讨论】:
-
这听起来是个非常糟糕的主意。你到底需要什么root权限?如果只是为了读取日志,请更改该文件的所有权或权限。
-
但问题是,它超出了我的控制范围。所以唯一的方法是用我的用户登录服务器并用 sudo-s 更改用户角色。那么我该如何解决这个问题