2019-04-26日 课程总结

用户权限之root给普通用户权限

1.如何给:

vim /etc/sudoers
100gg
## Allow root to run any commands anywhere 
root    ALL=(ALL)       ALL
#oldboy  ALL=(ALL)       /bin/ls, /bin/touch
oldboy  ALL=(ALL)     NOPASSWD:  /bin/*

2.查看已经给的权限

[root@oldboyedu59 ~]# grep oldboy /etc/sudoers
oldboy  ALL=(ALL)       /bin/ls, /bin/touch

2.1使用时记得加sudo

[oldboy@oldboyedu59 ~]$ sudo -l
[sudo] password for oldboy: 

User oldboy may run the following commands on oldboyedu59:
    (ALL) /bin/ls, /bin/touch
[oldboy@oldboyedu59 ~]$ ls /root/
ls: cannot open directory /root/: Permission denied
[oldboy@oldboyedu59 ~]$ sudo ls /root/
alex  anaconda-ks.cfg  dir-032  dir-035  file-032  file-035  oldboydir  oldboy.txt  pass.txt  passwd.txtdd2  sed.sed 

sudo练习题 :

给oldboy配置sudo可以查看系统的日志 (思考查看日志有什么命令)

vim /etc/sudoers
/bin/grep, /bin/head, /bin/tail, /bin/less, /bin/more, /bin/cat

[root@oldboyedu59 ~]# grep oldboy /etc/sudoers
#oldboy  ALL=(ALL)       /bin/ls, /bin/touch
oldboy  ALL=(ALL)       /bin/grep, /bin/head, /bin/tail, /bin/less, /bin/more, /bin/cat

给oldboy配置可以运行/bin下面所有命令

oldboy ALL=(ALL) /bin/*

给oldboy配置可以运行/bin下面所有命令但是不能使用vi和su

oldboy ALL=(ALL) /bin/*, !/bin/vi, !/bin/su, !/bin/rm

给oldboy配置可以运行系统中所有命令并且不需要再输入oldboy密码

oldboy ALL=(ALL) NOPASSWD: ALL

排错能力:[故障集合]Linux必备故障及原因50个

https://www.jianshu.com/p/99ec5bb4183f

李导课堂学习小点心

工作的时候 任务完成多少?

  • 做任务的时候
    90% 然后慢慢优化
  • 学习的时候
    掌握70%
    思维导图 抓重点
    了解 放在磁盘中 记录 目录 用的时候能找到就行
    熟悉 存放在内存中 随用随取
    必须会 不会别做运维 存放在内存中 随用随取
    1.说出来
    2.写出来

messages:系统默认日志 secure:用户登录日志

[root@oldboyedu59 ~]# ll /var/log/messages*  /var/log/secure*  /var/log/cron* 
-rw-------  1 root root   8767 Apr 26 11:01 /var/log/cron
-rw-------. 1 root root  13697 Apr 22 09:36 /var/log/cron-20190422
-rw-------  1 root root 268052 Apr 26 11:01 /var/log/messages
-rw-------. 1 root root 790356 Apr 22 09:36 /var/log/messages-20190422
-rw-------  1 root root  23140 Apr 26 10:42 /var/log/secure
-rw-------. 1 root root  17169 Apr 22 08:48 /var/log/secure-20190422              

3.日志定时的切割

系统定时对系统日志 进行切割(日志切割/日志轮询) 防止单个日志过大

[root@oldboyedu59 ~]# ll /etc/cron.daily/
total 8
-rwx------. 1 root root 219 Oct 31 03:12 logrotate
-rwxr-xr-x. 1 root root 618 Oct 30 22:55 man-db.cron
[root@oldboyedu59 ~]# cat /etc/logrotate.d/syslog 
/var/log/cron
/var/log/maillog
/var/log/messages
/var/log/secure
/var/log/spooler
{
   missingok
   sharedscripts
   postrotate
   /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
   endscript
}

Linux下定时任务

使用命令: crontab
常用参数:-e 创建定时任务 -l 查看定时任务 -u附加要修改其crontab的用户名。如果不使用此选项,crontab检查“你的”crontab,即执行命令的人的crontab。注意su(8)可能会混淆crontab,因此,在su(8)下执行命令时,您应该始终使用-u选项。如果特定用户不存在crontab,则为他创建第一次在他的用户名下使用crontab -u命令。

定时任务格式测试:

每天8:30 开始上课(go to school)
30 08 * * * go to school

每天晚上12点带远导去 dbj
每个月的1号晚上11点带guoav去看av (kan)
0 2 * * 1 /data/postmall/shell/a.sh表示什么含义?

每天晚上12点带远导去 dbj

  • 00 * * * dbj #半夜12点00到半夜12点59分 每分钟一次
    00 00 * * * dbj #每天的半夜12点整

每个月的1号晚上11点带guoav去看av (kan)
00 23 01 * * kan

0 2 * * 1 /data/postmall/shell/a.sh表示什么含义?
每周1的凌晨2点整 执行脚本

定时任务特殊符号:

  1. /
          • echo oldboy >>/tmp/oldboy.txt
            */1 * * * * echo oldboy >>/tmp/oldboy.txt

日志中只能显示 定时任务是否运行 无法查看是否出错

Apr 26 12:32:01 oldboyedu59 CROND[7921]: (root) CMD (date >>/tmp/time.log)
Apr 26 12:34:01 oldboyedu59 CROND[7926]: (root) CMD (date >>/tmp/time.log)
Apr 26 12:36:01 oldboyedu59 CROND[7930]: (root) CMD (date >>/tmp/time.log)
Apr 26 12:38:01 oldboyedu59 CROND[7935]: (root) CMD (date >>/tmp/time.log)
Apr 26 12:40:01 oldboyedu59 CROND[7950]: (root) CMD (date >>/tmp/time.log)
 什么时间                    root用户的定时任务 CMD  执行的命令或脚本

今日提示集合:

 "/etc/sudoers.tmp" 125L, 4588C written
>>> /etc/sudoers: syntax error near line 105 <<<
                  语法错误 在105行
                  
[sudo] password for oldboy: 
Sorry, user oldboy may not run sudo on oldboyedu59. 
1.[root@oldboyedu59 ~]# crontab -l
no crontab for root
root用户没有定时任务 
2.no crontab for root - using an empty one
root用户没有定时任务  创建1个空的文件 
3.crontab: installing new crontab
           更新定时任务规则 
4.#mei liangfenzhong xianshi xitong shijian zhuijiadao /tmp/oldboy.txt
* /1 * * * date  >>/tmp/oldboy.txt
"/tmp/crontab.5UZIdI" 3L, 115C written
crontab: installing new crontab
"/tmp/crontab.5UZIdI":3: bad hour
errors in crontab file, can't install.
Do you want to retry the same edit?

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

你可能感兴趣的:(2019-04-26日 课程总结)