使用sudo有什么问题?


37

这里的评论中我被告知sudo应该避免不必要的使用。尽管在特定情况下不需要它,但我认为使用它没有任何危害。

我认为cat以root用户身份执行琐碎程序时sudo,碰到会以某种方式损害系统安全性的错误的总体风险非常低。

因此,除了再输入4个字符和一个空格外,是否有人可以指出可能的含义?


12
“请注意,如果我可以让您通过询问来“说出话”,那么您的系统存在严重的安全问题,应该调查一下。(由Paul Vixie提供,vixie-cron 3.0.1安装说明)

8
社区维基还说:“您可能输入错误的命令并破坏系统”
Pandya 2014年

3
在写这个问题时,我无意间忘记了意识不清或完全愚蠢,对此表示抱歉。作为14年以来一直使用Linux的人,对我来说似乎很明显,当使用sudo或以root身份执行命令时,您必须格外小心,实际上要知道自己在做什么并检查所输入的内容。我想删除该问题,但是我知道此问题/解答会帮助经验较少的用户,因此我将其保留下来。
1


5
sudo rm -rf /<accidental enter>拿图片吗
jpmc26 2014年

Answers:


70

一的风险错字是不是一个错误的风险更大。

获得的习惯危险“它不工作,坚持sudo就可以了!” 比发生错误的风险高得多。

作为一名系统管理员,他看到人们执行sudo不需要它们的各种随机命令,因此我始终警告不要过多使用sudo

虽然cat没有害处,但它鼓励的习惯是。


8
@BenCrowell关闭(但sudo不适用于重定向)。
muru

13
仅仅添加的习惯sudo确实是非常危险的。而是应该停下来问“为什么在这里我需要sudo”?而且,如果您不知道很好的理由,则很可能您在命令中犯了其他错误。仅仅添加使错误消息消失所需的一切,就会导致您遇到这样的错误:serverfault.com/questions/587102/…(我最喜欢的评论是问“您怎么甚至不小心键入--no-preserve-root ?”)
kasperd 2014年

22
svn update。埃格冲突。我知道。sudo svn update。我实际上已经看到了……
蜘蛛侠鲍里斯(Boris the Spider)

8
我不使用Subversion,但我猜想使用类似的东西sudo svn update也会完全搞乱权限-使您处于比开始时更糟糕的状态。
daboross 2014年

5
@DaboRoss我认为应该将其包含在@muru的答案中,因为这是使用的陷阱之一sudo:您可能最终创建只能通过sudo再次调用才能访问的文件。
桑契斯(Sanchises),2014年

15

我认为还有一个尚未提及的问题:sudo状态是为shell缓存的,默认值为15分钟。这意味着您不必在接下来的15分钟内提供密码即可执行潜在的危险命令。

我认为我们所有人都可能会想到由此引起的或多或少的安全性问题:利用此漏洞或忘记与随机的人或同事锁定屏幕的未知软件错误会浮现在脑海。

这确实是我sudo在不需要或即使必须使用时不使用的主要原因,因为我在完成sudo工作后经常关闭shell 。


1
这种风险可以通过使用来缓解tty_tickets选项sudoerssudo --remove-timestamp
恢复莫妮卡-M.Schröder2014年

1
@MartinSchröder我已经考虑tty_tickets到了。但是你可以设定timestamp_timeout。这就是为什么我写“默认”的原因。我敢肯定,大多数用户将永远不会更改任何这些选项,但这当然是我的推测。
musiKk 2014年

9

sudo在Linux上过度使用等效于Windows旧习惯,即在Administrator帐户下运行所有​​内容。已经讨论并批评了一点,因此您可以阅读所有有关为何不应该以管理员身份运行Windows计算机的文章,并且每一点都适用sudo于Linux上的惯常使用。


4

好吧,这只是因为您可能不小心弄乱了文件系统的敏感部分,给自己造成了很多麻烦小心是永远不够的,所以最好不要使自己遭受不必要的危险


-1

当您使用Sudo进行任何操作时,这意味着您拥有全部权限,即root访问有时会变得非常危险,如果无意中以root权限运行的应用程序可能会执行某些错误操作,从而导致系统崩溃。操作系统损坏。无论如何,对于Cat来说,root用户就可以了。


可以将sudo配置为提供有限的访问权限。默认情况下,它提供等效的完全根访问权限,但不是必需的。
flickerfly 2014年

-1

不必要地使用Sudo没错。Sudo (在Ubuntu上是默认配置/目的)提供了完全提升的特权。如果已授予用户这些特权,则可以按照他的意愿(包括不必要地!)进行锻炼。但是,在不需要时使用Sudo会增加风险。这是不必要的风险。一个简单的错字可能会变成灾难,这就是为什么大多数人在不需要时避免使用提升的权限的原因。但是,仅因为避免不必要的Sudo使用是一种普遍做法,但这并不意味着采用其他方法是错误的。 须藤的心!

在AskUbuntu的上下文中,我对您被指示避免不必要的Sudo使用并不感到惊讶。该站点的目的是允许专家提出问题并获得专家的答复,但实际上,这里有很多新手用户,他们的知识足以使自己陷入困境。海报试图保护这些用户免受自身侵害是很常见的。在新手用户中,Sudo滥用很常见,因为他们并不真正了解是什么或做什么,也无需花时间学习。同样,该站点以产生高质量内容而自豪。不必要的命令效率低下,因此降低了帖子的质量。


1
不好的建议: 非常小心地使用sudo!如果您需要sudo特权,通常意味着您在做危险的事情……
Fabby

2
@Fabby OP并不建议一个人不安全地使用Sudo,而是指出不必要的使用并不等同于不安全的使用。
Hypno Toad

2
@Rinzwind使用导弹杀死一只蚂蚁没有任何问题,只要您注意不要在此过程中炸毁其他任何东西即可。不必要不是不安全的代名词。
Hypno Toad


2
@HypnoToad虽然我本人避免使用Sudo(如果我不需要root权限),并且鼓励其他人也这样做,但您是正确的。不必要和不安全不是同一回事。只要您安全地使用Sudo,对于您执行的每个任务都不会出错。但是正如我所说,我不建议任何人这样做,因为这会使您的系统面临不必要的风险。
Dean Z
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.