【发布时间】:2014-11-17 16:16:07
【问题描述】:
我们正在处理的 unix 服务器上没有 sudo 或 su 访问权限。
“切换”到 root 用户并在其下操作的唯一方法是发出“goto root”命令(不要问!)。
我要做的是通过单个命令行以 root 用户身份发出/执行命令。
我意识到可以这样做:
1.转到根目录
2."执行随机命令"
...但是,我的问题是,我怎样才能在一个语句中做到这一点?如果我有 sudo/su 访问权限,我可以这样做:
sudo "命令"
我打算在单个命令行上执行此操作的原因如下:
我正在远程登录到 unix 服务器,我以我自己的 unix 用户身份登录到服务器。我想以 root 身份发出命令。如果我发出 2 个语句,其中第一个语句是 goto root,那么我的第二个语句将在我自己的用户而不是 root 下执行。我不确定我是否清楚这一点,所以如果有人需要更多澄清,我会非常乐意。
【问题讨论】:
-
我能想到的唯一方法是使用
expect脚本。有点可怕,因为如果你这样做,你会在脚本中嵌入 root 密码。 -
您尝试
goto root visudo并添加一些 sudoers(5) 规则吗? sudo/su 在技术上是不可能的还是你有义务不使用它? -
@camelccc 问题是我没有root密码
-
@MichałŠrajer 从技术上讲,我不能使用 sudo/su。根本无法供我使用。
-
@Brams 如果您可以从可以使用的命令中获得根控制台,则可以执行 goto root,然后等待适当的响应,然后执行您的其他命令它很难看,但是您可以通过这种方式自动执行任何外壳程序