什么是默认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,必须使用exit
或logout
。 这可能导致人们在超级用户shell中停留的时间超过了必要的时间,因为它比退出和以后再次使用更方便。
获得root shell
使用sudo,您仍然可以使用以下命令打开永久(交互式)超级用户shell:
sudo su
…这仍然可以在没有任何root密码的情况下完成,因为sudo
为su
命令提供了超级用户权限。
同样地,对于登录shell,您可以使用sudo su -
甚至是sudo -i
而不是su -
。
但是,在这样做时,您只需要知道您是每个命令的超级用户。 这是一个很好的安全原则,不能让超级用户保持超过必要的时间,只是为了减少意外造成系统损坏的可能性(没有它,你只能损坏用户拥有的文件)。
只是为了澄清一下,如果你选择的话,你可以给root用户一个密码,允许以root身份登录,如果你特意想这样做的话。 我只是想让你知道更喜欢sudo
的Ubuntu惯例,让你知道有另一种选择。