云服务器切换Linux发行版(如CentOS换Ubuntu)需要手动备份哪些内容?

切换云服务器的Linux发行版(如CentOS换Ubuntu)相当于重装系统,因此需要全面备份。以下是需要手动备份的关键内容清单:


一、系统配置与密钥

  1. SSH密钥与配置

    • ~/.ssh/ 目录(包括 id_rsaid_rsa.pubauthorized_keysknown_hosts
    • /etc/ssh/sshd_config(自定义SSH配置)
  2. 系统网络配置

    • /etc/netplan/(Ubuntu)或 /etc/sysconfig/network-scripts/(CentOS)
    • 防火墙规则:iptables-savefirewall-cmd --list-all(CentOS)/ ufw status(Ubuntu)
  3. 服务配置文件

    • Web服务器:Nginx(/etc/nginx/)、Apache(/etc/httpd//etc/apache2/
    • 数据库:MySQL(/etc/my.cnf)、PostgreSQL(/etc/postgresql/
    • 其他服务:如DNS、XX、监控工具等

二、应用数据与数据库

  1. 网站/应用代码

    • Web根目录(如 /var/www//home/user/app/
    • 环境配置文件(如 .envconfig.php
  2. 数据库备份

    • MySQL/MariaDBmysqldump -u root -p --all-databases > alldb.sql
    • PostgreSQLpg_dumpall -U postgres > alldb.sql
    • MongoDBmongodump --out /backup/mongodb/
  3. 文件存储

    • 用户上传的文件(如图片、文档)
    • 日志文件(如需保留):/var/log/ 中的重要日志

三、用户与权限

  1. 用户数据

    • 用户家目录(/home/ 下的重要数据)
    • 自定义脚本:/usr/local/bin//opt/ 中的工具
  2. 权限与计划任务

    • /etc/passwd/etc/group(如需保留用户信息)
    • /etc/sudoers(自定义sudo配置)
    • 定时任务:crontab -l 导出所有用户的计划任务

四、证书与安全配置

  1. SSL/TLS证书

    • Let’s Encrypt:备份 /etc/letsencrypt/ 目录
    • 自定义证书:/etc/ssl//etc/pki/
  2. 安全工具配置

    • Fail2ban:/etc/fail2ban/
    • SELinux/AppArmor策略(如有自定义规则)

五、备份操作建议

  1. 本地+远程双重备份

    • 将备份文件保存到本地后,上传至对象存储(如AWS S3、OSS) 或另一台服务器。
  2. 验证备份完整性

    • 检查数据库备份是否可恢复:mysql -u root -p < test.sql
    • 对比关键文件的MD5哈希值。
  3. 记录当前环境

    • 运行 dpkg -l(Ubuntu)或 rpm -qa(CentOS)记录已安装的软件包。
    • 记录内核版本:uname -r

六、切换后恢复步骤

  1. 新系统初始化

    • 安装必要软件(如SSH、Web服务器、数据库)。
    • 恢复用户和权限配置。
  2. 数据恢复顺序

    • 先恢复数据库,再恢复应用代码,最后恢复配置文件。
    • 逐步重启服务并测试功能。

注意事项

  • 云服务器特殊配置:检查云平台控制台中的安全组、弹性IP、磁盘挂载等配置是否需调整。
  • 服务依赖:Ubuntu和CentOS的软件包名称、配置文件路径可能不同(如Nginx的默认路径)。
  • 内核兼容性:部分驱动(如云厂商的虚拟化驱动)可能需要重新安装。

建议在操作前创建云服务器快照,并先在测试环境演练恢复流程,确保万无一失。

云服务器