什么是默认root密码?

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

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

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

如何为/root目录中安装的软件创建启动器 ?

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

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

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

 sudo -i 

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

 gksu nautilus 

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

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

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

 sudo passwd root 

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

有关更多信息,请参阅RootSudo – 社区Ubuntu文档 。

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

我以前回答过类似的问题 。

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

使用sudo

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

任何拥有“sudo”权限的人都可以通过预先挂起的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惯例,让你知道有另一种选择。