我已经测试 Manjaro 几个月了,现在想测试 Arch。但是,出现了与我在安装 Manjaro 时遇到的问题相同的问题:我应该如何对磁盘进行分区?我有一个 112GB SSD 和一个 1TB HDD,我的系统支持 UEFI。
根据我对如何使用分区的基本了解,我进行了以下设置:
在 /dev/sda (SSD) 上:
- /dev/sda1 安装在 /boot,vfat FS,247MB(48 已使用)
- /dev/sda2 安装在 /, ext4 FS, 110GB (77G used)
在 /dev/sdb(硬盘)上:
- /dev/sdb1 安装在 /tmp,ext4 FS,16GB(使用 49M)
- /dev/sdb2 是我的交换空间,8GB
- /dev/sdb3 安装在 /var,ext4 FS,16GB(使用 9.4GB)
- /dev/sdb4 安装在 /home,ext4 FS,878GB(使用 260GB)
此配置运行良好,尽管存在一些问题:
- 我的 /var 太小,由于 pacman 缓存而导致我出错
- 由于 SWAP 很少使用,并且 SSD 不再像以前那样“脆弱”,将 SWAP 放在 SSD 上不是一个好主意吗?
- 如果我想更换更大的 SSD 怎么办?如果 /etc 在 SSD 上,它不会破坏系统吗?
- 我从来没有得到确认这是最佳的(肯定是因为它不是)。
我寻找答案并找到了一些帖子(尤其是在 reddit 上),但其中大多数已经有好几年了。我还查看了 Arch wiki,但我在安装页面和SSD 页面上都找不到我想要的东西。
你会怎么想?你会做一个更复杂的分区方案(指定 /etc 应该安装在哪里,等等......)?是否有一些基本的常见错误需要避免?
您的设置还不错,但可以优化:
/boot
是正确的选择,因为这将加速启动过程。/
也很好地放置在 SSD 上,使您能够快速启动程序。/tmp
RAM 上(参见这个答案,在 Unix&Linux Stackexchange 上)。通常它不会增长到超过几百 MiB。8 + sqrt(8) = 11
)。但是,如果您的系统开始交换,您希望交换尽可能快。因此,您也应该将它放在 SSD 上。/var
分区的意义。我能想到的唯一原因是退化的日志文件。因此,我建议将/var/log
其放在 HDD 上自己的分区上。512MiB 应该绰绰有余。/home
。如果你去实施我的建议,你很可能必须从头开始。在这种情况下,您绝对应该看看Logical Volume Manager aka LVM。LVM 使您能够轻松地扩大和缩小分区,而无需重新安装整个系统。
因此,我为您的机器建议的设置是:
/tmp
分割/boot
分区ssd
卷组/
根分区,包括/var
hdd
卷组/var/log
分区/home
分割如果您有一台防盗的便携式机器,您还应该考虑加密(即在LUKS容器上设置两个卷组,也就是加密的 LVM)。
没有满足每个人需求的最佳磁盘分区方法,但我可以根据您告诉我的内容提出一些建议。
1.移
/home
回SSD您的
/home
目录当前对于 SSD 来说太大了,因此您已将其放在 HDD 上。如果你/home
和我一样,大部分空间都被电影、音乐和照片占据了。/home
您可以通过将这些不常访问的大文件移动到 HDD来缩小大小。为什么要这样做?因为
/home
. 每次您的程序运行时,它们都会读取这些配置文件,这意味着它们必须使用慢速硬盘。如果您的程序不依赖于 HDD,它们将更快地启动和运行。2.不要放在
/tmp
硬盘上Arch 和 Manjaro 默认会格式化
/tmp
为 tmpfs。这意味着文件只存在于 RAM 和交换空间中。当你重新启动时,/tmp
被清除。除非您的 RAM 非常有限,否则您不需要安装/tmp
在 SSD 或 HDD 上。3.
/var
如果可能,移动到 SSD/var
当您的系统运行时,会进行大量写入。由于/var
在 HDD 上,因此您的程序会等待慢速写入。9.4 GB,你的/var
目录有点大,这让我觉得有机会清理一些垃圾。这些/var
子目录是查找可删除的大文件的好地方。4.(可选)消除交换分区
这是有争议的,但如果你有很多 RAM,你可以考虑省略掉交换分区。我个人几年前就停止使用 swap 并且没有遇到任何问题。交换的论点是它可以帮助系统更优雅地处理低内存情况。
结论
这是一个简单的分区布局,我认为值得努力: