合并/和/ home的最简单方法是什么?


16

我有单独的//home分区,它们都使用ext4作为文件系统。
如何合并它们,最简单的方法是什么?


2
我只知道使用GParted和实时CD。调整我的/ home的大小,然后展开/。将/home文件移动到中/,最后删除/home和展开/
Apache

1
我想说的复制/备份您的整个/home外部驱动器,重新安装Ubuntu的只有一个分区,然后复制在你的家了。
马吕斯

事实证明,@ Marius,我写的很完美。(这是 htorque他的回答中所说的话。)所以我会接受他的。:)
Apache

Answers:


13

我认为没有更简单的方法。您需要将数据从一个分区复制到另一个分区。您需要删除旧的主分区并调整根分区的大小。在运行中的系统上无法做到这一点,因此,实时CD或USB看起来像它一样出色。

  • 引导实时CD / USB。
  • 将根分区挂载到/mnt/root
  • 将主分区挂载到/mnt/oldhome
  • 使用rsync以下命令复制数据:

    sudo rsync -avz --hard-links --numeric-ids /mnt/oldhome/ /mnt/root/home
    
  • 打开/mnt/root/etc/fstab并删除您的主分区条目。

  • 卸载根分区和主分区,然后重新引导系统。如果一切正常,您可以重新启动到实时系统,然后:
  • 打开Gparted
  • 删除旧的主分区,调整根分区的大小。

应该是这样。


1
可以对该rsync命令进行一些改进。首先,您将在from路径的末尾想要一个斜线,否则您将在homefolder中得到一个旧的家。您可能还想添加--hard-links,以防/ home下有任何链接。出于安全考虑,根据Live CD上/ etc / {passwd,group}中的内容,numer-ids也不会受到损害。
andol 2012年

另外,在执行本地rsync时,您真的期望压缩带来很多好处吗?
Andol 2012年

谢谢。我将它们添加到上述rsync调用中。
qbi 2012年

@andol:谢谢,我的回答太草率了。至于本地压缩:是的,我已经看到性能有所提高,因此只要不影响性能,我就会启用压缩。
htorque 2012年

好的答案,但有几点注意事项:--hard-links可以缩短为just -H-z在本地文件系统上不是理想/有效的,并且对本地文件系统--numeric-ids没有任何影响(其他驱动器上/ etc / passwd中的内容不会有任何影响在本地运行时)。
thomasrutter 2015年

0

我不知道最简单或最好的方法,但是这就是我的方法。我只是在其中创建文件夹/,然后将所有数据复制/home到其中。然后,我将使用live cd重新启动系统,并删除其分区/home,并将其创建/到的文件夹重命名home,然后/home在fstab中删除该条目。最后一步是调整我的根分区的大小,以消耗通过删除/ home分区而创建的空白空间。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.