一、安装系统
一般来说安装操作系统是程序员的基本能力。但安装操作系统是一个没有啥含量却又让人头大的事情,Windows还好说一些,基本上下一步下一步就可以了。即使有分区这种情况,相对来说还是比较简单的,毕竟容易为普通人好理解。
麻烦的是Linux下的相关处理,但对于不少人其实也没啥感觉,因为大多数人在安装时没有什么特殊要求,都是选择由安装软件自动处理。但其中的硬盘分区,估计不少的程序员没有搞过,特别是手动对磁盘进行LVM分区。这次,就主要以手动处理方式来进行系统安装中的磁盘分区,以Debain12安装为例。
此处的需求是要对/home,/usr,/var,/,swap,temp等指定挂载分区并设置分区的大小。安装的硬盘以SSD 1T硬盘为例。
具体的要求举例:
/:200G
/home:560G
/usr:100G
/var:100G
/tmp:20G
/swap:20G
当然可以将srv,opt,bin.dev等都提前设置好。
二、Debain安装过程
1、首先从官网下载Debain12.9
在地址:https://www.debian.org/download 可下载相关的ISO文件,请根据自己的实际情况进行下载,一般PC机安装使用 debian-12.9.0-amd64-netinst.iso,直接下载即可。
2、制作安装盘
此处只介绍U盘启动盘的制作,其它方法请参看官网的说明(https://www.debian.org/CD/faq/#write-usb),U盘制作启动盘的方法如下:
a) 第一种方法,在终端中执行:
sudo umount /dev/sdb #需要先卸载已挂载的U盘,此处可能需要
cp debian-12.9.0-amd64-netinst.iso /dev/sdb (即U盘的设备名,请根据自己实际情况处理,可使用fdisk -l或类似的命令查看 ),最后执行:rsync 等待完成即可
b) 第二种方法,在终端中执行:
sudo umount /dev/sdb #需要先卸载已挂载的U盘
sudo dd if=debian-12.9.0-amd64-netinst.iso of=/dev/sdb bs=16M status=progress oflag=sync
c)使用一个存在的Debain系统,利用Disks工具(设置-硬盘工具中),进行Restore imaging到U盘即可
当然制作的方法还有很多种,各种写入工具其实都是可以的,此处只介绍不用安装其它工具的应用的最简单的方法。
3、U盘启动
U盘启动根据安装的机器不同有不同的方法,此处只介绍一下,请根据实际的情况(如本次使用的F12或DEL键进入BIOS设置或启动管理器)设置U盘启动即可,F10保存后自动重启,即可进入U盘引导。
4、开始安装
开始安装的前几部分,都非常简单,主要是以是否安装界面、语言、时区、键盘、计算机的名称、域名、Root的密码设置、普通用户创建和密码设置。下来才是本文最主要说明的部分,即磁盘的处理。
a)首先看到分区的界面如下(说明一下,这里图中仍然使用的是128G的SCSI硬盘,和1T的类似,只是名字有所不同。):
先解释一下上图中几个选项的意思:
Guided-use entire disk:向导-直接使用整块磁盘
Guided-use entire disk and set up LVM:向导-使用整块磁盘并使用LVM,LVM(Logical Volume Mananger)逻辑卷管理,可对磁盘进行弹性管理
Guided-use entire disk and set up encrypted LVM:向导-使用整块磁盘并使用加密的LVM
Manual:手动模式
前三种都是自动分区,自动挂载,一般情况下,使用第一和第二种即可。第三种需要在一些比较安全的情况下。此处选择手动。
b)分区
如果硬盘是一个老的硬盘,可能其中已经进行了分区并格式化,此时如果需要重新分区,则需要删除原分区并按要求进行格式化;如果是全新硬盘则直接分区并格式化即可:
上图中的标题是"Partition disks:硬盘分区",说明内容为"This is overview of your currently configured partitions and munt points.Select a partition to modify its settings(filesystem,mout point,etc.),a free space to create partitions,or a device to initialize its partition table.这是您目前已配置的分区和挂载点预览,请选择一个分区以修改其设置(如文件系统、挂载点等),或选择一块空闲空间以创建新分区,又或选择一个设备以初始化其分区表"。
这块说明非常重要,它说在此处可进行文件系统的分区、挂载等操作,重点其实也就在这里。
再看的功能列表。上图中共分为四块,最上面一块是指功能选项:
Guided partitioning:分区向导,这个和自动分区没啥太大区别
Configure software RAID:配置软件磁盘阵列,一般办公和开发用不到,服务器才可能用到,需要多块硬盘。
configure the Logical Volume Manager:配置逻辑卷管理器,支持动态调整分区大小、快照和跨磁盘存储等高级功能,比较复杂,但已经支持的很好,建议使用
Configure encrypted volumes:配置加密卷,分区加密用来保护数据安全,启动时需要输入密码,可能会降低一些性能,密码丢失可能会导致数据丢失
configure iSCSI volumes:配置iSCSI存储:(通过网络连接远程 iSCSI 存储设备-将网络存储挂载为本地磁盘),一般应企业级存储或本地无盘的客户端使用,对网络要求较高
中间几块是硬盘的情况,如果是SSD则会显示SSD硬盘,如果是SCSI则显示SCSI硬盘,如果二者皆有,则二者皆显示。最下面又是功能模块:
Undo changes to partitions:撤消对分区的修改
Finish partitioning and write changes to disk:结束分区并将修改写入磁盘
此处需要进行的操作是,先择第三项-configure the Logical Volume Manager,点击"Continue":
有两种情况:
删除原有分区:点击中间硬盘中的分区(不要点击硬盘的标题)如#1 primary,点击下面的"continue"进入"磁盘分区"后可看到"擦除分区数据","删除此分区"等操作,选择"删除此分区"即可。然后不断操作,将所有分区删除。
创建分区:点击图中的硬盘分区的硬盘,创建点击"create volume group","Continue",按下面的要求填写相关内容(如名字等)创建LVM卷组;然后再点选中组,选择"create logical volume",填写相关内容(如大小等)即可分区成功。

创建分区时有两个比较特殊的,一个是EFI分区,一个是Swap分区,它们可以在创建分区时直接点击选中。EFI分区要求至少300M,建议给1G。

分区后回到分区界面上,仍然如"删除分区"一样选择分区,点击"Continue",但此时不选择下面的功能选项,直接配置分区的选项即可。如将文件系统类型(特别是EFI系统分区和Swap交换分区在此处指定)选好,如Ext4,挂载点则可添加上面预设的挂载点,也就为相关的路径分配了具体的大小。即将逻辑大小和物理大小进行了映射。这在某些特殊情况下,如安装一些需要大交换区或tmp区以及对/usr,/等有具体大小要求的系统非常有帮助。

注意:简要说明一下如果选择Guided partitioning,会出现三个选项:
All files in one partition(recommended for new users):所有的文件都位于一个分区中,一般来说推荐使用这个
Separate /home partition:单独设置home分区
Separate /home,/var,and /tmp partitions:单独设置home分区,var分区以及tmp分区
后两者的意思是如果单独设置了这些分区,则在重做系统时保持这些分区,这和Windows重装时只影响C盘的道理有些类似。这三种对安装来说影响不大。
c)完成分区
回到磁盘分区的界面,选择最后一项,Finish partitioning and write changes to disk:结束分区并将修改写入磁盘,然后选择"是",即可进入后期的安装。
5、后期安装
后期安装包括镜像源(可以选用DVD安装源也可以使用网络源,反正安装后都得修改成为国内的镜像源),预装哪些软件,一般得选择SSH服务。
更多的细节内容可参看官方文档:
https://www.debian.org/releases/stable/i386/ch06s03.zh-cn.html#di-partition
三、总结
记得当初安装系统时,看到LVM还有组、卷什么的,当时就晕了。为了赶进度,只好回到自动分配。不过当对Linux系统越来越熟悉后,还是想手动搞一把,上面就是对手动安装过程的一次总结,可以为大家的借鉴。网上很少有这种手动处理的过程,也算是一种总结供大家参考吧。