服务器用久了,重装系统的念头迟早会冒出来。系统被入侵后想彻底清干净,版本老了需要升级,或者测试环境折腾得没人说得清装过什么,都是常见原因。重装本身只是点几下按钮,前后那几步才容易出问题。数据没备份、配置没记下来,实例起不来,回头补救要花更多时间。这篇文章按实际操作的顺序,讲清楚阿里云服务器重装系统前要准备什么、控制台里怎么点、装完后要核对哪些地方。

先确认这次是不是非重装不可
重装会清空系统盘上的全部数据,而且没有回头路。动手前可以先问自己三件事。
- 问题能不能修?服务异常多数时候重启服务、看看日志或调整一下配置就能解决,没必要一上来就重装。
- 数据备份够不够?数据库、网站文件、配置文件和证书都要算进去,少一样,重装后的恢复都可能变得麻烦。
- 新系统能不能跑业务?有些应用只认特定版本的操作系统,选镜像前最好对照应用文档确认。
设想一个常见场景:一台测试服务器用了两年,装过几十个依赖包,版本互相打架,想逐个清理又不知道哪个能动。这种情况下重装往往比修补快。前提是备份做到位,否则重装之后,连原来的东西都找不回来。
重装前要做的五件事
准备工作决定了重装顺不顺利。下面几项最好都做完,再进控制台。
- 做快照备份。系统盘和数据盘分别创建快照,在控制台的“块存储”或“快照”里都能找到并操作。
- 导出数据库。用 mysqldump 或你们在用的对应工具导出数据,文件下载到本地,或者放到对象存储 OSS 里,别只留在这台机器上。
- 记录网络和登录信息,包括安全组规则、弹性公网 IP 的绑定关系、私网 IP、SSH 密钥信息,以及域名解析记录。这些重装后大多要手动核对,记不下来就容易漏。
- 在维护时段停掉业务,避免重装期间还有数据写进去。
- 提前确认镜像。在控制台看一下目标系统镜像是否可用,版本尽量和原环境接近。
快照是回滚的底线。如果新环境上线后出了问题,可以用快照把磁盘恢复回去。所以在新环境稳定运行一段时间之前,别急着删除快照。
控制台里的重装步骤
阿里云 ECS 支持在控制台直接更换操作系统,大致流程如下。不同版本的控制台入口名称会有差别,以页面上的为准。
- 登录 ECS 控制台,进入目标实例的详情页。
- 在“更多操作”里找到“实例设置”或“重新初始化云盘”,再选择“更换操作系统”。
- 选择公共镜像、自定义镜像或共享镜像,设置登录密码,或者绑定已有的密钥对。
- 仔细读弹窗里的提示。弹窗会说明数据将被清除,确认无误后再勾选同意。
- 提交后等待任务完成,实例会重启。完成后用新密码或密钥登录,确认能进入系统。
这里有一个容易忽略的地方。如果实例挂载了数据盘,要看清数据盘会不会一起被清空。有些操作只重置系统盘,数据盘保留;有些操作会连数据盘一起处理。提交之前,逐条对照弹窗说明,别凭印象点确定。
装完之后要检查什么
系统装好,只完成了一半。下面几项建议逐个过一遍。
- 网络方面,公网 IP 能否访问,内网通信是否正常,安全组规则是否已按原配置恢复。
- 基础环境要装上运行时、Web 服务和数据库客户端,版本尽量和原环境保持一致。
- 把数据库和网站文件还原到原来的目录,检查文件权限和属主。权限错了,服务照样起不来。
- 逐个启动服务,启动后看日志,没有报错才算数。
- 安全上修改默认密码,关掉用不到的服务,把系统补丁更新到位。
比如重装后网站打不开,原因常常不在系统本身,而是 Nginx 的配置文件没有还原,反向代理自然就失效了。把关键配置文件纳入 Git 之类的版本管理,下次恢复会省很多事。配置和数据一样重要,都值得留一份记录。
几个常见坑
实际操作中,下面几类问题出现得比较多。
- 重装后 SSH 登不上,多半是密钥没有正确绑定,或者安全组没有放行 22 端口。控制台提供的 VNC 远程连接可以用来排查,不必急着再重装一次。
- 镜像和应用不兼容。部分老应用依赖特定版本的库,镜像选错了会在启动阶段暴露问题。条件允许的话,先在测试环境跑一遍。
- 数据盘没有自动挂载。新盘可能需要重新分区、格式化并挂载,还要写进 fstab。漏掉这一步,重启后数据盘就找不到了。
- 误删快照后无法找回。操作前核对一下快照名称和创建时间,别删错了。
如果服务器承载的是生产业务,尽量安排在低峰期,并提前告知相关人员。短暂中断通常在可控范围内,更容易让人措手不及的,是事先没人知道要停机。
收尾
阿里云服务器重装系统本身不复杂。快照、数据库导出和配置记录做到位,装完再逐项核对,整个过程就是一次有计划的维护。文中的步骤可以直接当作清单使用,具体界面以阿里云控制台当前版本为准。