我的 debian 上的 root home 不是 /root 吗?

我的 debian 上的 root home 不是 /root 吗?

当我用来su获取 root 时,然后我cd ~

我不在 /root 上,当我ls显示桌面文件和一些隐藏文件(如 .bashrc)时,但没有其他文件。

root@debian:~# ls -a
.  ..  .adobe  .bash_history  .bashrc  .cache  .config  Desktop  .gnome2  .gnome2_private  .local  .macromedia  .mozilla  .profile  .vim  .viminfo

要进入真正的 /root 我必须cd /从这里开始。

我以为没有../from /root,那这是什么~

编辑2:

xxxx@debian:~$ ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos
xxxx@debian:~$ su
Password: 
root@debian:/home/xxxx# cd
root@debian:~# ls
Desktop
root@debian:~# pwd
/root
root@debian:~# cd /
root@debian:/# ls
bin  boot  dev  etc  home  initrd.img  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var  vmlinuz
root@debian:/# pwd
/

答案1

您弄错了两个具有相似名称的事物。

root- 也称为/- 它是光盘的起点。如果您想象您的文件系统布局为一棵树(在数学意义上),您将清楚地看到为什么它被称为根 - 它没有祖先,只有孩子。

然而,/root却是完全不同的事情。您可以看到名称有所不同 - 差异很小,仅/在开始时有所不同,但这就是含义发生巨大变化的地方。/root是一个名为的目录root,您可以在 中找到该目录/。所以,如果你这样做:

cd / && ls | grep root

您将看到需要一个名为 的目录root。这就是您误认为的目录/。不同之处在于它/root是 root 用户的主目录,并且/是文件系统的根目录。您可以阅读有关此主题的更多信息在这个网站上

答案2

该目录是位于文件系统顶部的/root目录。root也许您将文件系统的根目录/与用户的主目录混淆了root

答案3

普通的。su不带参数只是更改用户的 id,而不真正加载完整请求的用户环境。

所以基本上你只是在 root id 下的本地用户环境中。

如果你想真正加载根环境,你必须这样做su -su -l将加载请求的用户完整环境。

答案4

要知道您在目录树中的位置,您必须输入:

pwd

顺便说一下,根目录是/root。这是根用户(如果您愿意的话,超级管理员)的个人目录。当您输入:

cd /

您正在将实际用户重新定位到包含根用户目录的文件系统层次结构的根(顶部)。

相关内容