2026/10/5 16:00:44

老服务器安装 Oracle Linux:BIOS、RAID 与系统安装实战

老服务器安装 Oracle Linux:BIOS、RAID 与系统安装实战 简介面向服务器运维人员、系统集成商以及初次接触惠普DL388 G7的管理员一份以图文笔记形式梳理服务器从初始化到Linux安装关键流程的配置手册。内容从F8进入iLO配置讲起涵盖网络地址、用户权限与安全设置随后展开RAID阵列卡设置与BIOS/RBSU中的十多个菜单包括电源管理、标准启动顺序、启动控制器顺序、PCI中断、日期时间、ASR、温度关机、网络唤醒等选项并对虚拟串口、NMI调试按钮、ROM切换、PCI bus padding等易忽略的高级设置做了逐一说明。文档也简要提及Linux安装前的分区与格式化思路。资源包内仅1个PDF文件大小约945KB正文结构清晰适合现场部署、排障或设备上线前快速对照。当前已有1053人学习下载尤其对自行维护老款惠普机架服务器的读者来说能从iLO、阵列到系统安装形成完整操作闭环减少反复摸索和误操作成本。1. 一台2010年的双路老机器凭什么还要写一份安装概要OLI是 Oracle Linux Install 的缩写。见过机房角落里那台 HP DL388 G7 的人多半能体会这个标题在讲什么老双路机器2010 年前后的产物CPU 和内存放到今天做数据库、中间件或虚拟化测试节点依然够用但每次重装都要过三关——BIOS 里那个 VT-x 开关是不是被关掉了、P410i 阵列卡上缓存电池还健康吗、启动模式是 Legacy 还是被拨成了 UEFI。任何一关没过Linux 安装都会变成反复重启的玄学现场。这篇文章适合接手这类旧服务器的从业者从 BIOS 设置一路做到 Linux 安装和验证把每一步的参数和判断标准写清楚照着做就能少踩一轮坑。2. BIOS 设置进 Setup 的时机、虚拟化开关与启动模式2.1 开机按键分配F9 进 SetupF10 进 iLOF11 管启动介质HP ProLiant G7 系列自检界面和后来的 HPE 机器不太一样大体上是一个蓝底白字的字符界面。开机时屏幕会闪过一行提示告诉你按哪个键进哪个界面但往往一闪而过。三个键的分配容易记混F9 进入 ROM Based Setup Utility也就是我们说的 BIOS 设置F10 进 iLO 3 管理界面远程控制台在这里F11 调出一次性启动菜单只改变本次启动设备不进 BIOS。实际的坑是按键时机。G7 自检阶段对 USB 键盘的枚举比较慢如果提示出现了一半才去按 F9键盘还没被控制器识别自然进不去。我一般会在开机后连续多次按 F9或者先按一下空格让 POST 暂停再从容进 Setup。如果你正被“无法进入BIOS界面”这类问题卡住最常见的解决路径是把键盘换到主板后置 USB 口避开前置面板转接板接 KVM 的话先切换过去再重启机器避免共享键鼠在自检阶段抢优先级。这里插一句如果你只是临时从 U 盘启动系统根本不需要进 BIOS。插入写好的安装 U 盘开机按 F11在启动菜单里选择 USB 设备即可。F11 菜单里能看到 U 盘、光驱、硬盘和 PXE 网络启动选错也没关系重启再按一次就好。真正需要进 F9 的场景是下面这几个参数需要动手改。2.2 三个必调参数VT-x、NUMA 与电源策略附参考表第一个必须确认的是 Intel Virtualization Technology也就是我们常说的 VT-x。G7 默认值可能是 Enabled也可能是上一手使用者在某个时刻把它关掉了。如果这台机器日后要跑 KVM、Oracle VM或者作为虚拟化测试节点这个开关不打开装完系统查/proc/cpuinfo会发现没有 vmx 标志虚拟化软件要么装不上要么跑得极其别扭。设置路径在 System Utilities → Processor Options → Intel(R) Virtualization Technology改成 Enabled。顺带看一眼旁边的 VT-d默认 Enabled 就保持默认 Disabled 也建议打开做 PCI 直通时用得上。第二个与装 Oracle 关系更大NUMA。双路 G7 是典型的 NUMA 架构两个 CPU 各自带着内存控制器BIOS 里默认是 Enabled。跑 Oracle 数据库时保持开启配合数据库层的 NUMA 调度内存访问延时更低有人为了省事把 NUMA 关掉结果是所有内存请求都可能跨 Node 访问典型的多路服务器性能反而跑不过单路。路径在 System Utilities → Processor Options → NUMA保持 Enabled。第三个经常被忽略的是电源管理。System Utilities → Power Management Options 里默认可能是 OS Control 或者动态节能。选这类模式Oracle Linux 里的lscpu会看到 CPU 频率来回跳数据库的延迟曲线跟着抖动。做数据库或者跑性能测试我一般会选 Static High Performance Mode代价是整机功耗高一点但频率曲线稳定得多。老机器做稳定环境省那点电费不如换 CPU 性能确定性。这几个参数整理成表方便装机时对着勾BIOS 参数推荐值影响面Intel Virtualization TechnologyEnabledKVM、Oracle VM、VT-d 直通NUMAEnabled双路内存访问本地性数据库延时Power ManagementStatic High Performance ModeCPU 频率稳定性数据库性能Boot ModeLegacy BIOS与 Oracle Linux 7/8 安装器兼容性2.3 启动模式为什么我坚持用 Legacy BIOS 装 Oracle Linux部分 G7 的 ROM 里能找到 UEFI 相关的启动选项默认通常是 Legacy BIOS。我的观点很明确装 Oracle Linux 7/8主动把 Boot Mode 固定在 Legacy。原因有两个一是这一代机器对 UEFI 的支持还停留在“能用但别依赖”的层面UEFI shell、PXE 和部分驱动组合起来偶尔挑固件二是 Linux 安装器在 Legacy 模式下走成熟路径GRUB 安装和修复都有大量现成经验。你如果开机发现 GRUB 菜单不出现先回 BIOS 确认 Boot Mode 有没有被设成 UEFI。设置路径在 System Utilities → System Boot Options → Boot Mode改成 Legacy BIOS 保存重启。顺带把启动顺序里的“USB Diskette on Key/USB Hard Disk”排到第一位还是第二位想清楚——我一般把阵列卡逻辑盘放在第一位U 盘放第二位装完系统拔掉 U 盘直接能从硬盘启动不会因为启动顺序问题卡在黑屏。改完 BIOS 别急着装系统先让机器完整自检一遍。G7 的自检界面会列出 CPU 型号、内存总量、阵列控制器和网卡信息确认硬件都识别到了再进阵列卡配置。这一步花三十秒能避免后面装到一半发现内存条没被识别这种低级问题。3. 板载 P410i 阵列卡RAID 级别选择与菜单操作3.1 P410i 控制器先确认缓存电池再决定 RAID 级别DL388 G7 的板载阵列卡是 Smart Array P410i集成在主板上带 512MB 缓存和一个 FBWC 模块——很多人口语里叫它“电池”其实是一颗超级电容加闪存停电时把写缓存数据刷进闪存。二手机器到手第一个动作应该是查看缓存电池状态。如果模块已经老化或失效控制器会强制把逻辑盘缓存策略降级为 Write Through也就是直写RAID 性能会明显缩水。P410i 支持 RAID 0/1/10/5。对系统盘我的建议永远是 RAID1别在系统盘上碰 RAID5启动性能差且无谓增加写惩罚。数据盘按写负载决定四块盘做 RAID10 安全性高、随机写性能好RAID5 在顺序写入或临时文件场景可用但随机写性能会被校验计算拖累。很多人在这一步纠结“RAID5 容量利用率高”等跑起数据库才发现写延迟难看这时候已经没有后悔药只能重新建组、拷数据。这里还要区分一个概念P410i 控制器本身可以工作在 RAID 模式和 HBA/JBOD 模式。做 OLI 就要先确认控制器处于 RAID 模式否则装系统时可能完全看不到阵列逻辑盘。有的旧机器被人为改过配置把控制器切成了 HBA 直通看起来盘都在但没有任何冗余保护这对生产环境是致命隐患。3.2 用 F8 进入 ORCA创建逻辑盘的标准菜单流程开机自检时屏幕会出现一行提示大意是按 F8 进入 Smart Array 配置工具。这个界面叫 ORCA全称 Option ROM Configuration for Arrays。如果没看到提示大概率是阵列卡的 POST 提示被关闭了先去 BIOS 的 System Configuration 里确认 Embedded Smart Array 的 POST 提示处于启用状态。进入 ORCA 之后创建逻辑盘的流程基本固定选择 Create Logical Drive。选择 RAID 级别。系统盘选 RAID 1数据盘按上一节的原则选。勾选参与阵列的物理盘。界面里会列出每个盘槽位的盘型号和容量注意不要勾错槽位。设置条带大小Strip Size这一步在创建后很难改想清楚再确认。系统提示创建逻辑盘会清空所选物理盘上的数据确认后开始初始化。初始化期间不要断电不要拔盘等进度条走完再退出。创建完成后会看到一个逻辑盘对应到 Linux 里就是/dev/sda。如果你打算做 RAID10ORCA 里要选四块盘它会把盘自动分成两组镜像如果只选两块盘做 RAID1逻辑盘容量就等于单盘容量。容量计算公式很简单RAID1 是单盘容量RAID10 是总容量的一半RAID5 是总容量减一块盘。组之前先用这张表对照一下RAID 级别最少盘数随机写性能可用容量适合场景RAID 12与单盘基本持平50%系统盘RAID 104接近翻倍镜像后条带50%数据库数据盘RAID 53有校验写惩罚67%顺序写、存档3.3 条带大小与缓存策略创建前就要定下来的两件事ORCA 里创建逻辑盘时Strip Size 默认值可能是 256KB。这个参数很多人不关注但对实际负载影响不小。我的选择习惯是数据库 OLTP 这类随机读写偏多的场景选 64KB大文件顺序读、虚拟机镜像存放选 256KB。条带大小的本质是数据在物理盘之间的分布粒度条带越小单次随机 IO 越可能只落在一块盘上条带越大顺序读越容易跨盘并行。选错不会报错但性能特征会差一截。缓存策略是第二个关键点。P410i 有缓存但必须依赖 FBWC 模块。如果电池失效控制器会自动把逻辑盘降级为 Write Through表现为 dd 测速时写磁盘速度很难看fio 4K 随机写可能只剩几十 MB/s。在 ORCA 里查看 Cache StatusOK且策略是 Write Back这是理想状态如果电池模块报 Failed就别强行开 Write Back否则掉电丢数据的责任在自己。装完系统后可以用命令确认完整状态命令我放在第 6 章。还有一个常见的理解误区很多人以为 RAID 组创建完成后条带大小和缓存策略随时能改。缓存策略确实能通过工具调整但条带大小基本定死只能重建逻辑盘。所以装机前花两分钟想清楚负载类型比事后折腾省心得多。4. 从镜像到系统Oracle Linux 安装的分区与驱动处理4.1 用 dd 写 U 盘镜像F11 一次性菜单启动安装拿到 Oracle Linux 镜像之后我习惯在已有的 Linux 机器上用dd写启动盘不依赖 Rufus 之类图形工具。命令很直接# 把 Oracle Linux 8.6 镜像写入 U 盘 # 注意of 后面的设备一定要通过 lsblk 确认别写成系统盘 sudo dd ifOracleLinux-8.6-x86_64.iso of/dev/sdX bs4M statusprogress sync参数说明if是镜像文件路径of是 U 盘设备文件bs4M把每次读写块调到 4MB写镜像速度快得多sync确保数据落盘后再拔 U 盘。这里最危险的坑是设备名写错把系统盘覆盖了。用lsblk看一眼识别出 U 盘对应的设备名再执行 dd。写完之后 U 盘会变成一个混合引导介质Legacy 和 UEFI 机器都能引导。插上 U 盘开机按 F11 调出一次性启动菜单选择 USB 设备。G7 的启动菜单里会列出 U 盘的品牌和型号。如果启动后屏幕停在某个死循环或者直接进硬盘引导回 BIOS 确认 Boot Mode 是 Legacy再把 U 盘在启动顺序里的位置提到硬盘前面。安装界面起来后语言、时区、软件包选择按常规走。软件包这里建议选“最小安装”或者“服务器”不要一上来选带图形界面的完整工作站。Oracle Linux 做服务器环境装完再用dnf补包都来得及多装的图形组件只会增加维护负担。4.2 分区方案/boot 独立、根分区 LVM、swap 留够分区方案是安装阶段最值得花心思的地方。系统盘如果是 RAID1 逻辑盘容量通常在 300GB 到 600GB 之间。这个容量下我的标准做法是/boot独立分区、根分区用 LVM、swap 单独划。给一个 kickstart 风格的分区片段图形安装器里按同样思路走就行# 典型 OL8 服务器安装分区方案kickstart 格式 # 系统盘是阵列卡逻辑盘安装器通常识别为 /dev/sda part /boot --fstypexfs --size1024 part pv.01 --size1 --grow volgroup vg_sys pv.01 logvol / --fstypexfs --vgnamevg_sys --size1 --grow --nameroot logvol swap --fstypeswap --vgnamevg_sys --size8192 --nameswap参数说明/boot给 1GB 是因为内核版本更新会累积文件512MB 在老机器上偏紧张pv.01 --grow把剩余空间全部交给 LVM 物理卷logvol / --grow让根分区吃满剩余空间swap 按物理内存的 50% 到一倍设置这里示例是 8GB适用于 16GB 到 32GB 内存的机器。如果你打算后续跑 Oracle 数据库建议再单独划一个卷给数据目录不要把数据库数据文件和日志混在根分区里否则备份和容量管理都头疼。LVM 布局最大的好处是将来扩容方便。比如数据盘逻辑卷不够用了再加一块物理盘做 RAID1vgextend进现有卷组lvextend扩展逻辑卷不需要停业务。如果安装时图省事直接一个根分区裸用后面要扩容量只能靠备份重灌这是最常见的历史包袱。4.3 安装器读不到阵列盘hpsa 驱动与 inst.dd 兜底P410i 在 Linux 内核里对应的是hpsa驱动Oracle Linux 7 和 8 的内核都自带这个模块正常安装不需要额外加载驱动。如果你碰到安装器里看不到任何磁盘先别急着找驱动排查顺序是回 ORCA 确认逻辑盘状态是 OK而不是 Recovering 或 Failed确认控制器模式是 RAID不是 HBA/JBOD最后才考虑驱动问题。万一安装器确实读不到盘Anaconda 提供了inst.dd引导参数用于在安装阶段加载额外的驱动 RPM。做法是把厂商提供的驱动文件放到另一个 U 盘或本地目录在 GRUB 引导安装内核时追加参数# 在安装引导菜单按 e 编辑内核命令行追加以下参数 # /dev/sdb1 是存放驱动 rpm 的分区driver_rpms 是驱动文件所在目录 inst.dddisk:/dev/sdb1:driver_rpms参数说明inst.dd告诉安装器去指定位置寻找驱动 RPMAnaconda 会把它解压并加载进安装环境。如果你碰上的是第三方 LSI/Avago 系列阵列卡常见做法是去阵列卡厂商的支持页面按型号下对应操作系统的驱动 RPM再用同样的方式加载。这一步的优先级很高——如果安装阶段不加载驱动装完系统再补还要重建 initramfs绕远路。装完之后验证一下驱动是否真的加载了dmesg | grep -i hpsa能看到控制器信息或者直接看/dev/sda是否存在。如果盘符正常系统安装就算真正落地了。下一步是检查阵列健康状态这部分我放到最后一章专门说。5. 避坑这台机器上常见的 5 个典型故障5.1 按键没反应进不了 BIOS 设置界面现象开机时屏幕出现 “Press F9…” 提示但不管怎么按 F9机器还是直接进系统或者停在某个自检画面。原因G7 自检阶段对 USB 键盘的枚举速度慢键盘还没来得及被控制器识别按键已经被丢弃。前置 USB 口或者 KVM 切换器的共享键盘更容易踩中这个问题。解决把键盘插到主板后置 USB 口开机后连续快速按 F9不要按一下等结果。如果手里有 PS/2 键盘用 PS/2 口最稳。远程维护场景进 iLO 3 的远程控制台在虚拟 KVM 里按 F9相当于绕过物理键盘枚举的等待时间。这个技巧同样适用于 F10、F11 和 F8。5.2 断电后阵列组进入 Recovering 甚至 Failed现象机器意外断电再开机进入 ORCA 或系统里逻辑盘状态显示 Recovering有些情况直接 Failed里面数据全没。原因写缓存里还有数据没有落盘FBWC 模块失效无法在断电瞬间把缓存内容刷入闪存控制器只能从物理盘重建一致性。严格说如果缓存策略是 Write Through断电一般不导致丢数据掉电出问题的机器多半是电池失效却仍开着 Write Back。解决日常运维中定期检查 FBWC 状态hpssacli ctrl slot0 show status里能看到 Cache Module Status。重建期间不要拔盘不要关机等它自己同步完。如果盘没坏重建完成就能恢复如果物理盘本身有坏道重建大概率失败这时候只能从备份恢复了。老机器的电池模块建议直接换新淘宝几十块的拆机件都比失效的模块靠谱。5.3 RAID5 写缓存被降级性能看不出是 RAID现象同一批盘RAID5 读速度正常写速度和单块盘直写差不多甚至更慢。原因两个因素叠加RAID5 本身有写惩罚每次写都要读旧校验、算新校验、写数据和校验一个逻辑写要放大成多次物理写如果 FBWC 电池失效缓存策略又被降级为 Write ThroughRAID5 的短板暴露无遗。解决先看电池状态电池 OK 就确认 Write Back 是否开启电池不 OK 就换模块。如果不想换模块数据盘就别用 RAID5RAID10 在直写模式下随机写也要好得多。这属于选型问题重新建组前一定备份数据。5.4 装完系统引导不起来GRUB 菜单不出现现象安装过程一切正常重启后直接黑屏或者停在 “Boot failed” 提示进不了系统。原因最常见有三种一是 Boot Mode 被设成 UEFI但安装介质和 GRUB 实际按 Legacy 方式安装二是启动顺序里 USB 设备优先装完系统拔盘后找不到启动项三是 GRUB 安装时把启动设备写到了错误的盘上。解决回 BIOS 把 Boot Mode 固定为 Legacy启动顺序把阵列卡逻辑盘放第一位。如果是 GRUB 本身写错了用安装 U 盘进救援模式chroot 到系统环境重新执行grub2-install /dev/sda和grub2-mkconfig -o /boot/grub2/grub.cfg。这组命令对所有 RHEL 系发行版都适用。值得注意的是G7 的逻辑盘在安装器里可能不是/dev/sda先lsblk确认盘符再执行否则装了和没装一样。5.5 大容量逻辑盘装完只显示 2TB现象四块 4TB 盘做的 RAID 组逻辑盘容量 16TB但安装器识别出来只有 2TB或者装完系统看分区表只有 2TB 可用。原因Legacy BIOS 模式下安装器如果选择了 MBR 分区表MBR 单分区上限就是 2TB。不是阵列卡的问题是分区表格式的限制。老机器默认不带“自动选 GPT”的智能逻辑需要人手动指定。解决在安装器分区界面选择“自动创建分区”之前先确认磁盘的分区表类型是 GPT。如果是用 kickstart 安装加上clearpart --all --drivessda --initlabelinitlabel会强制把磁盘初始化成 GPT 标签。GPT 模式下 GRUB 需要一块 BIOS Boot Partition安装器会自动创建不用手动干预。注意/boot分区要放在磁盘前 2TB 范围内这对系统盘 RAID1 来说不是问题数据盘的 GPT 大卷不受这个限制。6. 装完不是终点用命令确认阵列与系统状态6.1 hpssacli 三行命令判断阵列健康与缓存策略系统装完后第一条命令应该查阵列卡的整体状态。P410i 对应的管理工具是hpssacli新版工具也常被叫做ssacli命令格式一致# 查看控制器、逻辑盘、物理盘的完整配置 hpssacli ctrl slot0 show config detail # 只看控制器整体状态重点看 FBWC 电池 hpssacli ctrl slot0 show status # 列出所有逻辑盘当前状态 hpssacli ctrl slot0 ld all show status参数说明slot0指第一个阵列卡控制器P410i 默认就在这个位置ld是逻辑盘的缩写pd是物理盘。输出里重点看三处Cache Module Status 是否为 OKLogical Drive Status 是否为 OK每个物理盘 Status 是否为 OK。如果看到 Recovering说明阵列正在重建耐心等待看到 Failed基本确定有物理盘掉线需要进一步看是哪一块盘。缓存策略也要确认一下。show config detail的完整输出里有一行Caching: Write Back配合 Cache Module Status OK就是理想状态。如果显示Write Through性能会有明显损耗。这条命令在之后每次大维护窗口都应该跑一遍不要等出了故障才想起来查。6.2 smartctl 和 dmesg验证系统盘与驱动状态阵列状态确认完还要验证物理盘本身的健康和驱动加载情况。Linux 常用命令里这组检查组合是我每台机器必跑的# 查看系统盘 SMART 整体健康状态 # -H 只看评估结论不会在屏幕上刷大量日志 smartctl -H /dev/sda # 确认内核加载了 hpsa 驱动能看到控制器信息 dmesg | grep -i hpsa # 列出块设备拓扑确认分区和挂载点 lsblk -o NAME,SIZE,TYPE,MOUNTPOINT参数说明smartctl -H读取物理盘的 SMART 健康状态PASSED表示基础健康评估通过。它的局限是只反映过去记录的磁盘内部自检结果不能预测未来坏道所以还要配合dmesg看运行时有没有 IO 错误。dmesg | grep -i hpsa如果没有任何输出说明内核可能没有加载 hpsa需要进一步查是不是驱动被系统更新覆盖了。lsblk是最直观的检查一眼能看到分区、卷组挂载点对应关系确认根分区确实挂载在那个 LVM 卷上。6.3 把整套配置沉淀成一张可复用的安装卡最后给一个习惯每装完一台 G7都把它当时的 BIOS 基线、阵列卡参数、分区方案和验证命令整理成一张安装卡存进团队运维文档。这张安装卡就是那本《HP DL388 G7 做 OLI、RAID、BIOS 设置与 Linux 安装概要》的核心内容后续任何人接手这台机器不需要重新踩一遍坑。安装卡至少包含这几栏项目内容验证方式BIOS 基线Boot ModeLegacy、VT-xEnabled、NUMAEnabled、电源Static High Performance进 System Utilities 逐项核对阵列卡组态RAID1 系统盘、64K 条带、Write Back、电池 OKhpssacli show status系统分区/boot1G、LVM 根分区、swap8Glsblk / df -h网络规划主机名、静态 IP、DNSip addr show验证命令集合上文列出的所有命令逐条执行我第一次在这类老机器上装机时就因为没有把电池状态记进安装卡跳过了告警直接上生产结果一次意外断电后 RAID 重建跑了一整天业务从下午折腾到凌晨。从那以后阵列卡电池和缓存策略永远写在安装卡的第一行。做运维不怕机器老最怕的是同一个坑反复踩把配置基线沉淀成文档至少能让下一个接手的人少走一段弯路。希望帮到你。本文还有配套的精品资源点击获取