很多人使用Linux侧重于WSL,或者是安装一个虚拟机,例如vmware,这是在Windows系统上体验Linux又无需调整或影响Windows系统或硬盘最直接和简单的方法。单纯体验没问题,如果是真需要建立自己的专用系统或机器学习之类的特殊应用时,就无法体验到货真价实的Linux系统和折腾的乐趣了。以我最常用使用的Ubuntu和Debian为例说明。这两个都是Debian系的Linux,基本使用方法是通用的。但在具体使用中,还是有很大的差别的。可以这么认为,Ubuntu就是魔改过的Debian,更易于使用。但蛋疼的snap则破坏了Debian的开源开放和包容精神。直到有一天我看到升级后的Ubuntu多了好几个snap用户,瞬间感觉不好起来。于是,彻底删除snap,逐渐转向Debian就成了我的选择。没错,自2019年就使用的Ubuntu 18已退役,转向最新的Debian 13 stable版本。安装Debian不难,中间会碰到硬盘分区的问题。这伙计提供了好几种选择,最简单的一个就是全部文件装在一个分区,通俗讲就是放在一起,不用分哪个占用哪个空间,初学者的选择。还有/home放在一个分区,以及/home、/var和/temp单独分区等好多分区方案,最后一个选项则是手动分区,也就是我使用的分区方法。如何选择和设计这种分区呢,bing和baidu一下,很多,但到真正操作时,我相信你一定会骂人的。真正说一句,一句话足够。如何分区,与硬盘和内存有关。对于GPT格式和MBR分区格式的硬盘,分区方法是不一样的。这是操作系统的事情,需要深入了解才行,但较新的电脑,硬盘都是GPT格式的。EFI分区,也就是引导分区,512M~1G,多了没用SWAP分区,也就是交换分区,>16G内存电脑不需要/分区,也就是安装系统文件的分区,建议40G~60G/home分区,也就是主目录分区,放置自己文件,越大越好,其余硬盘空间四个分区足够了。如果内存足够大,SWAP分区都可以不要,自建并挂载一个swapfile就是软交换分区就行;如果再极端一些,EFI分区都可以不用要,直接把Linux系统的引导文件放置在C:盘Windows系统的EFI分区。但是,如果任何一个系统出点儿问题,处理和修复起来较为麻烦。为什么没有boot分区,不需要。Debian官网有详细技术资料,也是这么说明的。boot分区,也就是引导分区,256M~512M,多了没用SWAP分区,也就是交换分区,>16G内存电脑不需要/分区,也就是安装系统文件的分区,建议40G~60G/home分区,也就是主目录分区,放置自己文件,越大越好,其余硬盘空间也是这么四个分区,不同的就是使用boot分区替换了EFI分区,这是系统引导方式不同导致的。$ df -h
文件系统 大小 已用 可用 已用% 挂载点
udev 7.7G 0 7.7G 0% /dev
tmpfs 1.6G 1.7M 1.6G 1% /run
/dev/sda7 46G 13G 32G 29% /
tmpfs 7.7G 0 7.7G 0% /dev/shm
efivarfs 154K 82K 68K 55% /sys/firmware/efi/efivars
tmpfs 1.0M 0 1.0M 0% /run/credentials/systemd-journald.service
tmpfs 5.0M 8.0K 5.0M 1% /run/lock
tmpfs 7.7G 8.0K 7.7G 1% /tmp
/dev/nvme0n1p1 256M 35M 222M 14% /boot/efi
/dev/sda8 101G 28G 68G 29% /home
tmpfs 1.0M 0 1.0M 0% /run/credentials/getty@tty1.service
tmpfs 1.6G 120K 1.6G 1% /run/user/1000
$ free -h
total used free shared buff/cache available
内存: 15Gi 1.7Gi 12Gi 298Mi 1.6Gi 13Gi
交换: 4.0Gi 0B 4.0Gi
这是一个2019年的T480电脑,Debian 13运行非常稳定。找了很长时间的轻量化Linux版本,现在发现,最靠谱的轻量化版本还是Debian,13版本安装文件只有700M出头,12版本安装文件只有670M左右。
如果全部放在一个分区,后果就是重新安装之后,/home下的文件消失了。而把/home与/目录分开的最大优点就是,重新安装之后挂载一下/home分区,以前的工作完好无损的回来了。
悄咪咪,我又把自己笔记本电脑系统从Ubuntu18.04折腾成Debian 13了。没有采用SWAP分区,而是使用了swapfile,哪天不想用了停用后直接删除即可,比硬件的SWAP分区更简单和直接。