服务器系统重装教程:Windows Server与Linux安装完整步骤

服务器系统重装是机房运维中最常见、也最容易踩坑的操作之一。无论是系统崩溃需要恢复、服务器被入侵后必须重做环境,还是业务需求需要从Windows Server切换到Linux(或反向切换),都离不开一次规范的重装流程。一次成功的服务器系统重装,不只是把系统装上那么简单,它涉及数据备份、启动介质准备、RAID驱动识别、分区规划、系统初始化等多个环节,任何一个步骤疏忽都可能导致数据丢失或服务器无法启动。本文将从原理到实操,完整讲解Windows Server安装与Linux(Ubuntu/CentOS)安装的全流程,帮助你一次装好、安全上线。
一、重装前必做的备份工作
重装系统会清空系统盘上的全部数据,如果服务器采用单盘或系统盘与数据盘未做物理隔离,那么数据盘也可能受影响。因此,备份是服务器系统重装前最关键的一步,没有之一。一次完整的备份应覆盖:业务数据、数据库、配置文件、网站源码、SSL证书与密钥、定时任务脚本、系统服务清单等。
1. 数据备份清单
不同业务侧重点不同,但以下对象几乎在所有服务器重装场景下都需要备份。建议按下表逐项核对,确认无遗漏后再开始重装。
| 备份对象 | 常见位置 | 备份方式 |
|---|---|---|
| 数据库(MySQL/SQL Server) | /var/lib/mysql 或数据目录 | mysqldump 导出SQL / 备份文件 |
| 网站源码 | /var/www、C:\inetpub | tar打包 / 复制到外部存储 |
| 配置文件 | /etc、C:\Windows\System32\config | 整目录复制归档 |
| SSL证书与密钥 | /etc/ssl、IIS证书存储 | 导出PFX / 复制pem/key |
| 定时任务与服务清单 | crontab、systemd单元 | 导出文本记录 |
| 用户与权限信息 | /etc/passwd、/etc/shadow | 记录关键账号与组 |
2. 数据库备份命令示例
下面以Linux下MySQL备份为例,演示从导出到远程传输的完整流程。备份完成后,务必将文件复制到另一台服务器或移动硬盘,避免重装时同盘数据被一并清空。
# 导出全部数据库为SQL文件
mysqldump -u root -p --all-databases --single-transaction > /backup/all.sql
# 打包网站目录为压缩包
tar -czvf /backup/www.tar.gz /var/www
# 备份关键配置目录
tar -czvf /backup/etc_backup.tar.gz /etc/nginx /etc/mysql
# 将备份传输到远程机器保存
scp /backup/all.sql root@192.168.1.100:/backup/
对于Windows Server,可使用Windows Server Backup工具进行整机备份,或手动复制关键目录到外接硬盘。SQL Server建议使用SSMS导出.bak文件。备份完成后,建议记录备份文件清单和存放位置,方便重装后核对恢复。
二、启动盘制作工具对比
服务器系统重装通常通过U盘启动盘或服务器自带的IPMI/KVM远程挂载ISO镜像来实现。物理机房操作多用U盘,远程管理则依赖IPMI虚拟介质。无论哪种方式,都需要先制作一个可引导的系统安装盘。下面对比几款主流启动盘制作工具,帮助你根据场景选择。
| 工具 | 适用平台 | 适用系统镜像 | 特点与推荐场景 |
|---|---|---|---|
| Rufus | Windows | Windows/Linux ISO | 轻量免费,支持UEFI/GPT与Legacy,写入速度快,单系统首选 |
| Ventoy | Windows/Linux | 多镜像共存 | 可放多个ISO,启动时选择,适合运维多系统维护 |
| UltraISO | Windows | 各类ISO | 经典写入工具,兼容性好,但需付费 |
| dd命令 | Linux/macOS | Linux ISO | 命令行直接写入,适合无图形界面环境 |
| balenaEtcher | 跨平台 | Linux ISO | 界面友好,适合新手,但速度一般 |
Linux下用dd制作启动盘
在Linux环境下,dd是最直接的写入方式。它将ISO镜像按字节复制到U盘,无需额外软件。但dd操作不可逆,务必先确认U盘设备名,一旦写错设备名可能覆盖系统盘造成灾难。
# 先确认U盘设备名(通常是 /dev/sdb 或 /dev/sdc)
lsblk
# 卸载U盘已挂载的分区
umount /dev/sdb1
# 写入ISO镜像到U盘,bs=4M加快速度
sudo dd if=/path/to/ubuntu-server.iso of=/dev/sdb bs=4M status=progress
# 同步缓存,确保数据写完
sync
提示:Windows下推荐使用Rufus,选择镜像后注意分区类型(GPT对应UEFI启动,MBR对应Legacy启动),与服务器BIOS设置保持一致,否则可能出现U盘无法引导的情况。
三、RAID驱动加载
服务器通常配置RAID阵列(如RAID 1、RAID 5、RAID 10)以提升性能和冗余能力。RAID由独立的硬件控制器管理,操作系统需要对应的驱动才能识别底层磁盘。安装系统时如果"选择磁盘"界面看不到任何硬盘,绝大多数情况是缺少RAID驱动,而非硬盘损坏。
1. 常见RAID控制器
- LSI/Broadcom MegaRAID:戴尔PERC、联想ThinkSystem常用,需加载megaraid_sas驱动
- Adaptec系列:部分品牌机和老款服务器使用,驱动名为aacraid
- Intel RSTe / VROC:Intel平台软RAID,新型号需VROC模块授权
- HP Smart Array:惠普服务器专用,驱动为hpsa
2. 加载驱动步骤
以Windows Server安装为例:进入"你想将Windows安装在哪里"界面后若看不到磁盘,点击左下角"加载驱动程序",浏览到厂商提供的驱动U盘(通常是软盘镜像或解压后的文件夹),选择对应控制器驱动,加载完成后磁盘即可正常显示。建议提前从服务器厂商官网下载对应型号的驱动包并解压备用。
Linux安装时,主流发行版通常已内置常见RAID驱动(如Ubuntu内置megaraid_sas、hpsa等)。若仍无法识别,可在引导界面按e编辑启动参数,手动加载驱动模块,或使用厂商提供的定制安装镜像。最佳实践是采购服务器时向厂商索取驱动ISO,可省去大量排查时间。
四、Windows Server 2022安装步骤
Windows Server是企业级服务器的主流操作系统,广泛应用于IIS网站、Active Directory、SQL Server等场景。Windows Server安装流程相对图形化,操作直观,但需要注意版本选择和分区规划。下面以Windows Server 2022为例,讲解完整安装步骤。
- 引导启动:将启动盘插入服务器(或通过IPMI挂载ISO),开机进入BIOS设置启动顺序为U盘/光驱,保存重启后从安装介质引导。
- 选择语言与区域:进入安装界面后,选择语言、时间和键盘布局,点击"下一步"。
- 开始安装:点击"现在安装",输入产品密钥(可点击"我没有产品密钥"跳过,安装后再激活)。
- 选择版本:根据需求选择标准版或数据中心版,并选择是否带桌面体验(带GUI)或仅核心版(Server Core,更轻量安全)。接受许可条款。
- 选择安装类型:选择"自定义:仅安装Windows(高级)",进入磁盘选择界面。
- 加载RAID驱动(如需要):若看不到磁盘,点击"加载驱动程序"加载厂商驱动。
- 分区与安装:选择目标磁盘,可点击"新建"创建分区并格式化,然后点击"下一步"开始复制文件。
- 自动重启与设置密码:系统自动复制文件并多次重启,进入设置界面后设置管理员(Administrator)密码。
- 登录与配置:按Ctrl+Alt+Del登录,通过"服务器管理器"添加角色和功能(如IIS、Hyper-V等)。
Windows Server分区规划建议
合理的分区规划能提升后续维护效率,便于备份与扩容。建议将系统与数据分离,避免系统盘空间被业务数据占满导致服务异常。
| 分区 | 建议大小 | 用途说明 |
|---|---|---|
| 系统恢复分区(EFI/Recovery) | 100-500MB | 系统自动创建,用于引导和恢复 |
| 系统盘 C: | 100-200GB | 安装操作系统和应用程序 |
| 数据盘 D: | 剩余空间 | 存放网站、数据库、日志等业务数据 |
| 备份盘 E:(可选) | 按需 | 本地短期备份,仍需异地备份 |
Windows Server安装完成后,建议立即通过Windows Update安装最新累积更新和安全补丁,并配置Windows防火墙仅放行必要端口。对于生产环境,Windows Server安装后的第一件事是打全补丁,避免暴露已知漏洞。
五、Ubuntu Server安装步骤
Ubuntu Server是当前最流行的Linux服务器发行版之一,广泛应用于Web服务器、容器宿主、云原生应用等场景。Ubuntu Server采用Subiquity安装器(新版基于Curtin),支持命令行交互式安装。下面以Ubuntu Server 22.04 LTS为例讲解。
- 引导启动:从启动盘引导,在GRUB菜单选择"Install Ubuntu Server"(或"Try or Install Ubuntu Server")。
- 选择语言与键盘:建议选择English,避免后续终端中文乱码问题;键盘布局选择Chinese或US。
- 配置网络:选择网卡接口,配置DHCP自动获取或手动设置静态IP、网关、DNS。生产环境建议配置静态IP。
- 配置代理与镜像源:代理一般跳过;镜像源建议替换为国内源(如阿里云、清华源)以加速安装。
- 磁盘分区:选择安装磁盘,可使用整盘或LVM方案。LVM支持后续动态扩容,推荐生产环境使用。
- 创建用户:设置用户名、主机名和密码,系统会自动创建同名管理员账户(可通过sudo提权)。
- 启用SSH:勾选安装OpenSSH Server,这是远程管理的基础,务必勾选。
- 选择附加软件:可选Docker、LAMP等预装包,也可装好后再按需安装。
- 等待安装并重启:安装完成后拔出U盘,重启后用刚才创建的账户登录。
手动分区示例
对于有特殊分区需求的服务器,可手动规划分区。以下是一个适合中小型Web服务器的分区方案,兼顾引导、系统和数据隔离。
# 分区规划(示例,适用于100GB系统盘)
/boot/efi 512MB # EFI引导分区(UEFI必需)
/boot 1GB # 内核与引导文件
/ 50GB # 根分区,系统与软件
swap 8GB # 交换分区(内存大于16GB可适当减小)
/data 剩余空间 # 数据分区,存放业务数据
说明:UEFI模式下必须有EFI分区(FAT32格式);swap大小一般等于内存,大内存服务器可减半;/data单独分区便于备份和重装时保留数据。
六、CentOS/RHEL安装步骤
CentOS和RHEL(Red Hat Enterprise Linux)使用Anaconda安装器,界面与Ubuntu有所不同,但核心流程相似。由于CentOS 8已停止维护,新部署建议使用CentOS Stream 9、Rocky Linux或AlmaLinux等兼容RHEL的发行版。下面以通用流程说明。
- 引导启动:从启动盘引导,在启动菜单选择"Install CentOS Stream 9"(或对应发行版)。
- 选择语言:进入图形安装界面,选择安装语言(建议English)。
- 配置安装目标:点击"Installation Destination",勾选目标磁盘,选择分区方案(自动或自定义)。如需手动分区,选择"Custom"进入手动分区界面。
- 设置网络:点击"Network & Host Name",开启网卡并配置静态IP,设置主机名。
- 选择软件包:点击"Software Selection",选择基础环境(如"Server"或"Minimal Install")。最小化安装更安全,后续按需装包。
- 设置root密码与用户:点击"Root Password"设置管理员密码,点击"User Creation"创建普通用户。
- 开始安装:确认配置无误后点击"Begin Installation",等待安装完成后重启。
RHEL与CentOS Stream步骤几乎一致,区别在于RHEL需要订阅注册(subscription-manager)才能使用官方源和更新。Rocky Linux和AlmaLinux作为CentOS的社区替代,安装流程完全兼容,可直接套用上述步骤。
RHEL/CentOS分区建议
RHEL系发行版默认使用LVM管理分区,建议保留默认LVM方案,便于后续扩容。最小化安装只需/boot、/和swap,数据盘可在安装后使用lvextend或挂载独立磁盘。
七、分区规划通用建议
无论安装哪种系统,合理的分区规划都是服务器长期稳定运行的基础。分区不当可能导致系统盘空间不足、数据无法隔离、备份困难等问题。以下是通用建议:
| 原则 | 说明 |
|---|---|
| 系统与数据分离 | 系统盘只装系统和软件,业务数据放独立分区或独立磁盘 |
| 预留扩容空间 | 使用LVM(Linux)或动态磁盘(Windows),方便后续扩容 |
| 日志独立分区 | 大流量服务器建议将/var或日志目录单独分区,避免日志撑爆系统盘 |
| swap合理设置 | 内存8GB以下swap等于内存,16GB以上可设为内存一半 |
| EFI分区必备 | UEFI引导模式必须有FAT32的EFI系统分区(约512MB) |
八、安装后初始化配置
系统装好后,还不能直接上线生产。必须完成一系列初始化配置,才能保证服务器的安全性和可用性。以下是服务器系统重装后的标准初始化清单:
- 更新系统补丁:第一时间安装安全更新。Ubuntu执行
sudo apt update && sudo apt upgrade,CentOS执行sudo dnf update。Windows Server通过Windows Update或PowerShell命令Install-WindowsUpdate更新。 - 配置防火墙:仅放行业务必需端口。Linux使用ufw或firewalld,Windows配置高级安全防火墙规则。默认建议只开放22(SSH)、80/443(Web)、3389(RDP,建议改端口)。
- 修改SSH默认端口:将SSH端口从22改为高位端口(如50022),可大幅降低被自动化扫描爆破的风险。同时禁用root远程登录,改用密钥认证。
- 创建普通用户:避免直接使用root或Administrator远程登录,创建普通管理员账户并通过sudo提权,便于审计和权限控制。
- 配置时间同步:安装chrony或ntp服务,确保服务器时间准确,避免证书校验和日志时间错乱。
- 恢复备份数据:按备份清单逐项恢复数据库、网站源码、配置文件,恢复后验证服务是否正常运行。
- 配置监控与告警:安装监控Agent(如Zabbix Agent、Prometheus Node Exporter),接入运维监控平台。
九、常见问题排查
服务器系统重装过程中难免遇到各类问题,下表汇总了高频故障及排查思路,供实操时参考。
| 问题现象 | 可能原因 | 解决方法 |
|---|---|---|
| 安装时看不到硬盘 | 缺少RAID驱动或磁盘模式设置错误 | 加载厂商RAID驱动;BIOS中切换AHCI/RAID模式 |
| U盘无法引导 | 启动模式与分区表不匹配 | UEFI对应GPT,Legacy对应MBR;重新制作启动盘 |
| 安装后无法联网 | 网卡驱动缺失或IP配置错误 | 安装厂商网卡驱动;检查IP、网关、DNS配置 |
| 忘记root/Administrator密码 | 密码遗失 | Linux进入单用户模式重置;Windows用安装盘进入命令行替换utilman |
| 系统反复重启 | 引导配置损坏或驱动冲突 | Linux用grub rescue修复;Windows用bcdboot重建引导 |
| 安装卡在某个进度不动 | 镜像损坏或硬件故障 | 重新下载校验ISO;检查内存和硬盘健康状态 |
| 分区后无法安装 | 分区表类型不匹配 | 清空磁盘重新分区,确保分区表与启动模式一致 |
总结
服务器系统重装看似简单,实则涉及备份、介质、驱动、分区、初始化等多个环节。规范的流程是:先完整备份数据,再准备合适的启动盘,确认RAID驱动可用,按系统类型执行Windows Server安装或Linux安装,装完后完成补丁更新、防火墙配置、用户创建等初始化工作。掌握这套流程,无论面对物理服务器还是云服务器,都能从容应对。再次强调,服务器系统重装的核心是"先备份、再操作",任何跳过备份的重装都是对数据的不负责任。
