1.
lsblk 或 fdisk -l),以及是否支持控制面板进入救援/ISO 模式。记录公网 IP、SSH 口令/密钥,并评估停机窗口:做整盘镜像通常需要重启或进入救援模式。
2.
3.
ssh root@your-vps 'dd if=/dev/sda bs=4M | gzip -1' > /backup/your-vps-sda.img.gz。注意:目标备份主机需有足够磁盘空间与高带宽,运行前检查磁盘使用。
4.
dd if=/dev/vda bs=4M | pv | gzip -c > /mnt/backup/vps-vda.img.gz。pv 可显示进度。
5.
rsync -aAXH --delete --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*"} / root@backup:/data/vps/hostname/。建议加上 --numeric-ids 保持 UID/GID,测试恢复用 rsync -avH --progress backup:/data/vps/hostname/ /restore/。
6.
mysqldump -u root -p --single-transaction --quick --all-databases | gzip -c > /backup/mysql-all-$(date +%F).sql.gz。若是大数据量或需要无锁备份,用 Percona XtraBackup 做物理备份。Postgres 用 pg_dumpall 或 basebackup。
7.
lvcreate -L 2G -s -n root_snap /dev/vg0/root,然后 mount 快照并 rsync 备份,完成后删除快照:lvremove /dev/vg0/root_snap。此法能在不停机情况下获得文件系统一致性。
8.
rclone copy /backup remote:bucket/vps --transfers=4 --checkers=8。敏感数据先用 GPG:gpg -c file.tar.gz 或用 rclone crypt。
9.
0 3 * * * /usr/local/bin/backup-rsync.sh >> /var/log/backup.log 2>&1。保留策略示例:每日备份保留 7 天、每周保留 4 周、每月保留 12 个月。可用 find 删除过旧文件:find /backup -type f -mtime +90 -delete。
10.
qemu-nbd -c /dev/nbd0 server.img,然后 mount /dev/nbd0p1 /mnt/test检查文件。数据库备份在临时服务器上还原并验表。
11.
gunzip -c your-vps-sda.img.gz | ssh root@target 'dd of=/dev/sda bs=4M conv=fsync'。若提供商要求使用控制台/救援模式,先上传镜像到可访问介质(对象存储或临时主机),再在救援环境执行 dd 写盘。
12.
13.
14.
15.