当前位置: 首页>>技术教程>>正文


什么是默认root密码?

,

问题描述

我安装了64位的Ubuntu 12.04 LTS(精确穿山甲)。我没有在任何地方为root设置密码。

我刚刚安装了AccuRev SCM软件。它默认安装在/root文件夹下。现在我尝试在该文件夹上做一些事情。我尝试用su切换到root,但我不知道它的密码。

我应该总是使用sudo或获取默认的root密码,如果有的话?

如何为安装在/root目录中的软件创建launcher

最佳解决方案

默认情况下,sudo访问root帐户。

有关该主题的完整讨论以及有关如何设置root密码的信息,请参阅:RootSudo – Community Ubuntu Documentation

有了这个说,你根本不可能需要设置root密码,我建议你使用

sudo -i

或者对于图形应用程序,请使用gksu

gksu nautilus 

次佳解决方案

root的密码未在Ubuntu中设置,这意味着默认情况下禁用root登录。

在Ubuntu安装期间创建的用户帐户与所有sudo功能相关联。您可以将sudo用于在Ubuntu终端中需要root权限的命令。

但是,您可以启用root帐户并为其设置密码。为此,请使用:

sudo passwd root

首先,系统会要求您提供当前用户密码,然后将要求您输入新密码两次(新密码和新密码)作为新的root密码。

有关更多信息,请参阅RootSudo – Community Ubuntu Documentation

第三种解决方案

默认情况下,Ubuntu不会设置root密码,因此您无法以root用户身份登录。相反,您可以使用sudo以超级用户权限执行任务。

我之前回答过similar question

虽然您可以为root帐户创建密码,允许您以root身份使用su登录,但这不是典型的”Ubuntu”处理方式。相反,Ubuntu希望你将使用sudo

使用sudo

Sudo是为人们提供root密码以执行超级用户职责的替代方法。在默认的Ubuntu安装中,默认情况下,安装操作系统的人员将获得”sudo”权限。

任何具有”sudo”权限的人都可以通过pre-pending sudo执行“作为超级用户”的操作。例如,要以超级用户身份运行apt-get dist-upgrade,您可以使用:

sudo apt-get dist-upgrade

默认情况下,sudo会在执行此操作时要求您提供自己的帐户密码。这有助于安全。这会被记住几分钟,所以如果你有一些与sudo有关的任务,它只会在第一次询问你的密码。

您可以在网上阅读有关Ubuntu的教程的任何地方看到sudo的上述用法。这是另一种选择。

su
apt-get dist-upgrade
exit

优点

使用sudo,您可以提前选择哪些用户具有sudo访问权限。他们不需要记住root密码,因为他们使用自己的密码。如果您有多个用户,则可以通过删除其sudo权限来撤消一个用户的超级用户访问权限,而无需更改root密码并通知每个人新密码。您甚至可以选择允许用户使用sudo执行哪些命令,以及禁止该用户使用哪些命令。最后,如果存在安全漏洞,它可以在某些情况下留下更好的审计跟踪,显示哪些用户帐户遭到入侵。

没有root密码会对root帐户造成暴力攻击:如果允许通过SSH登录,则这是相关的。相反,攻击者需要知道本地帐户名称。

Sudo使用超级用户权限执行单个命令变得更容易。使用su,您将永久删除超级用户shell,必须使用exitlogout退出。这可能导致人们在超级用户shell中停留的时间超过了必要的时间,因为它比退出和以后再次使用更方便。

获得root shell

使用sudo,您仍然可以使用以下命令打开永久(交互式)超级用户shell:

sudo su

…这仍然可以在没有任何root密码的情况下完成,因为sudosu命令提供了超级用户权限。

同样,对于登录shell,您可以使用sudo su -甚至sudo -i代替su -

但是,在这样做时,您只需要知道您是每个命令的超级用户。这是一个很好的安全原则,不能让超级用户保持超过必要的时间,只是为了减少意外造成系统损坏的可能性(没有它,你只能损坏用户拥有的文件)。

只是为了澄清一下,如果你选择的话,你可以给root用户一个密码,允许以root身份登录,如果你特意想这样做的话。我只是想让你知道更喜欢sudo的Ubuntu惯例,让你知道有另一种选择。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1754.html,未经允许,请勿转载。