在`root`中的主文件夹而不是在`home` …我很困惑!

我的home文件夹有问题,这给了我一些权限问题。

我已经安装了一个应用程序,告诉我我没有权限保存在/home/username/Desktop ,但实际上我的家位于/home/username/Área de Trabalho (ÁreadeTrabalho =桌面,但用葡萄牙语) 。

  • 访问sudo我的家庭如下图所示(查看文件夹图标)。
    里面是desktop文件夹。

在此处输入图像描述

  • 作为普通user访问我的家庭如下图所示。
    里面是Área de Trabalho文件夹。

在此处输入图像描述

这是正常的吗? 我应该告诉Ubuntu我的实际home文件夹在哪里吗? 我该怎么办?

Thanx提前!

第一个屏幕截图(“as sudo ”)显示在图标视​​图中,第二个屏幕截图(“作为普通user ”)位于详细列表视图中,但它们实际上显示的是相同的文件夹结构。 没有差异。 ( tachyons的答案解释了为什么不同的文件夹上有房子图标。)详细列表视图为您提供了更多信息; 特别是,名为/home的文件夹被展开以显示其内容,包括p_sardinha子文件夹。

由于这两个视图是等效的,因此看起来与查看文件夹结构的方式无关。 因此,我们可以将您的问题分解为两部分:

  • 我的主文件夹在哪里?
  • 如何解决应用程序尝试访问我的桌面文件夹的问题,但是因为它用错误的语言命名该文件夹而失败?

我的主文件夹在哪里?

Ubuntu系统的每个人类用户都有一个主文件夹 (也称为主目录 ,因为文件夹目录的含义相同)。 如果您在Ubuntu系统上为多个人设置了用户帐户,则每个用户帐户都有一个单独的主文件夹。

有一个名为/home的文件夹。 那不是你的主文件夹。 事实上,这绝不是任何人的主文件夹。 相反, /home是包含人类用户的主文件夹的文件夹

您的主文件夹是/home/p_sardinha ,因为您的用户名是p_sardinha

更一般地,对于人类用户用户username ,用户的主文件夹是/home/ username

  • 在某些系统上,包括你的系统,名为/home的文件夹包含一个lost+found的子文件夹。 这不是任何人的主文件夹 。 相反,它默认存在于ext2 / ext3 / ext4文件系统的根文件夹中; 它用于保存修复文件系统时恢复的文件,为了使用您的主文件夹,您无需了解任何相关信息。

  • 存在一些与计算机的实际人类用户不对应的用户帐户。 它们的存在使得某些程序可以运行时具有适合其设计任务的特殊身份,能力和限制。 非人类用户通常没有/home的主目录。 例如,正如tachyons所提到的 , root用户,即实际运行使用sudogksu / gksudo运行的命令的用户(除非使用-u标志)将/root作为其主目录。

名为/home的文件夹与您的实际主文件夹(其中的子文件夹)之间的区别之一有时令人困惑的原因之一是,Nautilus(Ubuntu的文件浏览器)将您的实际主文件夹称为“主页”。 例如,这是我的主文件夹的内容,如Nautilus所示:

家庭文件夹的Nautilus窗口

但是,该文件夹的实际名称(显示其内容)是/home/ek (因为我的用户名是ek )。 我的桌面文件夹名为Desktop ,位于我的主文件夹中,因此其完全限定的路径为/home/ek/Desktop

如何解决应用程序尝试访问我的桌面文件夹的问题,但是因为它用错误的语言命名该文件夹而失败?

可能存在特定于应用程序的解决方案,但您没有提供有关错误发生的环境或发生的应用程序的详细信息,因此我无法提供此类解决方案。 幸运的是,我可以提供一般解决方案。

由于文件夹有时被称为除了真实名称之外的东西(例如,您的主文件夹有时被称为Home即使它的名称是p_sardinha ),首先要确保您的桌面文件夹的名称确实是Área de Trabalho 。 这很容易检查 – 只需查看您的主文件夹的内容(就像我在上面的屏幕截图中所做的那样),并确保在那里调用它。 我相信你已经做到了。

所以桌面文件夹的真实全名是/home/p_sardinha/Área de Trabalho 。 但至少有一个应用程序想要在/home/p_sardinha/Desktop访问它。 假设还没有名为/home/p_sardinha/Desktop的文件夹(您应该检查以确定),您应该能够通过在主文件夹中创建一个名为Desktop的符号链接来解决问题,该链接指向Área de Trabalho (你的实际桌面文件夹)。

要创建此符号链接,请打开终端窗口( Ctrl + Alt + T )并运行以下命令:

 cd ln -s 'Área de Trabalho' Desktop 
  • 第一个命令( cd ,后面没有任何内容)确保您使用的命令行位于您的主文件夹中(即,它使用您的主文件夹作为其当前工作目录)。
  • 第二个命令(以ln开头)实际上创建了符号链接。

那应该可以解决问题。 但是,您的应用程序确实应该充分国际化,以免假设您的桌面文件夹始终称为Desktop 。 因此,我建议报告发生问题的应用程序中的错误 ,因此开发人员可以使该应用程序对于讲葡萄牙语的用户也适用于讲英语的用户。

是的,这是正常的

sudo命令以root模式打开nautilus,root的home是root本身

每个不同的用户都有不同的主目录。

它们都在文件/etc/passwd 。 在编辑该文件以使更改为主文件夹生效后,您必须注销并重新登录。 除非你是一个高级用户,否则我不建议你编辑这个文件,但我提到它,以防你好奇地查看它并知道它是如何工作的。

“root”用户的home默认设置为/root而普通用户的home目录默认设置为/home/*username* 。 移动主目录通常没有充分的理由。

使用gksu / gksudo运行具有root权限的图形程序时,您的主目录通常会报告为/root ( 这解释了原因 )。 这是正常的,这只是因为你正在使用root权限(一旦你正确设置了一切,你很少需要使用root权限)。