sgid
sgid 作用就是让普通用户可以再执行某个设置了sgid的命令时拥有和命令对应用户组
updatedb更新数据库
sgid让不同的人创建文件属于相同用户组,从而实现文件共享
Linux系统定时任务:
1.什么是定时任务
周期性的执行任务计划的软件,Linux定时任务常用软件
crond
2.作用,使用定时任务软件,每天每小时 按需求重复的执行一项工作
例如:数据不丢,备份,
需要写一个程序实现自动备份,让定时任务软件帮你执行。
3.用法:
系统定时任务计划
不用管理员干预,系统自动执行。
用户定时任务计划
cron是定时任务的软件名
crond是服务进程名 ,真正实现定时任务的服务
crontab命令是用来设置定时任务规则的配置命令
启动停止查看服务状态
● crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-03-21 08:35:02 CST; 1 day 1h ago
Main PID: 6316 (crond)
CGroup: /system.slice/crond.service
└─6316 /usr/sbin/crond -n
Mar 21 08:35:02 oldboyedu systemd[1]: Started Command Scheduler.
Mar 21 08:35:02 oldboyedu crond[6316]: (CRON) INFO (RANDOM_DELAY will be...)
Mar 21 08:35:02 oldboyedu crond[6316]: (CRON) INFO (running with inotify...)
Hint: Some lines were ellipsized, use -l to show in full.
disabled 开机不自动启动
enable 开机自启动
定时任务存放的位置
[root@oldboyedu ~]# ll /var/spool/cron/
total 4
-rw------- 1 root root 128 Mar 22 10:23 root
crontab -l =cat /var/spool/cron/root
crontab -e=vim /var/spool/cron/root
编写定时任务的语法:
共六列
第一列:代表分钟
第二列:小时
第三列:日
第四列:月
第五列:周
第六列:执行的任务或程序
特殊符号
*表示 每 一 的意思
-表示连续的区间
, 列举 1,2,3,列举就是一点两点三点执行任务
/n 任意数字
n代表数字,及每隔n单位时间 ,每10分钟执行可写成 * /10 * * * * cmd
/dev/null 黑洞设备
错误日志 /var/log/cron
企业中定时任务
创建脚本文件 /server/scripts
命令行执行:
创建一个存放脚本的目录 /server/scripts /
编辑脚本
执行/bin/sh /server/scripts /脚本文件
运维规范
- 脚本位置:/server/scrips
- 软件位置:/server/tools
- 编译脚本:/application/
cron书写要领
1.定时任务要加注释
2.所有定时任务尽量以脚本运行
3.在执行shell脚本时前面加/bin/sh
4.命令或脚本结尾加>/dev/null 2&>1
5.在指定用户下执行相关定时任务
6.生产计划程序中不要随意打印输出,有输出的去掉
7.定时任务规范存放位置
8.定时任务要规范操作过程,减少出错
9.定时任务命令要用全路径
/usr/bin/命令
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"
10.时间变量%前面需要加转义字符\,脚本中不需要
11.若脚本中调用了系统环境变量,要重新定义
12.无法执行就检查/var/log/cron
网友评论