使用FetchLinux进行远程备份的步骤
首先确保系统已安装FetchLinux工具。若未安装,可通过以下方式获取:
apt、yum)或运行安装脚本完成安装。~/.ssh/authorized_keys文件中。ssh-keygen -t rsa # 本地生成密钥对
ssh-copy-id user@remote_host # 将公钥复制到远程服务器
/home/user/data)有读取权限,且本地机器有写入备份目录的权限。使用FetchLinux的rsync功能(FetchLinux集成了rsync工具)实现远程备份,以下是常用命令示例:
rsync -aAXv -e "ssh -i /path/to/private_key" --exclude='.git' /path/to/remote/source/ user@remote_host:/path/to/local/backup/
-a:归档模式,保留文件权限、时间戳、符号链接等;-A:递归复制所有子目录;-X:保持符号链接的原始权限;-v:显示详细备份过程;-e "ssh -i /path/to/private_key":指定SSH私钥路径,用于身份验证;--exclude='.git':排除无需备份的目录(如代码仓库的.git文件夹)。若备份数据量较大,可通过tar命令压缩备份目录,节省存储空间:
tar -czvf /var/opt/fetchlinux/backups/fetchlinux_backup_$(date +%Y%m%d).tar.gz -C /var/opt/fetchlinux/backups/ .
-c:创建新的压缩包;-z:使用gzip压缩;-v:显示压缩过程;-f:指定压缩包名称(含当前日期)。通过cron定时任务实现每日自动备份,避免手动操作:
crontab -e
0 2 * * * /path/to/your/backup_script.sh >> /var/log/fetchlinux_backup.log 2>&1
backup_script.sh为自定义备份脚本,需包含上述rsync或tar命令;>> /var/log/fetchlinux_backup.log将输出追加到日志文件,便于后续查看。/var/opt/fetchlinux/backups/)中存在备份文件,且文件数量、大小与远程源一致。rsync -aAXv /var/opt/fetchlinux/backups/important_file user@remote_host:/path/to/remote/restore/
/var/log/fetchlinux_backup.log),确认备份任务无报错。chmod -R 700 /var/opt/fetchlinux/backups/),防止未授权访问。