通过SFTP备份CentOS数据是一种安全且高效的方法,以下是详细的步骤指南:
安装SFTP服务器:
sudo yum install openssh-server
配置SSH密钥认证(可选但推荐):
ssh-keygen -t rsa -b 4096
~/.ssh/authorized_keys
文件中:ssh-copy-id user@server_ip
设置防火墙规则:
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
连接到SFTP服务器:
sftp user@server_ip
创建备份目录:
mkdir /path/to/backup
执行备份命令:
tar
命令打包需要备份的目录,并通过SFTP传输到本地机器:tar czvf - /path/to/source | sftp user@local_ip:/path/to/backup/backup_$(date +%Y%m%d%H%M%S).tar.gz
tar czvf - /path/to/source
:打包指定目录并输出到标准输出。sftp user@local_ip:/path/to/backup/backup_$(date +%Y%m%d%H%M%S).tar.gz
:将打包的数据通过SFTP传输到本地机器,并以当前日期和时间命名备份文件。你可以使用cron
作业来定期执行备份脚本。
编写备份脚本:
backup.sh
的脚本文件:#!/bin/bash
BACKUP_DIR="/path/to/backup"
SOURCE_DIR="/path/to/source"
TIMESTAMP=$(date +%Y%m%d%H%M%S)
BACKUP_FILE="${BACKUP_DIR}/backup_${TIMESTAMP}.tar.gz"
tar czvf - $SOURCE_DIR | sftp user@local_ip:$BACKUP_FILE
赋予脚本执行权限:
chmod +x backup.sh
设置cron作业:
crontab -e
0 2 * * * /path/to/backup.sh
通过以上步骤,你可以安全且高效地通过SFTP备份CentOS数据。