准备工作
确认硬件兼容性
- 检查服务器型号:记录CPU架构(x86/ARM)、主板芯片组及网卡类型,确保目标操作系统支持该配置,戴尔R730需匹配Windows Server或Linux对应版本。
- 存储设备识别:通过BIOS/UEFI查看硬盘接口(SATA/SAS/NVMe),部分老旧服务器可能需要RAID卡驱动注入。
工具与介质准备
| 项目 | 推荐方案 | 备注 |
|---|---|---|
| 启动盘制作工具 | Rufus(Windows)、Etcher(跨平台) | 格式化为FAT32或NTFS |
| ISO镜像来源 | 官网下载最新版 | 校验MD5值防止篡改 |
| 网络环境 | 直连交换机+DHCP预留IP段 | 避免与其他设备冲突 |
| 备用访问方式 | iDRAC/iLO远程管理卡 | 防止主系统崩溃后失控 |
数据备份策略
- 全量快照:使用
dd命令克隆关键分区到外接存储(如dd if=/dev/sda of=/backup/image.img bs=4M status=progress)。 - 配置文件导出:针对数据库服务器,提前导出MySQL/PostgreSQL的结构和权限设置。
实施步骤详解
✅ Step 1: 进入救援模式
- 物理机操作:开机按F2/Del键进入BIOS,将启动顺序调整为U盘优先。
- 虚拟机场景:在vSphere中编辑虚拟机设置→添加CD-ROM→挂载ISO文件。
- 特殊案例处理:若遇到Secure Boot提示,需临时禁用该功能并保存退出。
🔧 Step 2: 磁盘分区规划
| 用途 | 建议大小 | 文件系统类型 | 挂载点示例 |
|---|---|---|---|
| 系统根目录 | ≥40GB | ext4/XFS | |
| 交换空间 | 物理内存×2倍 | swap | |
| 数据存储区 | 根据需求分配 | btrfs(支持快照) | /data |
| EFI引导分区 | 512MB | fat32 | /boot/efi |
⚠️ 注意:GPT磁盘必须创建EFI System Partition才能正常引导UEFI设备。
⚙️ Step 3: 内核参数优化
编辑GRUB配置文件(/etc/default/grub),添加以下参数提升性能:
GRUB_CMDLINE_LINUX="cgroup_enable=cpu,cpuacct,memory,blkio,devices crashkernel=auto resume=/dev/sda3 quiet splash"
更新引导程序:update-grub2(CentOS)或grub-mkconfig -o /boot/grub/grub.cfg(Ubuntu)。
🔗 Step 4: 网络自动化配置
生成云启网元脚本示例(适用于阿里云):

#!/usr/bin/env python3
import os
from cloudinit import sources as ci_sources
from cloudinit.config import Config
from cloudinit.config.schema import MetaSchema
meta = MetaSchema().schema['meta']
config = {
'version': 1,
'datasource': { 'CloudInit': ci_sources.DataSourceCloudInit.ds_config },
'network': {
'version': 2,
'ethernets': {
'ens192': {
'dhcp4': False,
'address': '192.168.1.100/24',
'gateway': '192.168.1.1',
'nameservers': ['8.8.8.8', '114.114.114.114'],
'ntp': { 'enabled': True },
}
}
}
}
Config(config).apply()
保存为/etc/cloud/cloud.cfg.d/99_custom.conf实现开机自动联网。
典型故障排查手册
| 现象 | 可能原因 | 解决方案 |
|---|---|---|
| “No bootable device found” | 未正确设置启动顺序 | 进BIOS调整Boot Order优先级 |
| 安装卡在进度条80%不动 | SCSI驱动缺失 | 手动加载驱动盘上的megaraid.rom |
| SSH连接超时 | firewalld未开放端口 | firewall-cmd --add-port=22/tcp --permanent |
| 时间同步失败 | Chrony服务未运行 | systemctl enable chronyd && systemctl start chronyd |
进阶技巧合集
- 批量部署方案:结合PXE+Kickstart实现无人值守安装,核心配置文件结构如下:
# /var/lib/tftpboot/pxelinux.cfg/default DEFAULT install LABEL install KERNEL images/centos7.kernel INITRD images/centos7.initrd APPEND root=UUID=xxx ... text ks=http://ks.example.com/ks.cfg quiet - 容器化改造:对于Docker宿主机,可预装Podman替代方案以避免命名空间污染。
- 安全加固清单:
- 禁用默认账户密码登录(
passwd -l root) - 启用SELinux强制模式(
setenforce 1) - 删除不必要的服务包(
yum remove telnet)
- 禁用默认账户密码登录(
相关问题与解答
Q1: 如何在不插显示器的情况下判断系统是否成功启动?
A: 通过串口控制台查看启动日志,多数服务器提供RS232接口,使用PuTTY连接COM口即可实时监控输出信息,部分机型支持Web控制台(如HP iLO的Virtual Media功能)。
Q2: 如果目标服务器只有单块硬盘且包含重要数据怎么办?
A: 采用LVM逻辑卷管理实现原地升级,先扩展卷组再创建新分区,最后迁移家目录至新建分区,示例命令:

pvcreate /dev/sdb # 初始化物理卷 vgextend volgroup /dev/sdb # 扩容卷组 lvcreate -L +50G -n newpart volgroup # 新增逻辑卷 mount /dev/mapper/volgroup-newpart /mnt/data # 挂载新分区 rsync -avz /home/user /mnt/data/backup/ # 迁移用户目录
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/121091.html