uefi模式下,使用软raid1+lvm 安装Debian8
最近部署Debian服务器(服务器双硬盘,使用软raid(1)方式,服务器使用uefi启动)。安装过程遇到各种问题(无法启动)。查阅相关资料,将安装过程整理如下,以供参考:
一、准备
1.安装介质(USB、CD均可;镜像选择上,不能使用mini.iso或者"stretch"之前的live版本,这些版本不支持uefi);
2.BIOS设置:禁用可能冲突的设置(如:secure boot, FastBoot, CSM参数);
二、安装
使用安装介质引导系统,磁盘分区之前安装向导正常安装。与传统BIOS启动不同,uefi使用GPT分区表。因此需要确保磁盘分区表格式为GPT,且必须创建EFI系统分区(又叫ESP分区,格式为FAT12/16/32,见参考文档1)。进入“磁盘分区”步骤之后,如果安装程序提示“是否强制uefi安装”,需要选择“是”(这种情况下,是安装程序检测到硬盘上有MBR分区表)。GPT格式分区比较明显的特征是分区结束后可以看到在磁盘开头和结束各有1M左右的空闲空间。选择“手动分区”,然后开始配置分区表;
目标分区方案:16G的交换分区,所有文件都放在一个分区(根分区),(这个方案比较基础,可自行调整)。
分区方法(操作过程没有办法截图,只能尽量描述了):
1.建立空分区表,(依次选中硬盘设备,点击“enter”,提示是否建立空分区表,选择“是”);
2.分别在磁盘开头建立512MB(Debian文档说100M就足够,见参考文章1)的EFI系统分区(分区用途选择"EFI系统分区");
3.分别建立1GB的raid分区(分区用途选择“RAID 物理卷”);
4.选择所有剩余空间建立raid分区;
5.创建2个raid(MD)设备(选择“软件RAID设置”创建MD设备),RAID类型选择“RAID1”,活跃设备分别选择前面设置的大小相等的raid分区;
6.设置RAID1 设备文件系统类型;
设备0(1G):用途选择“ext4日志文件系统”,挂载点选择“/boot”;
设备1(998.7G):用途选择“lvm”
7.配置逻辑卷管理器,创建卷组(“vg0”),然后创建2个逻辑卷(名称自定义,lv_root用于根分区,lv_swap用于交换分区)
8.配置逻辑卷文件系统
lv_root:用途选择“ext4日志文件系统”,挂载点选择“/-根文件系统”;
lv_swap:用途选择“交换分区”
分区设置结束后,继续按照正常流程安装,完成之后重启可进入系统。
三、设置启动项
安装程序默认只将grub安装到第一个硬盘上的系统分区(/dev/sda1),这种情况下,系统只能通过一个硬盘启动,达不到双备份的目的。如果想要通过第二个硬盘启动,直接将第一个硬盘系统分区(/dev/sda1)克隆到第二个硬盘系统分区(/dev/sdb1)即可(使用命令:dd if=/dev/sda1 of=/dev/sdb1)。克隆完成之后,重启可以看到两个启动项。
四、总结
uefi模式下,通过软raid1安装的关键在于分区方法,必须独立设置EFI分区,且不能设置为raid,否则系统将不能识别EFI分区,从而导致无法启动。此外,如果使用lvm,必须创建独立的boot分区(不能包含在lvm,参考Debian安装手册--6.3.3.2.导引式分区)。
参考文章:
1.Install Debian on PC with UEFI firmware
2.How to install Ubuntu server with UEFI and RAID1 + LVM
3.installation of debian wheezy on mdadm raid1 + gpt
4.How to configure software RAID1 during installation process
5.Debian 8 DL380 Gen9 Installation
6.RAID 1 Debian 8 Server Install - YouTube