麒麟os需用crond服务构建定时备份机制:先启用crond,再通过crontab配置tar全量备份或rsync增量同步,并注意转义%、使用绝对路径及ssh免密登录。

您需要在麒麟操作系统中实现数据或系统配置的周期性自动保存,避免因误操作、硬件故障导致信息丢失,必须借助系统原生的crontab服务构建可靠定时备份机制。
启用crond守护进程
crontab依赖后台守护进程crond提供调度能力,若该服务未启动,所有定时任务均不会触发。
执行命令检查服务运行状态:sudo systemctl status crond
若显示“inactive (dead)”,则立即启动服务:sudo systemctl start crond
设置开机自动运行:sudo systemctl enable crond
【关键提示:麒麟OS部分版本默认使用crond而非cron,请勿混淆服务名;若提示“Unit crond.service not found”,可尝试sudo systemctl status cron进行兼容性检查】
配置每日tar压缩备份(root用户)
该方法适用于全盘关键目录(如/etc、/home)的归档备份,权限清晰、语法可校验、支持错误日志捕获。
第一步:创建备份目标目录sudo mkdir -p /backup
第二步:以root身份编辑定时任务sudo crontab -e
第三步:在编辑器中新增一行(示例为每日凌晨2点备份/home)0 2 * * * tar -zcpf /backup/home_$(date +\%Y\%m\%d).tar.gz /home 2>>/var/log/backup_err.log
这一步操作起来很简单,直接把文件拖进去就行。但要注意:date命令中的百分号必须用反斜杠转义,否则crontab会把%当作换行符处理,导致任务静默失败。
第四步:保存退出后确认任务已写入sudo crontab -l
通过/etc/crontab配置多用户同步任务
此方式适合需以不同身份运行多个备份脚本的混合场景,例如同时以root备份系统配置、以www-data备份网站数据。
方法一:直接编辑系统级配置sudo nano /etc/crontab
方法二:在文件末尾添加两行示例任务0 3 * * * root /usr/bin/tar -zcpf /backup/etc_$(date +\%Y\%m\%d).tar.gz /etc30 3 * * * www-data /usr/bin/rsync -av --delete /var/www/html/ /backup/www_bak/
注意每行格式必须严格为“分时日月周 用户名 命令绝对路径”,且命令须使用全路径(如/usr/bin/tar而非tar)。
【重要前提:/etc/crontab中必须已定义SHELL与PATH环境变量,否则脚本可能因找不到命令而失败】
编写并调用rsync增量备份脚本
rsync支持差异比对与断点续传,适合将本地数据持续同步至NAS或远程服务器,显著降低网络与存储开销,并保障备份一致性。
第一步:确保目标主机已配置SSH无密码登录ssh-keygen -t rsa && ssh-copy-id user@192.168.10.151
第二步:编写同步脚本sudo nano /usr/local/bin/kylin_rsync_backup.sh
第三步:填入以下内容并保存
#!/bin/bash<br>SRC="/etc /var/log /opt"<br>DEST="user@192.168.10.151:/backup/kylin/"<br>rsync -av --delete --log-file=/var/log/rsync_kylin.log $SRC $DEST
第四步:赋予脚本执行权限sudo chmod +x /usr/local/bin/kylin_rsync_backup.sh
第五步:设置每日凌晨3点执行sudo crontab -e → 新增一行:0 3 * * * /usr/local/bin/kylin_rsync_backup.sh











