将单独的 /home 分区移动到默认配置 /home 文件夹

Mat*_*lva 5 command-line partitioning bash hard-drive

最近我重新安装了ubuntu并创建了两个分区。整个系统在 SSD 上,/home 在另一个分区内,以 HD 格式。但是,我希望 /home 留在 SSD 上,而 HD 是第二个 /home,仅用于文件。有人能帮我吗?

注意:如果我有丢失文件的风险,我无法从 HD 上的 /home 释放内存。如果可能的话,我想在 SSD 上创建一个 /home 并重命名旧的 /home 以便系统中没有冲突。

use*_*186 5

/home从HDD 中的单独分区转到默认配置,其中 是 SSD 中的/home文件夹/

我们将从运行 Ubuntu 18.04 的 Live USB 上执行此操作,以便我们可以使用该/home分区并将其挂载为/internal_home.

第 1 步:从 Live USB Ubuntu 启动

选择尝试 Ubuntu而不安装选项,因为我们希望从 USB 而不是内部 SSD 运行 Ubuntu。

/home步骤2:找到分区/的uuid

Ctrl按+ Alt+打开终端T并输入:

sudo blkid > myUUIDs.txt
Run Code Online (Sandbox Code Playgroud)

保持终端打开并转到“文件”(也称为 Nautilus),找到该文件myUUIDs.txt并双击打开它,以便您可以轻松复制和粘贴内部驱动器/home/分区的 UUID。稍后您将需要它们。

第 3 步:安装/home/分区

由于这只是暂时的,因此挂载点是什么并不重要。您可以使用 Nautilus 单击并安装它们。然而,自动生成的安装点很难输入。因此,我们将使用命令行创建 2 个挂载点并在那里挂载两个分区。

首先,制作一些临时文件夹作为挂载点

sudo mkdir /internal_root
sudo mkdir /internal_home
Run Code Online (Sandbox Code Playgroud)

二、挂载两个内部分区

我假设:

  • 1234-UUID-OF-SYSTEM-PARTITION是您的内部/(根)分区并且
  • 1234-UUID-OF-HOME-PARTITION是您当前的主分区。

使用前,将上述步骤 2 中的正确UUID复制并粘贴到终端中

sudo mount --uuid 1234-UUID-OF-SYSTEM-PARTITION /internal_root
sudo mount --uuid 1234-UUID-OF-HOME-PARTITION   /internal_home
Run Code Online (Sandbox Code Playgroud)

第四步:将home文件夹从自己的分区复制到SSD下/

使用以下命令将旧/home分区中的所有内容复制到新/home文件夹中。请注意,您不需要创建该文件夹,因为它是作为分区的安装点创建的。

sudo rsync -aXS --exclude='/*/.gvfs' /internal_home/. /internal_root/home/.
Run Code Online (Sandbox Code Playgroud)

第5步:为旧家创建一个新的挂载点

我们需要为旧家建立一个新的点,以便我们可以用它来存储数据(我将其称为 )oldhome。使用以下命令:

sudo mkdir //internal_root/oldhome
Run Code Online (Sandbox Code Playgroud)

注意:我不建议将旧的 home 安装在/media. 该文件夹通常保留给系统临时自动挂载分区。

另一种方法是使用以下命令oldhome在现有文件夹下创建文件夹:/mnt

sudo mkdir //internal_root/mnt/oldhome
Run Code Online (Sandbox Code Playgroud)

第6步:编辑为Ubuntu启动时自动/etc/fstab挂载oldhome

使用以下命令/etc/fstab以管理权限在 gedit 中打开。

sudo -H gedit /internal_root/etc/fstab
Run Code Online (Sandbox Code Playgroud)

查找与您的主分区的 UUID 类似的行。请参阅步骤 2 了解 UUID。将其更改为如下所示:

UUID=1234-UUID-OF-HOME-PARTITION  /oldhome ext4 defaults 0 2
Run Code Online (Sandbox Code Playgroud)

其中是在步骤 2中找到的1234-UUID-OF-HOME-PARTITION旧分区的 UUID 号。请注意,在此文件中,我们不包含创建文件夹时的前缀。/home/internal_root/oldhome

保存文件并退出gedit

步骤 7:重新启动计算机并引导至内部 SSD

如果一切顺利,您的/home位置不在 SSD 中的默认位置。

要使用/oldhomeNautilus 访问分区,您需要转到左侧边缘的“其他位置” ,然后单击“计算机”图标并导航到oldhome

希望这可以帮助