不需要将/ root的所有权更改为uid 1000(在:USB pendrive上安装了parted magic live系统;添加自己的程序时会发生这种情况)

时间:2019-03-16 18:46:41

标签: chown

与标题中的一样: 当我向Parted Magic添加程序时
(如此处所述:https://partedmagic.com/adding-programs/;实际上我是通过使用“ mksquashfs”来“制作自己的包”;在使用“ mksquashfs”之前,我将chmod 777 * -R应用于了文件系统;然后我复制了生成的* .sqfm文件到指示的文件夹(在USB笔式驱动器上,该文件可保持可引导状态;无需再次写入整个iso映像);从USB笔式驱动器引导Parted Magic时,Parted Magic会自动安装我的文件)
并且我尝试启动firefox(这是Parted Magic标准软件包的一部分),这是不可能的。 (当按原样使用分块魔术(“开箱即用”时,可以毫无问题地启动Firefox)。

当我打开一个终端并输入“ firefox”时,原因很明显,答案是:

  

“不支持在普通用户会话中以root用户身份运行Firefox。($ HOME是uid 1000拥有的/ root。)

现在,由于Parted Magic是一个实时系统,因此一切都以root用户身份运行是正常的。 因此,显然问题是/ root的所有权更改为uid 1000,但是为了起作用,/ root的所有者应该是root。 (uid 1000是linux创建的第一个“普通”用户(除root用户);这在https://www.linuxquestions.org/questions/linux-general-1/what-is-the-user-1000-a-4175510196/中进行了说明)

当我将/ root的所有权从UID 1000更改为root时,我可以启动firefox,可以通过输入

chown root:root /root &&
chmod 744 /root

(我并没有尝试第二行chmod 744 /root是使它正常工作的必要条件)

现在,我的问题是:为什么添加自己的程序(或什至是较小的更改,例如放在“ Parted Magic”桌面上的文本文件)会导致/ root的所有权更改为uid 1000?在向“ Parted Magic”中添加内容时,我该怎么办才能避免所有权的这种变化?

我希望这是我提出问题的合适论坛。

1 个答案:

答案 0 :(得分:0)

实际上,该问题的解决方案只有一步之遥,但我仍然没有看到:我在使用“ mksquashfs”之前忘记更改文件所有权

所以我用

  

sudo chown root:root * -R

将当前目录中所有文件(和所有子目录)的所有权更改为root (请注意:如果在错误的目录中应用该命令,则可能会破坏该系统)

显然发生了什么:在引导过程中“ Parted Magic”安装我添加的* .sqfm文件中包含的文件时,如果其中一个文件在此过程中被添加到/ root,而不是root拥有。

因此,即使这对于大多数精通Linux的人来说都是显而易见的,但也许这对于使用Parted Magic的某些新手(如我)可能会有所帮助...