将 Linux 根文件夹的子文件夹(/tmp、/lib、/etc)移动到另一个位置会影响系统吗?

将 Linux 根文件夹的子文件夹(/tmp、/lib、/etc)移动到另一个位置会影响系统吗?

我已经安装了 Ubuntu 和 Windows 7 双启动。Windows 7(C 盘)磁盘大小为 420 GB,Linux 驱动器大小为 50 GB。现在我在 Ubuntu 上遇到了空间问题。我无法在它们上重新安装任何东西,也无法调整(缩小)Windows 分区的大小。

我正在考虑将一些大文件夹(例如,,,,,,,,)移动/opt到Windows/bin驱动器的其他文件夹,并在中为其创建链接。这会以任何方式影响 Linux 系统吗/sbin?例如启动、执行命令、启动终端、运行已安装的应用程序(例如 Java、Ruby 等)?如果是,那么还有哪些其他解决方案?/etc/usr/lib/tmp/home/user/Desktop/

答案1

如果您的 Windows 分区上有空间,我会按照 AisIceEyes 的建议挂载它,然后将您的主文件夹软链接到 Windows 挂载上的文件夹。您也可以对 opt 文件夹执行相同操作,我猜您在那里安装了一些软件。

  1. 首先安装 Windows 分区。
  2. 然后将您的主文件夹/用户文件夹移动到该分区上的文件夹中。
  3. 最后通过软链接将该文件夹作为您的主文件夹,然后您将返回到原来的位置。

步骤 1 - 挂载 Windows 分区

用来sudo fdisk -l找出你的磁盘名称。/dev/sda2在混合系统中,正常情况下应该如此,但不要相信我的话,请使用 fdisk。

用于ntfs-3g将分区挂载到挂载点,挂载点是您可以使用 mkdir 创建的任意文件夹。

$ sudo mkdir /mnt/windows               # Create a mount point
$ sudo ntfs-3g /dev/sda2 /mnt/windows   # Mount
$ ls -la /mnt/windows                   # Looks familiar?

永久挂载

现在我们知道我们安装了正确的分区,我们可以通过将其输入到文件系统表格文件或 fstab 中来使其永久生效,如下所示:

$ sudo vim /etc/fstab                   # You can select another editor

转到最后并输入此行:

/dev/sda2   /mnt/windows    ntfs-3g uid=1000,gid=1000,dmask=027,fmask=137,locale=en_US.utf8 0   2

重新启动系统并验证分区是否按预期挂载。dmask 和 fmask 将目录权限设置为 750,将文件权限设置为 640。uid 和 gid 为 1000 将赋予您目录结构的所有权。

第 2 步 - 移动文件

在 Windows 文件夹中创建一个文件夹,用于放置用户文件夹。然后将当前用户文件夹移至该文件夹。

$ mkdir /mnt/windows/linux_home
$ mv /home/user /mnt/windows/linux_home/.

步骤 3 - 使用软链接恢复你的主目录

最后将您的主文件夹链接到新路径。

$ sudo ln -s /mnt/windows/linux_home/user /home/user`

完毕!

这种方法的特点是,非软件专有格式在 Windows 环境中也无法读取。

答案2

我建议只需将 Windows NTFS 分区安装到 Linux 并从那里开始工作。

几年前有一款名为 pysdm 的应用程序,但我听说它已被弃用。您可以在安装 Windows 分区时搜索 fstab。

相关内容