阅读量:3
使用Linux SFTP备份数据是一个相对简单的过程,以下是详细步骤:
准备工作
-
安装SFTP服务器:
- 如果你还没有安装SFTP服务器,可以使用以下命令在大多数Linux发行版上安装:
sudo apt-get install openssh-server # Debian/Ubuntu sudo yum install openssh-server # CentOS/RHEL sudo dnf install openssh-server # Fedora
- 如果你还没有安装SFTP服务器,可以使用以下命令在大多数Linux发行版上安装:
-
配置SFTP服务器:
- 编辑SSH配置文件
/etc/ssh/sshd_config:sudo nano /etc/ssh/sshd_config - 找到并修改以下行以启用SFTP子系统:
Subsystem sftp /usr/lib/openssh/sftp-server - 确保以下行没有被注释掉(通常默认是启用的):
PasswordAuthentication yes - 保存并退出编辑器,然后重启SSH服务:
sudo systemctl restart sshd
- 编辑SSH配置文件
-
创建备份目录:
- 在SFTP服务器上创建一个用于存放备份的目录:
sudo mkdir -p /backup/data sudo chown nobody:nogroup /backup/data
- 在SFTP服务器上创建一个用于存放备份的目录:
使用SFTP进行备份
-
连接到SFTP服务器:
- 使用SFTP客户端连接到服务器。你可以使用命令行工具
sftp或图形化工具如FileZilla。 - 命令行连接示例:
sftp username@hostname - 输入密码后,你将进入SFTP会话。
- 使用SFTP客户端连接到服务器。你可以使用命令行工具
-
上传文件或目录:
- 使用
put命令上传单个文件:put /path/to/local/file /backup/data/ - 使用
put -r命令递归上传整个目录:put -r /path/to/local/directory /backup/data/
- 使用
-
下载文件或目录(可选):
- 如果你需要从服务器下载文件或目录,可以使用
get命令:get /backup/data/file /path/to/local/ get -r /backup/data/directory /path/to/local/
- 如果你需要从服务器下载文件或目录,可以使用
-
退出SFTP会话:
- 完成操作后,输入
exit退出SFTP会话。
- 完成操作后,输入
自动化备份脚本
为了简化备份过程,你可以编写一个自动化脚本。以下是一个简单的示例脚本:
#!/bin/bash
# 配置变量
LOCAL_DIR="/path/to/local/directory"
REMOTE_DIR="/backup/data"
HOSTNAME="hostname"
USERNAME="username"
# 创建备份目录(如果不存在)
ssh ${USERNAME}@${HOSTNAME} "mkdir -p ${REMOTE_DIR}"
# 上传本地目录到远程服务器
rsync -avz --delete ${LOCAL_DIR}/ ${USERNAME}@${HOSTNAME}:${REMOTE_DIR}
echo "Backup completed successfully!"
将上述脚本保存为 backup.sh,然后赋予执行权限并运行:
chmod +x backup.sh
./backup.sh
这个脚本使用 rsync 工具来同步本地和远程目录,并删除远程目录中不再存在的文件。
通过以上步骤,你可以轻松地使用Linux SFTP进行数据备份。
以上就是关于“如何用Linux SFTP备份数据”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm