如何访问 osx 10.9.5 (Mavricks) 中的根目录。尽管启用了 root 用户并且处于管理员帐户中,但我在终端下看到红色的“无访问权限”徽标和“权限被拒绝”。尝试了 Sudo ls var/root,但它只是要求输入密码,什么也不做。
mgp:var mgp$ ls
agentx folders netboot spool tmptmpdbUuZwC tmptmpdbmW0Yg
at jabberd networkd tmp tmptmpdbUuZwC-journal tmptmpdbmW0Yg-journal
audit lib root tmptmpdb5e8iN tmptmpdbdMcpS vm
backups log rpc tmptmpdb5e8iN-journal tmptmpdbdMcpS-journal webmin
db mail run tmptmpdbOG3yt tmptmpdbfseF0 yp
empty msgs rwho tmptmpdbOG3yt-journal tmptmpdbfseF0-journal
mgp:var mgp$ cd root
-bash: cd: root: Permission denied
mgp:var mgp$
我知道 SIP 是在 El Capitain 中实现的,那么是什么阻碍了我使用旧版本呢?
有任何想法吗?
答案1
我认为你混淆了管理员和 root 权限。以管理员身份运行,你可以执行一些标准用户无法执行的操作,但你没有 root 权限。你可以使用以下sudo
命令运行命令以 root 身份,但您自己不是 root 身份,仍然受正常文件权限的约束(包括不能读取 /var/root)。
“启用” root 权限根本不会改变这一点。它的作用是允许您直接以 root 权限登录。在登录屏幕上,您将看到一个“其他”图标;如果您选择该图标,然后输入名称“root”和您为 root 帐户分配的密码,那么您实际上将以 root 权限登录。不要这样做。当您以 root 权限登录时,你所做的一切绕过了大多数常规保护,因此很容易彻底搞砸一切。以管理员身份运行会更安全,并且可以使用诸如sudo
以 root 身份运行特定操作之类的功能。
关于使用sudo
:您需要以管理员身份使用它,并且它会要求您输入密码(管理员帐户,而不是根帐户),除非您最近使用过它(这是为了确保它确实是您)。sudo ls /var/root
应该可以工作,尽管根主目录可能大部分是空的。sudo cd /var/root
将不是工作,因为cd
作为子进程运行并且不会影响你的shell。
要成为 root 用户,您可以做的一件事是使用sudo -s
以 root 用户身份打开新 shell。执行此操作后,您可以以 root 用户身份运行一系列命令(包括cd
进入 /var/root 等)。这有点危险,但不如实际以 root 用户身份登录那么糟糕。