Linux VPS 如何迁移到新服务器?2026 最新 rsync 教程:几乎 1:1 无损迁移网站、Docker 和数据

发布时间:2026/6/29 17:48:03
Linux VPS 如何迁移到新服务器?2026 最新 rsync 教程:几乎 1:1 无损迁移网站、Docker 和数据 为什么推荐用 rsync 迁移 VPS如果你准备更换 VPS 服务商或者刚买了一台新的 Linux VPS相信第一个想到的问题就是旧服务器的数据怎么迁过去很多人会选择重新部署环境、重新安装软件再一点点恢复数据。但实际上对于大多数 Linux VPS 来说并不需要这么麻烦。今天介绍一种非常经典的迁移方式——使用 rsync 将旧 VPS 几乎 1:1 同步到新 VPS。这种方法适合网站迁移、博客迁移、更换 VPS 服务商、升级服务器配置等大多数场景。它能够同步绝大部分文件和配置相比重新部署环境可以节省大量时间。当然rsync 并不是万能方案。如果你的服务器使用了 cPanel、Plesk、Kubernetes 等复杂环境更建议优先使用官方提供的迁移工具。哪些情况适合使用 rsync如果你的服务器属于下面这些情况那么 rsync 基本都能胜任更换 VPS 服务商VPS 到期准备迁移升级服务器配置网站、博客迁移LNMP、LAMP 环境迁移Docker 数据迁移普通 Linux 应用迁移如果只是迁移某一个网站或者某个应用也不一定需要整机复制可以只同步对应目录这样速度会更快。开始前需要准备什么正式开始之前请先确认下面几点。一台旧 VPS源服务器一台新的 VPS目标服务器两台服务器都可以正常 SSH 登录两台服务器都已经安装 rsync新旧 VPS 必须使用相同的 Linux 发行版和版本例如Ubuntu 22.04 → Ubuntu 22.04Debian 12 → Debian 12Rocky Linux 9 → Rocky Linux 9不要跨发行版也不要跨大版本迁移否则很容易出现兼容性问题。可以执行下面命令查看系统版本cat/etc/os-release如果两台服务器显示的版本一致就可以继续下一步。安装 rsyncUbuntu、Debiansudoaptupdatesudoaptinstallrsync-yCentOS、Rocky Linux、AlmaLinuxsudoyuminstallrsync-y第一步创建排除列表虽然 rsync 可以同步整个系统但并不是所有文件都应该复制到新服务器。例如临时文件日志文件缓存网络配置主机名SSH Host KeyUUIDboot 信息这些内容一般都会在新系统重新生成如果直接覆盖反而可能导致启动异常或者网络故障。首先创建一个排除文件nano/root/excludedfiles.txt然后把下面内容复制进去/etc/fstab /etc/sysconfig/network-scripts/* /etc/systemd/network/* /etc/network/* /etc/netplan/* /etc/NetworkManager/* /etc/resolv.conf /etc/hostname /etc/hosts /etc/machine-id /var/lib/dbus/machine-id /proc/* /tmp/* /sys/* /dev/* /mnt/* /boot/* /boot/grub/* /etc/default/* /run/* /var/run/* /var/lock/* /media/* /lostfound /swapfile /swap.img /var/lib/rpm/* /var/lib/yum/* /etc/sysconfig/iptables /etc/iptables/rules.v4 /etc/iptables.rules /var/lib/iptables/rules-save /etc/ssh/* /var/crash/* /var/log/* /var/cache/apt/* /var/lib/apt/lists/* /var/lib/cloud/* /sys/class/dmi/id/product_uuid /etc/udev/* /lib/modules/* /lib/firmware/* /lib64/modules/* /lib64/firmware/*保存退出Ctrl X Y Enter这份列表主要用于排除系统缓存、日志、临时目录以及服务器唯一配置可以避免很多迁移后的问题。当然不同环境可能还需要根据实际情况进行调整。第二步开始迁移确认两台服务器都已经安装 rsync 后就可以正式开始同步。下面这条命令需要在旧 VPS上执行。sudorsync-vPa\-essh -p 22 -o StrictHostKeyCheckingno\--exclude-from/root/excludedfiles.txt\/ root新服务器IP:/需要修改两个地方新 VPS 的 IP 地址SSH 端口如果不是默认 22例如sudorsync-vPa\-essh -p 2222 -o StrictHostKeyCheckingno\--exclude-from/root/excludedfiles.txt\/ root192.168.1.100:/执行后会提示输入新服务器的 root 密码。验证成功以后rsync 就会开始同步数据。同步时间主要取决于数据大小硬盘速度两台 VPS 之间的网络质量带宽大小如果数据量较大耐心等待即可。第三步切换到新 VPS同步完成以后关闭旧 VPS重启新 VPS等待系统完全启动随后使用 SSH 登录新服务器。这里很多人第一次都会弄混。连接时IP 使用的是新 VPS 的 IP密码仍然使用旧 VPS 的 root 密码因为 rsync 已经把用户配置一起同步过去了所以登录凭据还是旧服务器的。第四步确认迁移是否成功登录新服务器以后可以检查以下内容网站文件是否完整数据库是否正常Docker 容器是否存在配置文件是否同步完成用户目录是否正常如果这些内容都没有问题说明迁移基本已经完成。迁移完成后还需要做什么很多人以为 rsync 执行结束就算完成了其实还有几个步骤一定不要忘记。建议逐项检查更新域名 DNS 解析到新 VPS修改配置文件中仍然引用旧 IP 的地方重启 Nginx、Apache、MySQL、Redis、Docker 等服务测试网站是否可以正常访问检查 HTTPS 证书是否正常测试数据库连接检查计划任务Cron测试邮件服务、FTP 等功能确认全部正常之后再考虑关闭旧服务器。rsync 迁移有哪些优缺点优点操作简单学习成本低Linux 自带工具无需额外安装复杂软件支持断点续传同步速度快可以保留大部分配置和数据非常适合 VPS 更换或升级不足不适用于所有环境cPanel、Plesk 等控制面板不建议直接使用网络配置和 IP 地址通常需要手动调整部分系统配置仍需自行检查因此在正式迁移生产环境之前建议先在测试环境演练一遍确认整个流程没有问题。总结对于大多数普通 Linux VPS 用户来说rsync 是一种简单、高效且成熟的迁移方案。相比重新部署环境它可以保留绝大多数文件和配置大大减少重复操作非常适合网站迁移、服务器升级以及更换 VPS 服务商。不过迁移完成后不要急着删除旧服务器建议先完成网站、数据库、Docker、DNS 等各项检查确认业务运行正常再正式停用旧 VPS。这样既能降低迁移风险也能避免因为遗漏配置而导致服务中断。