linux修改时间授权,Linux定时任务crontab 和sudo授权管理

**只是个人学习笔记,抒写比较混乱,慎看。在此也非常感谢各位大牛在网上上传的教程和视频;***

一、crontab是一种周期性执行任务的工具;

1、系统执行的工作:系统周期性要执行的工作,如备份系统数据、清理缓存

2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信,这些工作可以每个用户自行设置;

3、每星期日志备份;每月数据库备份;凌晨业务数据统计等;

Minute Hour Day Month Dayofweek command

分钟 小时 天(日期) 月 天每星期 命令

(0-59) (0-23) (1-31) (1-12) (0-7)

Crontab实践练习:

1、安装检查Crontab服务

检查是否安装:crontab -l

检查服务是否启动:service crond status

安装crontab

yum install vixie-cron

Yum install crontabs

新增调度任务的两种方法:

crontab -e vi /etc/crontab

crontab -e -u admin 可以给普通用户设置定时任务(-u表示普通用户)

每分钟打印当前时间到一个日志文件中

*/1***date >> /tmp/log.txt

tail -f /tmp/log.txt表示任何时间都匹配;

,选取执行;-之间执行;*/2每分钟执行;

2、案例:

每晚的21:30重启apache

30 21 service httpd restart

每月1、10、22日的4:45重启apache

45 4 1,10,22 service httpd restart

两分钟重启Apache服务器/2 service httpd restart

3、Crontab的配置

4、Crontab的日志

/var/log/cron文件保存cron记录日志

cd /var/log ls -l cron*

cat /etc/crontab

cd /var/spool/mail 可以发送root邮箱

5、Crontab常见错误

环境变量

cd ~ ls -a bash_profile vi bash_profile

APPDIR=/hyk export APPDIR 系统配置

source .bash_profile 启动

echo $APPDIR 输出

crontab -e 个人配置

/1 * echo $APPDIR >> /tmp/appdir.log

Date date date

cat /tmp/appdir.log 下面是空滴;

cat .bash_profile 配置信息没有在运行脚本的时候载入进去;

命令行双引号中使用%时,未加反斜线\

在计划任务里必须得加反斜线(就是设置定时任务时)

第三和第五个域之间执行的是“或”操作

四月的第一个星期日早晨1时59分运行a.sh

59 1 1-7 4 test ~date +\%w~ -eq 0 && /root/a.sh

Date +%w 是1 0成功 1失败

test date +%w -eq 0

echo $?分钟设置误用

两个小时运行一次

0 /2 command

**

二、sudo用途 (苏度)

sudo允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,

让root 把本来只能超级用户执行的命令赋予普通用户执行;

Sudo操作对象是系统命令;

root赋予权限 visudo 实际修改的是/etc/sudoers文件

Sudo -l 查询是否授权

Whereis 查询地址

root All=(ALL) ALL

用户名 被管理主机=(可使用身份)授权命令(绝对路径)

实践练习:

1、假设普通用户a没有重启功能,下面授权普通用户a继承重启功能;

shutdown -r now 重启命令

root端:visudo

a ALL=(ALL) /sbin/shutdown -r now 越详细执行权限越低

a端:sudo /sbin/shutdown -r now

2、授权普通帐号a可以创建用户和密码,但不能修改root密码;

root端:visudo

a ALL=/usr/sbin/useradd

a ALL=/usr/bin/passwd (不正确的,权限太大)

a ALL=/usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd “”,

!/usr/bin/passwd root

a端:sudo /usr/sbin/useradd 帐号名

sudo /usr/sbin/passwd

你可能感兴趣的:(linux修改时间授权)