昨天我按照以下步骤将主目录从根分区移动到另一个分区这里。基本上将所有文件复制到新分区,并添加fstab
带有分区 UUID 和/home
挂载点的新条目,然后重新启动系统。
一切都按预期进行,但我的问题是,旧文件夹和文件会怎样?/home
现在指向一个新分区,旧文件似乎就“消失”了。
谢谢!
答案1
新文件系统 ( /home
) 挂载到/home
原始文件系统上的目录 ( ) 上。所以文件仍然存在,但它们被隐藏起来,无法简单访问。
为了避免这种情况,您需要在流程中添加一些步骤。
即,/home
在创建内容副本后重命名目录。然后,创建一个新的空目录/home
作为新的挂载点。然后,当您挂载/home
文件系统时,它将挂载在一个空目录上,您仍然可以访问该/oldhome
目录(或您所说的任何名称)。
答案2
如果您将文件复制到新分区但没有从根分区中删除它们,则通过在旧分区上安装新分区来屏蔽或隐藏旧文件。在这种情况下,您应该仍然有相同数量的根分区正在使用,没有空间被释放。除非我们都错过了该部分,否则删除旧副本不包含在您链接的说明中。
我在这里引用一个关于这个主题的好答案:
当您将文件系统挂载到目录上时
/mount-point
,您将无法再/mount-point
直接访问该目录下的文件。它们仍然存在,但/mount-point
现在指的是已挂载文件系统的根目录,而不是用作挂载点的目录,因此无法访问该目录的内容,至少以这种方式。
当然,解决这个问题最直接的方法是通过umount
ing 新的/home
(为了成功,/home
必须没有任何文件在使用中,这意味着只有 root 可以登录),然后您将看到旧的文件(占用根分区),可以删除它们以释放根分区中的空间(但在真正删除任何内容之前,请仔细检查新分区是否未安装)。您可能应该删除 old 下的所有内容/home
,而不仅仅是用户目录中的内容。