nohup
(no hang-up)命令允许你在Linux系统中在后台运行程序,即使关闭终端或断开连接,程序也会继续运行
首先,确定要备份的数据源和目标位置。例如,从/home/user/data
备份到/backup/data
。
创建一个备份脚本。使用文本编辑器(如vim、nano等)创建一个名为backup.sh
的脚本文件:
#!/bin/bash
# 设置数据源和目标位置
source_dir="/home/user/data"
destination_dir="/backup/data"
# 获取当前日期,以便在备份文件夹名称中添加时间戳
current_date=$(date +"%Y-%m-%d")
# 创建带有时间戳的备份目录
backup_dir="${destination_dir}/backup-${current_date}"
mkdir -p "$backup_dir"
# 使用tar命令进行压缩备份
tar -czvf "$backup_dir.tar.gz" -C "$source_dir" .
# 删除超过30天的备份文件
find "$destination_dir" -type d -name "backup-*" -mtime +30 -exec rm -rf {} \;
保存并关闭文件。
chmod +x backup.sh
nohup
命令在后台运行备份脚本:nohup ./backup.sh &
这将在后台运行backup.sh
脚本,即使关闭终端或断开连接,备份过程也会继续进行。
nohup.out
文件:tail -f nohup.out
这将显示脚本的输出,以便你可以监控备份过程。
注意:在执行备份操作之前,请确保你有足够的磁盘空间来存储备份文件。