作者:马帅琦
归档:day18
时间:2019/3/25
如何调适定时任务
1查看错误日志
/var/log/cron
学会最小化排除
先清空,>/var/log/cron
然后测试和观察
2增加执行任务频率调试任务
把频率调快。
3把定时任务执行时间比当前时间拖后5分钟
00 03 执行,当前5:00,咱们就把时间调到5:05.有个5分钟的提前量。
4调整系统时间(测试环境还凑合)
00 03执行,把系统时间跳到2.55
5通过脚本日志输出调试定时任务
* * * * * /bin/sh /server/scripts/bak。Sh &>/dev/null
定时任务输出
脚本输出:tar zcvf oldboy。Tar.gz 。/data >/tmp/tar.log
注意点:有时候程序只能执行一次,一定要在测试环境测试好,然后直接复制到正式
代码发布流程
办公室测试环境=èidc机房测试环境èidc机房正式环境
防止在正式环境发生错误,从而影响用户体验,业务稳定
常见企业故障
磁盘满的报错,原因往往是inode被沾满了
因为定时任务没有家&>/dev/null,定时任务执行的时候把输出给系统root发邮件
邮件服务器postfix默认打不开,这些给系统发的邮件就会蹲在临时目录
/var/spool/clientmqueue/ 6
/var/spool//postfix/maildrop 7
手动可以执行,定时任务里不执行
Export变量生产案例
1手工登陆后,加载所有环境变量
2定时任务执行脚本属于非登陆状态
定时任务在执行脚本的时候,多数清空没办法加载环境变量,普通环境变量一般无法识别的
如果在编写的脚本中需要,最好使用
所有运维都会把变量放到此文件/etc/profilr,把这个文件里的变量定义
在执行脚本中重新定义。
用户管理:
用户相关文件
/etc/passwd用户所在文件
/etc/shadow 密码所在文件
Useradd oldboy 增加用户实际上就是修改上述两个文件(因为要创建同名的用户组)
Passwd oldboy 改密码实际上就是修改秘码所在文件
用户组所在文件
/etc/group 用户组所在文件
/etc/gshadow 用户组密码所在文件
Groupadd sa 增加用户组就是修改上述两个文件
md5sum 给文件设置指纹(计算和检查md5数字信息)
Linux命令行管理,平时输入ls,cp谁是别,版我们把我们想要的输出呢?
这个工具就是bash(命令解释器)
Centos7默人解释器是bash
虚拟用户解释器:/sbin/nologin
解释器:
sh 是bash 的软连接
了解即可etc/shadow
etc/group
[root@oldboyedu ~]# useradd gongli1 -c "beautify woman" -d /tmp -e '2020/10/20'
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
[root@oldboyedu ~]# tail -1 /etc/passwd
gongli1:x:1005:1008:beautify woman:/tmp:/bin/bash
[root@oldboyedu ~]# chage -l gongli1
Last password change : Mar 25, 2019
Password expires : never
Password inactive : never
Account expires : Oct 20, 2020 =================
Minimum number of days between password change: 0
Maximum number of days between password change: 99999
Number of days of warning before password expires: 7
给开发等人员添加用户,尽量给截止时间。
Useradd的配置文件
/etc/default/userad
修改方法
/etc/skel目录,创建用户默认就会把此目录下的文件拷贝到/home/用户名下
/etc/skel为每个用户提共用户环境变量的目录
登录系统后,命令行出现如下提示:为什么?
[root@oldboyedu /home/chenglong1]# su - chenglong1
-sh-4.2$
-sh-4.2$
解答:用户的环境变量缺失导致的。执行如下命令解决
-sh-4.2$ cp /etc/skel/.bash* .
-sh-4.2$ source ./.bash_profile ./.bashrc
[if !supportLineBreakNewLine]
[endif]
增加用户要用的文件
/etc/login.defs
不交互设置密码:方法1:
[root@oldboyedu ~]# echo 123456|passwd --stdin oldgirl
Changing password for user oldgirl.
passwd: all authentication tokens updated successfully.
方法2:
[root@oldboyedu ~]# echo 123456 >pass
[root@oldboyedu ~]# cat pass
123456
[root@oldboyedu ~]# passwd --stdin oldgirl
Changing password for user oldgirl.
passwd: all authentication tokens updated successfully.