我已经阅读了社区“RootSudo”文档并对这一行感兴趣:
您永远不应该使用普通的 sudo 以 Root 身份启动图形应用程序。
为什么?有什么不同?请提供一个简单的解释,因为我只是一个普通的桌面用户。
在 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
Python虚拟环境用于创建隔离的python环境,避免依赖和版本冲突,也间接处理权限问题。但是在 Ubuntu 中设置和使用它的最简单方法是什么?
我是 Ubuntu 的新手,所以请耐心等待。我pip使用以下命令安装:sudo apt-get -y install python-pip. 然后我使用他们网站上的命令安装了NLTK,即:sudo pip install -U nltk. 但是后来我偶然发现了这个问题,它说我所做的一切都是“坏习惯”。最让我sudo pip印象pip深刻的是,使用本质上是错误的,用力过大可能会损坏操作系统文件。任何人都可以证实这一说法吗?
注意 - 我只使用了sudo因为当我尝试命令时apt-get -y install python-pip它给了我 2 个错误:
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
Run Code Online (Sandbox Code Playgroud) 我读了这个答案,解释说“有时” root 可以在/home/$USER目录中拥有某些东西。
谁能举个例子来证明。当我运行时,当发生非常糟糕的事情时给出一个测试用例
sudo gedit /etc/rc.local
Run Code Online (Sandbox Code Playgroud)
编辑文件并保存。
我在试图帮助 OP 的过程中得到了很多反对意见,并且大量评论说使用 sudo 运行 gedit 是一种犯罪。
谁能举一个真实的例子?
我清楚地解释了为什么这个问题不是重复的。对于链接的问题,没有特定于 gedit 的答案。
重要的是要解释为什么广泛使用sudo gedit是不好的,或者不是真的,等等。
有时我需要编辑/etc. 我知道我可以使用控制台(sudo mv some/file /etc/some/file,sudo nano /etc/some/file)等来做到这一点,但我发现这种方式有点笨拙。你可以说我被宠坏了,但我确实习惯了 Nautilus 和 Gedit 等 GUI 工具。
Ubuntu Mate 或 Mint 等发行版让这一切变得简单:我可以右键单击一个文件夹,然后会出现一个上下文菜单,其中包含“以管理员身份打开”等选项”等选项。从那时起,双击文本文件即可在 gedit 中以提升的权限打开它。
但是,我在 Ubuntu 默认的 Unity 版本中找不到这样的选项:
笔记:
gksudo,它不再有效sudo gedit /etc/whatever,但是 - AFAIK - 使用sudoGUI 工具是非常不明智的有没有办法以提升的权限运行 Nautilus 或 Gedit?