如何将“home”移动到 Ubuntu 主分区

如何将“home”移动到 Ubuntu 主分区

我对 Linux 和 Ubuntu 13 完全陌生。到目前为止,我很喜欢它。作者们真的想尽了一切办法,并很好地保持了操作系统的现代化。尽管如此,对我来说,这仍然需要一点学习。我有一些使用 OS X 终端的经验,但我仍在学习如何操作以及如何完成任务。所以对于任何回答的人,请假设我知道没有什么,并解释每个步骤。

在安装操作系统期间,我选择将“家”放在单独的分区上。我这样做是为了可以将这个空间用作可移植区域,在其中存储经常访问的文件,使用它在操作系统之间传输内容,并能够在紧急情况下轻松检索它们。我使用 XFS 格式化了这个分区,以为它是 exFAT 文件系统的首字母缩写,这是一种理想的跨平台文件系统,支持大于 4GB 的文件。哎呀!原来 XFS 是一个有点晦涩难懂的日志式服务器文件系统。而且原来“家”喜欢驻留在支持权限的文件系统中,所以无论如何都排除了 exFAT。好的,这是一个学习经历,但现在我想将“家”移回安装 Ubuntu 的分区,并将 XFS 分区重新格式化为其他格式(稍后决定)。

我在 Ask Ubuntu 上阅读了一些相关问题,但没有任何进展。要么是因为我的情况或版本存在一些差异,要么是我得到了意想不到的结果,要么是我根本不知道自己在做什么。任何帮助都将不胜感激。

在此处输入图片描述

答案1

注 1:下面假设您有一个用于安装 Ubuntu 的 USB 记忆棒,但使用 CD 也是如此。因此,无论您在哪里看到“USB”,它基本上都表示“您使用 Ubuntu 制作的可启动媒体”。

笔记2:无论您userName在命令中看到什么,请将其替换为您在 Ubuntu 中使用的实际用户名。

好的,我们要做的是使用 LiveUSB 启动实时 Ubuntu。因此,如果你还有安装 Ubuntu 的 USB,那么只需从它启动,就像你要从头开始安装 Ubuntu 一样,只不过,我们会选择尝试 Ubuntu,而不是安装 Ubuntu。这将从 USB 启动 Ubuntu,因此这是不是您实际安装的 Ubuntu。[“Ubuntu”太多了。]

以下所有内容都将在终端中输入。您可以通过 Ctrl+ Alt+打开一个终端T

笔记:如果在任何时候您遇到错误,请停止并告知我们。

  1. sudo mkdir /media/rt
    • rt这将在 下创建一个名为 的目录/media。这将是存放您实际的 Ubuntu 根分区的文件夹。
  2. sudo mount /dev/sda3 /media/rt
    • 从命令中可以看出,这将/dev/sda3在文件夹上安装(使)(您的根分区) (使其可访问) /media/rt
    • 注意:如果该命令给出有关“文件系统类型”的错误,请执行sudo mount -t ext4 /dev/sda3 /media/rt下列操作。
  3. cd /media/rt
    • 这会将我们的工作目录更改为该目录,该目录现在是您的 Ubuntu 的/分区。
  4. sudo chroot --userspec=userName:userName .不要忘记,将其替换userName为您的 Ubuntu 用户名。

    • 这...嗯...基本上,您现在看到的提示与您在实际的 Ubuntu 安装中打开终端时看到的提示相同。您的提示应该更改为userName@hostname:$,类似这样的内容。
  5. sudo cp /etc/fstab /etc/fstab.bak

    笔记:我不太确定此命令是否会要求您输入密码。但如果需要,请输入您的用户名的密码。这适用于所有剩余命令。

    • fstab这将对我们接下来几个步骤中要编辑的文件进行备份。
  6. sudo gedit /etc/fstab
    • 这将在文本编辑器中打开fstab您的 Ubuntu 安装文件。此文件负责在/home您启动 Ubuntu 时在启动时安装分区。它还负责安装/分区,因此编辑此文件时要小心。
  7. 查找以下两行:

    # /home was on /dev/sda4 during installation
    UUID=<random-numbers> /home           ext4    defaults        0       2
    

    他们不会确切地与此相同。您可能会找到与第一行完全相同的行,但第二行可能略有不同。它可能以 开头,/dev/sda4而不是UUID=<random-numbers>。但本质上,我们正在寻找的是包含 的行/home

  8. 将 a#放在第二行的前面。因此,它应该看起来像这样:

    # /home was on /dev/sda4 during installation
    #UUID=<random-numbers> /home           ext4    defaults        0       2
    

    这句话#基本上意味着“这一行是一个注释”,所以我们基本上是删除它,但我们实际上不会删除它。

  9. 保存并关闭编辑器。这将带您返回终端。
  10. ls /home。 你应该不是看到任何输出。如果您没有看到任何输出,请继续执行以下步骤。如果您看到您的用户名作为输出(极不可能),请转到步骤 13。
    • 此命令主要是检查您是否已有主文件夹。您不应该在那里看到任何文件夹,因为您的所有/home目录都安装在单独的分区上。
  11. sudo mkdir /home/userName。别忘了,替换userName为您的 Ubuntu 用户名。
    • 这将为您的用户名创建一个新的主目录。但是它的所有权不正确,所以我们稍后会修复它。
  12. sudo cp /etc/skel/{e*,.[a-z]*} /home/userName
    • 这会将一些重要文件复制到您的新主文件夹。
  13. sudo chown -R userName:userName /home/userName

    • 这会将您的新主文件夹的所有权更改为您。

    笔记:可能有一种更简单的方法,只需一个命令即可完成步骤 11、12 和 13,但是,我不知道。

  14. exit
  15. exit

这应该关闭终端。

此时,我们已删除自动挂载/home分区的功能,为您的用户名创建了一个新的主文件夹,将一些必要的文件复制到其中,并赋予其正确的权限。

关闭此实时 Ubuntu。拔下 USB 棒。像平常一样启动 Ubuntu。祈祷吧。你应该正常启动,发现你有一个包含所有子目录(文档、图片等)的主文件夹,就像你所做的一样,但现在,所有这些都在一个分区下,即根分区。

我们来做一些检查。

  1. cat /etc/fstab。查找#我们添加到该行的。它应该在那里。
  2. ls -l /home. 你应该看到类似这样的内容:

    drwxr-xr-x 43用户名 用户名  4096 六月 30 20:49 用户名

    只要这些粗体字是您的用户名,一切都很好。

  3. ls -l /home/userName。您应该看到所有创建的子目录,并且所有子目录都应以您的用户名代替上面的粗体字样。
  4. 打开 GParted。您不应该像屏幕截图中/home那样看到该分区的挂载点 ( )。/dev/sda4

如果一切顺利,那么恭喜你!

此时,您的另一个分区(以前是 的分区/home)现在可供您随意使用。打开 GParted,删除、格式化、刻录、扔出气闸室,等等。

呼。

相关内容