Linux 整机完整备份打包方案(Rocky/CentOS7/8 通用)
Linux 整机完整备份打包方案Rocky/CentOS7/8 通用需求整系统打包所有软件、配置、文件、服务全部保留直接迁移到另一台机器不用重新部署。方案 1tar 整机打包最简单无需额外工具推荐原理把根目录 / 全部打包成压缩包排除系统运行产生的临时、挂载目录避免打包出错、文件损坏。1. 打包命令在系统内执行生成全系统备份包bash# 切换到根目录cd /# 整机打包排除不需要打包的目录tar -zcvp /root/system_full_backup.tar.gz \--exclude/proc \--exclude/sys \--exclude/dev \--exclude/tmp \--exclude/run \--exclude/mnt \--exclude/media \--exclude/root/system_full_backup.tar.gz \/参数说明-zcvpzgzip 压缩c创建包v打印打包文件p保留文件权限关键迁移后权限不混乱排除目录解释/proc/sys /dev虚拟内存文件重启自动生成不用备份/tmp/run临时缓存文件/mnt/media外接硬盘、U 盘挂载盘不需要打包最后一条排除备份包本身防止递归打包2. 备份包转移打包完成后文件在/root/system_full_backup.tar.gz可以通过 U 盘、scp、移动硬盘拷贝到新服务器。3. 新机器恢复完整系统新系统最小化安装同版本 Rocky/CentOS内核大版本一致最好将备份包上传到新机器 /root切换到根目录解压覆盖bashcd /tar -zxvp /root/system_full_backup.tar.gz修复开机引导必做bash# 重建grub引导grub2-mkconfig -o /boot/grub2/grub.cfg# 重建selinux上下文restorecon -Rv /重启服务器所有服务、nginx、docker、自定义脚本、rpm 软件全部和原系统一模一样。方案 2dd 磁盘镜像打包整机磁盘镜像适合完全克隆适合两台服务器硬盘大小完全相同整盘复制无需重装系统。原机器打包用 U 盘启动盘进入救援模式操作不能系统运行时 dd 本地盘bash# 假设系统盘是 /dev/sdadd if/dev/sda of/mnt/usb/system_disk.img bs4M statusprogress新机器写入镜像bashdd if/mnt/usb/system_disk.img of/dev/sda bs4M statusprogress缺点镜像大小等于整块硬盘占用空间极大两台机器硬件不同容易网卡、驱动识别异常方案 3仅备份软件清单 配置轻量备份不打包所有文件如果你不想打包几十 G 整机只记录所有安装的软件后续一键重装导出所有 rpm 安装包清单bashrpm -qa /root/rpm_list.txt打包所有自定义配置目录bashtar -zcvf /root/config_backup.tar.gz /etc /opt /usr/local /home /root新机器一键批量安装所有软件bashdnf install -y $(cat rpm_list.txt)# 解压配置覆盖tar -zxvf config_backup.tar.gz -C /关键注意事项网卡问题两台服务器硬件不一样解压后网卡名称、IP 配置会冲突恢复后修改/etc/sysconfig/network-scripts/ifcfg-xxx修改静态 IPSELinux恢复后一定要执行 restorecon 修复文件上下文否则服务无法启动磁盘空间tar 整机备份包会很大确保 /root 分区空间足够存放压缩包不要在生产业务高峰期打包打包过程读写硬盘会占用 IO业务卡顿