【问题标题】:UNIX - Executing command as root with no sudo/su accessUNIX - 以 root 身份执行命令,没有 sudo/su 访问权限
【发布时间】: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,然后等待适当的响应,然后执行您的其他命令它很难看,但是您可以通过这种方式自动执行任何外壳程序

标签: linux unix ssh


【解决方案1】:

在一行中执行它们。您可以像这样使用 goto root 管道(|)任何命令

goto root | some command

由于 shell 没有完成当前操作,某些命令将以 root 权限执行。

【讨论】:

  • 我最初确实尝试过,但它只是挂起。什么也没发生,我不得不中止。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-10
  • 1970-01-01
  • 1970-01-01
  • 2012-05-03
  • 2014-09-28
  • 1970-01-01
相关资源
最近更新 更多