ubuntu下通过脚本定期备份容器日志到新分区(因为容器目录挂载不到分区,不知道为何),备份成功后,可以删除期间产生的日志,从而节省根目录空间。
步骤:
- 定期每个星期五移动容器日志到新分区所建目录下,并增加时间戳;
- 备份的日志每两个月清除一次,只留最近十次的备份;
crontab -e 创建、编辑计划任务的命令;
crontab -l 查看当前计划任务的命令;
crontab -r 删除某条计划任务的命令;
crontab -u 管理员可以通过-u参数来编辑其他用户的计划任务;
ctrl + x 保存
方法很简单,只需编辑ect下crontab文件就行了,这个文件里存放的就是cron要执行的命令,以及定时执行的时间
sudo vim /etc/crontab
crontab启动:/etc/init.d/cron start ( service cron start )
crontab重启: /etc/init.d/cron restart (service cron restart )
crontab关闭: /etc/init.d/cron stop ( service cron stop )
在终端中,可以利用 ps -aux|grep cron查询crontab状态,默认情况下,是自启动的。
或者直接 systemctl status cron.service 命令查询更方便
1.在terminal输入:crontab -e, 第一次需要选择默认编辑器(选择/usr/bin/vim.tiny)
2.如果第一步选择错误,需要重新选择编辑器使用sudo select-editor
3.在弹出的vim中按照规定格式配置任务即可。
在这些字段里,除了“Command”是每次都必须指定的字段以外,其它字段皆为可选字段,可视需要决定。对于不指定的字段,要用“”来填补其位置。同时,cron支持类似正则表达式的书写,支持如下几个特殊符号定义:
“ * ” ,代表所有的取值范围内的数字;
" / ", 代表"每"(“/5”,表示每5个单位);
" - ", 代表从某个数字到某个数字(“1-4”,表示1-4个单位);
" , ", 分开几个离散的数字;
举例如下:
5 * * * * ls // 指定每小时的第5分钟执行一次ls命令
30 5 * * * ls // 指定每天的 5:30 执行ls命令
30 7 8 * * ls // 指定每月8号的7:30分执行ls命令
50 7 * * * root run-parts/etc/cron.daily // 每天7:50以root 身份执行/etc/cron.daily目录中的所有可执行文件