相关疑难解决方法(0)

如何在没有密码提示的情况下以 root 身份运行特定程序?

我需要在没有密码的情况下以 sudo 的形式运行一些东西,所以我使用visudo并将其添加到我的sudoers文件中:

MYUSERNAME ALL = NOPASSWD: /path/to/my/program
Run Code Online (Sandbox Code Playgroud)

然后我试了一下:

$ sudo /path/to/my/program
[sudo] password for MYUSERNAME: 
Run Code Online (Sandbox Code Playgroud)

为什么它要求输入密码?如何在不要求密码的情况下以非 root 用户身份以 root 身份运行/使用命令?

sudo

205
推荐指数
6
解决办法
45万
查看次数

是否有充分的理由运行 sudo su?

要在禁用 root 帐户的计算机上启动 root shell,您可以运行以下命令之一:

  • sudo -i: 运行交互式登录 shell(读取/root/.bashrc/root/.profile
  • sudo -s: 运行一个非登录的交互式 shell(读取/root/.bashrc

在 Ubuntu 世界中,我经常看到sudo su建议是获取 root shell 的一种方式。为什么要运行两个单独的命令呢?据我所知,sudo -i等效于sudo su -并且sudo -ssudo su.

唯一的区别似乎是(比较sudo -i左侧和sudo su -右侧):

meld 比较“sudo -i”和“sudo su -”的屏幕截图

并比较sudo -s(左)和sudo su(右):

meld 比较“sudo -s”和“sudo su”的屏幕截图

主要区别(忽略SUDO_foo变量 和LS_COLORS)似乎是版本中的XDG_foo系统变量sudo su

是否有任何情况下这种差异需要使用相当不雅的sudo su?我可以安全地告诉人们(就像我经常这样)跑步没有任何意义sudo su还是我错过了什么?

shell su sudo environment-variables

86
推荐指数
2
解决办法
2万
查看次数

标签 统计

sudo ×2

environment-variables ×1

shell ×1

su ×1