Oracle Solaris 11 x64 root 密码?

Oracle Solaris 11 x64 root 密码?

我在一台电脑上安装了 OS 11 x64,以评估这是否可以成为我的 48TB 家庭存储阵列的新系统。我有一个非常基本的问题:我无法使用安装时创建的管理员密码访问 root。我目前以 admin@solaris 身份登录,但为了配置 zfs 等,我需要 root 访问权限。如何重置 root 密码或只是暂时删除它?谢谢,Dan

答案1

您无法再以 root 身份登录 Solaris 11,因为默认情况下,root 不是一个帐户,而是一个角色。如果您需要 root 权限,只需从您的初始用户登录帐户使用 sudo 即可,例如

$ sudo -i

如果您想要将 root 恢复为其传统(但不太安全)的非角色设置,您可以运行:

# rolemod -K type=normal root

答案2

这是另一种方法:

1) 从文本安装 DVD 启动(如果您的 Solaris 11 安装在 VM 中,则从 ISO 文件启动)

2)确保启动到单用户模式:在初始 GRUB 屏幕上,按 Esc,然后按“e”编辑 Grub 命令行,添加开关“-s”以进行单用户启动

3)启动进入单用户模式后,以“root”身份登录,密码为“solaris”

4) 挂载 ZFS 根池。大多数 HOWTO 建议仅创建目录/a,但这还不够,您需要两个目录,我们/a/b在以下示例中使用了这两个目录。此外,命令-f中的标志 (force) 也很重要zpool import

mkdir -p /a/b
zpool import -f -R /a rpool
zfs set mountpoint=/b rpool/ROOT/solaris
zfs mount rpool/ROOT/solaris

5) 编辑文件/a/b/etc/shadow,您可能需要先使其可写。找到包含 root 条目的行,通常是第一行。删除第一和第二个冒号之间的密码哈希,因此该行现在看起来像root::12345::::::(您的数字可能不同)。

6) 编辑/a/b/etc/user_attr并注释掉该行root::::type=role。这会使 root 成为“普通用户”,顺便说一句,我们不建议这么做。

7) 编辑/a/b/etc/default/login并注释掉该行PASSREQ=YES。这将确保以 root 身份登录时不需要密码。

8)通过发出命令重置根挂载点

zfs set mountpoint=/ rpool/ROOT/solaris
zpool export rpool

第一个命令会抱怨无法挂载“a”,因为目录不为空,无法重新挂载等。忽略此问题并重新启动。您应该能够以 root 身份登录而无需密码。

相关内容