如何将 /home 移动到其自己的分区

如何将 /home 移动到其自己的分区

我的操作系统(Ubuntu 12.04)安装在 40GB 内置硬盘上。我有一个 320GB 的外置硬盘,始终连接着。我希望在外置硬盘上安装并运行软件,而不是在内置硬盘上。我只想在内置硬盘上安装 Ubuntu,但主板无法从任何大于 250GB 的驱动器启动(我试过了)。如果可能的话,我还希望我的主文件夹也位于外置硬盘上(这意味着我希望保存/下载的文件默认转到外置硬盘,而不是必须手动导航到它)。当我单击桌面上的主文件夹图标时,我希望它打开外置硬盘目录。这些可能吗?如果可以,请提供分步说明。谢谢!

答案1

如何将 /home 移动到其自己的分区

当您想要将 /home 目录移动到另一个分区(因为您的 HDD 已满)时,这里有一个分步指南指导您如何操作。

注意:您需要打印此页或将其写下来,因为您在移动 /home 目录时需要这些命令!在此过程中您无法访问浏览器。

0. 如果尚未格式化,请将您的 HDD 格式化为 ext4。

1. 打开终端 (CTRL + ALT + T) 并输入以下内容来确定主目录的大小:

du -sh /home

结果应该是这样的

34G /home

2. 按(CTRL + ALT + F1)进入文本控制台并获取临时 root 权限:

sudo -s
cd /

3. 挂载目标分区(外部硬盘)

进入fdisk -l终端获取所有分区的列表。记住外部硬盘的名称。然后执行

mkdir /mnt/tmp
mount /dev/sdXY /mnt/tmp 

并将其替换/dev/sdXY为您的外部硬盘的名称(例如 /dev/sda5)。这样即可挂载您的外部硬盘。

4. 将数据从 /home/ 复制到外部硬盘。

可以通过以下方式实现:

rsync -avx --progress /home/ /mnt/tmp 

5.测试你的 /home 分区:

执行这些命令

mount /dev/sdXY /home 

您的外部硬盘在哪里/dev/sdXY。现在您可以测试新的 /home 分区:

du -sh /home; mount|grep /home 

输出应该是这样的

34G    /home
/dev/sda5 on /home type ext4 (rw)

6.删除主分区

现在您需要删除现有的主分区。为此,请卸载主分区并将其删除:

umount /home
rm -rf /home/* 

7. 将新的 UUID 输入到 /etc/fstab 中

最后一步是将外部硬盘的 UUID 输入到 /etc/fstab 中。这一步很重要!

按 CTRL + ALT + F7(或 F6,不知道哪个是正确的)键切换回桌面。打开终端并输入sudo blkid终端并搜索外部硬盘的条目。我的条目是:

/dev/sda5: LABEL="Ubuntu" UUID="bb288354-34a8-4716-9740-96aa9da99dac" TYPE="ext4"

现在/etc/fstab用文本编辑器(即 gedit)打开:

gksudo gedit /etc/fstab

并在文件末尾添加以下条目:

# /dev/sdXY 
UUID=YOUR-UUID-HERE  /home   ext4   defaults   0 2

但不要忘记将 YOUR-UUID-HERE 替换为外部硬盘的 UUID,并将 /dev/sdXY 替换为您的硬盘的名称(例如:/dev/sda5)。

8. 重新启动以使更改生效。

sudo reboot在终端中输入。重启电脑后,主分区应该位于外部硬盘上。

如果您有任何问题,请随时在评论中提问。

我希望这篇文章能解答您的问题。

相关内容