迁移 CentOS 系统数据 常见有几种场景,不同场景做法不一样。下面按最常见需求给你一个清晰、可操作的方案汇总。
| 场景 | 建议方案 |
|---|---|
| 同服务器换硬盘 | rsync / dd |
| 服务器之间迁移 | rsync + scp |
| 升级系统(CentOS 7→8/Stream) | 全新安装 + 数据迁移 |
| 迁移到新服务器(云/物理) | 备份 + 恢复 |
| 只迁移网站/数据库 | 单独备份 |
适合:
yum install -y rsync
rsync -avz --progress /data/ root@目标IP:/data/
常用参数说明:
-a 归档模式(保留权限、时间等)
-v 显示过程
-z 压缩传输
-P 显示进度 + 断点续传
--exclude 排除目录
rsync -avz --exclude='cache' --exclude='logs' /var/www/ root@IP:/var/www/
⚠️ 风险极高,会直接复制磁盘
dd if=/dev/sda of=/dev/sdb bs=64K status=progress
✅ 仅适合:
rsync -avz /var/www/html/ root@新服务器IP:/var/www/html/
mysqldump -u root -p --all-databases > all.sql
scp all.sql root@新IP:/root/
mysql -u root -p < all.sql
rsync -avz /etc/passwd /etc/shadow /etc/group root@新IP:/etc/
⚠️ 不建议直接覆盖,容易破坏系统
rsync -avz /etc/nginx/ root@IP:/etc/nginx/
rsync -avz /etc/systemd/ root@IP:/etc/systemd/
CentOS 7 已 EOL(停止维护),建议:
你可以直接告诉我:
1️⃣ 是 CentOS 几?
2️⃣ 是 物理机 / 云服务器?
3️⃣ 迁移到 新服务器 / 新系统?
4️⃣ 主要跑的是 网站 / 数据库 / Docker / 其他?
我可以直接给你一条 可执行命令清单,避免踩坑。