我已经阅读了社区“RootSudo”文档并对这一行感兴趣:
您永远不应该使用普通的 sudo 以 Root 身份启动图形应用程序。
为什么?有什么不同?请提供一个简单的解释,因为我只是一个普通的桌面用户。
我一直在使用gksudo nautilus和sudo nautilus通过Alt+ F2。
有什么不同?他们看起来非常相似!
在 Ubuntu 19.10 Eoan Ermine 之前的 Ubuntu 版本中,当我使用 运行命令时sudo,该命令会在环境变量中接收我的主目录$HOME。这是我一直期待并警告其他人的行为。如果我想sudo重置$HOME环境变量,使其指向目标用户的主目录而不是我自己的主目录,我必须传递该-H选项(或-i,尽管这样做更多)。
ek@Kip:~$ lsb_release -d
Description: Ubuntu 18.04.3 LTS
ek@Kip:~$ sudo printenv HOME # Shows ek's home, not root's.
/home/ek
ek@Kip:~$ sudo -u as printenv HOME # Shows ek's home, not as's.
/home/ek
ek@Kip:~$ sudo -H printenv HOME # Shows root's home.
/root
ek@Kip:~$ sudo -Hu as printenv HOME # Shows as's home.
/home/as
Run Code Online (Sandbox Code Playgroud)
当我第一次升级到 Ubuntu 19.10 时,我惊讶地发现它 …
sudo environment-variables home-directory history-of-ubuntu 19.10
阅读这些问题和答案:
给我带来了另一个会给该命令的新用户带来问题的问题:
pkexec方便使用?例如,在执行以下操作时:
(在终端中打开文件)
pkexec nano /etc/mysql/my.cnf
Run Code Online (Sandbox Code Playgroud)
(在 GUI 中打开文件)
pkexec gedit /etc/mysql/my.cnf
Run Code Online (Sandbox Code Playgroud)
最后一个得到以下错误:
pkexec must be setuid root
Run Code Online (Sandbox Code Playgroud)
现在这给我带来了以下问题:
如何配置pkexec以避免得到这个?类似于如何sudo/gksu做同样的事情时的行为(他们只要求输入密码)。
如果适用,如何告诉它在第一次将其应用于命令(或如果可配置的情况下包括第一个命令)后不要求输入密码?
如果配置文件不存在,在哪里保存?
是否有用于配置pkexec使用情况的 GUI 应用程序(策略工具包)?
我正在尝试使用sudoedit,但它一直在运行nano编辑器。我首选的编辑器是vim. 我怎样才能使它成为默认值?
查看手册页,man sudoedit我注意到以下内容:
EDITOR Default editor to use in -e (sudoedit) mode if neither SUDO_EDITOR nor VISUAL is set.
SUDO_EDITOR Default editor to use in -e (sudoedit) mode.
VISUAL Default editor to use in -e (sudoedit) mode if SUDO_EDITOR is not set.
Run Code Online (Sandbox Code Playgroud)
所以我已经将它们全部设置为/usr/bin/vim,但sudoedit /etc/hosts仍然使用nano. 我错过了什么吗?
$ EDITOR=/usr/bin/vim
$ VISUAL=/usr/bin/vim
$ SUDO_EDITOR=/usr/bin/vim
$ echo $VISUAL
/usr/bin/vim
$ echo $EDITOR
/usr/bin/vim
$ echo $SUDO_EDITOR
/usr/bin/vim
$ sudoedit …Run Code Online (Sandbox Code Playgroud) 是否存在vi在 Ubuntu 环境中创建、编辑或修改文件的唯一选项的场景?
我的问题基本上是真正知道是否有这样的情况我会被迫使用,vi因为这将是 Ubuntu 生态系统中特定情况下唯一可用的选项。
莫非特殊情况存在,我不知怎么就不能访问其他选项,如nano,pico或简单地用工具发送的信息等cat,sed,tee多?
我认为这更像是一个服务器或云端,因为在桌面上有更多的选择,但我问很多使用终端的人:
有这样的案例吗?
我读了这个答案,解释说“有时” root 可以在/home/$USER目录中拥有某些东西。
谁能举个例子来证明。当我运行时,当发生非常糟糕的事情时给出一个测试用例
sudo gedit /etc/rc.local
Run Code Online (Sandbox Code Playgroud)
编辑文件并保存。
我在试图帮助 OP 的过程中得到了很多反对意见,并且大量评论说使用 sudo 运行 gedit 是一种犯罪。
谁能举一个真实的例子?
我清楚地解释了为什么这个问题不是重复的。对于链接的问题,没有特定于 gedit 的答案。
重要的是要解释为什么广泛使用sudo gedit是不好的,或者不是真的,等等。
我是 Ubuntu 的初学者。谁能告诉我如何编辑配置文件?
这是在 Ubuntu 18.04 LTS 上。提前致谢。