答案1
如果您告诉安装程序将整个磁盘用于 Linux,它就会这么做。除非您特别要求,否则任何操作系统安装程序都不会在系统磁盘上留下未分区的可用空间。
如果安装程序没有询问您是否使用整个磁盘,也没有告诉您如果使用默认值,磁盘上的任何其他操作系统都会被覆盖,在这种情况下,我可能会倾向于说 Zorin 的安装程序很糟糕,但实际结果看起来像是完全有效地安装了 Linux 作为系统上唯一的操作系统。
分区类型ID告诉我,安装可能默认使用LVM,因此虽然分区/dev/sda5
占用了整个磁盘,但这并不一定意味着所有磁盘空间都被实际使用。
您应该使用该sudo lvs
命令查看 中任何 LVM 逻辑卷的数量和大小/dev/sda5
,并sudo pvs
查看是否还有未分配的空间。然后,您可以使用此未分配的空间来扩展任何现有的逻辑卷,或者根据需要创建新的逻辑卷。与传统分区不同,LVM 逻辑卷不需要在物理上连续:单个 LV 的部分甚至可能占用多个不同的磁盘,因此如果需要,LV 可以比任何单个物理磁盘更大。
我没有看到任何会导致性能问题的事情。在评论中,您说:
根据我的理解,将系统操作系统与其他文件分开的原因是为了防止系统在启动时加载所有其他文件而减慢速度。
这是不正确的。将系统文件和用户文件分离到单独的文件系统(无论这些文件系统位于分区还是 LV 上)的主要原因是为了更轻松地完全重新安装操作系统而不影响用户文件。在某些情况下,出于其他原因也可能需要它,例如系统是集群的一部分并且管理员希望将用户文件放置在可同时从所有集群节点访问的 iSCSI 或其他 SAN 存储上:例如设置需要特殊集群文件系统,并且通常在操作系统和集群基础设施服务启动之前无法安装。
系统不会在启动时盲目地加载系统磁盘上的所有文件,因为a)这是徒劳的,因为磁盘的容量很容易比系统的RAM大至少一个数量级,并且b)在压倒性的情况下大多数情况下,这只是愚蠢地浪费时间,没有任何显着的好处。
从sudo lvs
注释中的输出我看到你的 /dev/sda5 用于创建一个名为 的 LVM 卷组zorin-vg
,它当前分为两个逻辑卷:一个swap_1
976M 大小的 LV,其余所有似乎都被该root
LV使用。这是一个完全有效的简单配置,尽管我个人可能更喜欢分成/home
一个单独的 LV。但即便如此,这也只是我个人的偏好:我不会认为它太重要。
由于 Zorin OS 显然是从 Ubuntu 16.04 开发的,因此我猜测 LV 上使用的文件系统类型root
最有可能是ext4
。尽管它在性能上并不是绝对最好的,但它可能仍然是 Linux 生态系统中最强大且经过充分测试的文件系统类型。
虽然 465G 对于单 SSD 系统来说是一个完全值得尊敬的大小,但您应该记住,Linux 是为处理可能包括数十 TB 大小的文件系统的服务器系统而开发的:对于任何能够处理该文件系统的现代文件系统,465G 是小而简单。许多 10-15 年前推荐的旧做法开始看起来越来越像不必要的微观管理。将磁盘分割成单独的文件系统的次数越多,您就越容易遇到可用空间不在您需要的地方的麻烦。当您学习新操作系统时,您不需要这种复杂的操作。
既然您说您是 Linux 新手,那么我建议您暂时保留此配置,至少直到您更加熟悉 Linux 及其概念为止。
假设您的root
LV 上的文件系统类型是ext4
,则可以缩小它并使用释放的空间创建另一个 LV,将您的内容复制/home
到新文件系统并将其挂载到当前目录的位置/home
。但是,由于这需要缩小当前的根文件系统(在操作系统运行时无法卸载),并且文件系统可能需要卸载才能进行重大缩小,因此您需要通过从外部介质引导系统来完成此操作,可能是一些 Linux Live CD 或 USB。文件系统成功收缩后,其余步骤可以在 Zorin OS 内完成,无需进一步重新启动:
- 收缩
root
LV(充当根文件系统的容器),除非您已经与收缩文件系统一起执行了此操作(取决于外部启动介质上可用的工具) - 创建一个新的 LV
lvcreate -L <desired size> -n <desired name> zorin-vg
- 使用文件系统初始化(Windows 可能会说“格式化”)新 LV,例如
mkfs.ext4 /dev/zorin-vg/<desired name>
- 将新 LV 安装在临时位置:
mount /dev/zorin-vg/<desired name> /mnt
- 将内容复制
/home
到新文件系统:cp -a /home/* /mnt/
- 卸载临时位置:
umount /mnt
为您的新文件系统创建一个
/etc/fstab
条目:/dev/zorin-vg/ /home ext4 默认 0 2
将现有
/home
目录移到一边并创建一个新的空目录作为挂载点:mv /home /home.old; mkdir /home
- 让系统为您挂载新的文件系统:
mount -a
- 最后,测试一切是否仍然有效并删除
/home.old
目录树。
但正如您所看到的,该过程中有相当多的步骤,如果您是 Linux 新手,我建议您放弃它,直到您对要做什么有更深入的了解。