标签: sudo

sudo 删除后可以重新安装吗?

这似乎是一个先有鸡还是先有蛋的问题。最常见的任务sudo是安装和删除软件。

sudo apt-get purge <appname>
Run Code Online (Sandbox Code Playgroud)

sudo本身是可以去除的。

sudo apt-get purge sudo # Do not run this command on production computers!
Run Code Online (Sandbox Code Playgroud)

这就是乐趣所在

ubuntu@ubuntu:~$ sudo
bash: /usr/bin/sudo: No such file or directory
Run Code Online (Sandbox Code Playgroud)

虽然很明显没有人会清除sudo(除了我之外),但有人可能会被愚弄运行此命令(不是直接,以十六进制模式,或其他任何名称),或者有人可以伪装成技术大师进行SSH和做的烂摊子

那么有没有办法重新安装sudo?

sudo software-installation

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

怎么退出root用户?

我刚刚按照http://www.wikihow.com/Become-Root-in-Ubuntu 的步骤获得了 root 访问权限。我的提示从$变为#签名,表明我有 root 访问权限。现在我已经退出或注销或禁用 root 访问。为此,我尝试了 sudo passwd -dl root. 然后它显示消息:

passwd: password expiry information changed.
Run Code Online (Sandbox Code Playgroud)

但我仍然拥有 root 访问权限,而且我仍然拥有#符号而不是$.

root@hostname:~#仍然出现而不是xyz@hostname:~$

root sudo logout

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

使用“sudo”运行时的环境变量

作为我的问题的例子,我的~/.bashrc文件包含以下几行:

export LD_LIBRARY_PATH=/opt/intel/mkl/lib/ia32:$LD_LIBRARY_PATH
export LD_PRELOAD=/opt/intel/mkl/lib/ia32/libmkl_core.so
Run Code Online (Sandbox Code Playgroud)

这样 Numpy (Python) 就可以找到它需要运行的库,因为它是使用 MKL 和英特尔编译器构建的。这个工作流程不是最好的,但这是另一回事。

我的问题是~/.bashrc当我使用“sudo”(但不是 root)运行程序时,如何传递任意变量(如 中的变量)?

目前,如果我运行:

sudo python -c "import numpy"
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

ImportError: libimf.so: cannot open shared object file: No such file or directory*
Run Code Online (Sandbox Code Playgroud)

一些建议作为sudo -isudo -E不会改变这里的任何内容。


编辑:

我无法回答我的问题(分数不够:D)但我会在这里发表评论,希望还有其他 Linux 新手对sudo陷阱感到疑惑。

[只是暂时的!] 这对我有用(~/.bashrc):

alias sudo='sudo env PATH=$PATH VAR1=SOME_VALUE VAR2=SOME_VALUE...'
Run Code Online (Sandbox Code Playgroud)

command-line sudo environment-variables

61
推荐指数
4
解决办法
13万
查看次数

从终端关闭而不输入密码?

我有桌面版的 Ubuntu。

我喜欢终端,所以我更喜欢用shutdown命令关闭我的电脑。

但是,当我输入shutdown now它时,它会提示我输入密码。有什么办法可以在不输入密码的情况下使用此命令关闭我的计算机?

command-line sudo shutdown

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

事件真正报告给谁,sudo 用户如何访问报告?

当我的非 sudo 帐户尝试运行 sudo 命令时:

nonsudo@Hairy14:$ sudo hello
Run Code Online (Sandbox Code Playgroud)

报道了一个事件:

[sudo] password for nonsudo: 
nonsudo is not in the sudoers file.  This incident will be reported.
Run Code Online (Sandbox Code Playgroud)

我猜这不是真正的圣诞老人,那么它向谁(或在哪里)报告以及我如何访问它?

事件

(来自xkcd,作者:兰德尔·门罗)

sudo

56
推荐指数
1
解决办法
3万
查看次数

如何在无需输入密码的情况下 sudo?

我正在尝试在没有密码的情况下设置 sudo,但仍然提示我输入密码,我使用的是 ubuntu,这是 sudoers 配置文件中的相关行:

gandalf ALL=(ALL:ALL) NOPASSWD: ALL
Run Code Online (Sandbox Code Playgroud)

sudo

54
推荐指数
3
解决办法
10万
查看次数

带有 sudo 的终端命令需要很长时间

我注意到当我执行需要密码的命令时,终端最近变得太慢了。显示 [sudo] 密码需要几秒钟...

我在 Ubuntu 13.04 64 位上使用戴尔 XPS 开发人员版(i7,8G RAM)。

command-line sudo

53
推荐指数
3
解决办法
4万
查看次数

gksu: Gtk-WARNING **: 无法打开显示: :0

突然间 gksu 停止为我工作:

~$ gksu gparted

(gpartedbin:24252): Gtk-WARNING **: cannot open display: :0
Run Code Online (Sandbox Code Playgroud)

同样的情况发生在gparted-pkexec

~$ gparted-pkexec 
No protocol specified

(gpartedbin:25454): Gtk-WARNING **: cannot open display: :0
Run Code Online (Sandbox Code Playgroud)

什么可能导致这种情况?

我没有通过 SSH 或 VNC 运行它。这是普通终端窗口中的localhost 。

xorg sudo gtk gksu pkexec

52
推荐指数
3
解决办法
21万
查看次数

如何通过 sudoers 授予 nopasswd 访问多个命令的权限?

以下是我所知道的:

我必须在sudoers文件中添加以下行以授予用户执行特定任务的权限。

user_name ALL=NOPASSWD: /usr/bin/apt-get install
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我想授予此用户访问权限以重新启动 2 个具有所有安装权限的服务(即ApacheMySQL)。

使用上面的行,我已经给了他所有的安装权限,现在我必须再添加两次相同的行来授予服务权限吗?或者我可以在同一行中添加这些命令,用逗号或其他东西分隔吗?

sudo administration users restricted-access

51
推荐指数
3
解决办法
16万
查看次数

在 /etc/sudoers 中添加 NOPASSWD 不起作用

14.04 在这里。我通过 SSH 连接到我的机器,将以下行添加到/etc/sudoers

myuser   ALL=NOPASSWD: ALL
Run Code Online (Sandbox Code Playgroud)

然后尝试运行:

sudo mkdir /etc/blah
Run Code Online (Sandbox Code Playgroud)

...我被要求输入密码。为什么?!?

希望这样的操作时,要问我的密码。请注意,当我运行时,ls -ltr /我得到:

drwxr-xr-x 94 root root  4096 Jul 30 13:28 etc
Run Code Online (Sandbox Code Playgroud)

但是我认为这并不重要,因为我已经将自己设置为“sudoer”,对吗?

更重要的是,我需要做什么才能以sudo mkdir /etc/blah当前用户 ( myuser) 的身份运行而不会被要求输入密码?

这是我的整个/etc/sudoers文件:

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for …
Run Code Online (Sandbox Code Playgroud)

root sudo password

51
推荐指数
3
解决办法
13万
查看次数