日志管理

   Linux日志管理

自有服务,即不需要用户独立去安装的软件的服务,而是当系统安装好之后就可以直接使用的服务(内置)。

一、设置主机名

#hostname                      查看完整的主机名

#hostname -f                   查看主机名、域名

①临时设置主机名(立竿见影),需要切换用户使之生效

#hostname  设置的主机名

例如:需要将当前的主机的主机名设置成yunwei.itcast.cn

②永久设置主机名(需要重启生效)先找到文件/etc/sysconfig/network【主机名的配置文件】

修改其中的HOSTNAME为自己需要设置的永久主机名

二、centos7系统启动过程及相关配置文件

 centos7系统启动过程CentOS7引导顺序

1.UEFi或BIOS初始化,运行POST开机自检

2.选择启动设备             # 光盘

3.引导装载程序,            centos7是grub2

4.加载装载程序的配置文件:/etc/grub.d/          /etc/default/grub         /boot/grub2/grub.cfg

5.加载内核选项

6.加载initramfs初始化伪文件系统

7.内核初始化,centos7使用systemd代替init

8.执行initrd.target所有单元,包括挂载/etc/fstab                     #target是目标的意思

9.从initramfs根文件系统切换到磁盘根目录

10.systemd执行默认target配置,配置文件/etc/systemd/system/default.target

11.systemd执行sysinit.target初始化系统及basic.target准备操作系统

12.systemd启动multi-user.target下的本机与服务器服务

13.systemd执行multi-user.target下的/etc/rc.d/rc.local

14.Systemd执行multi-user.target下的getty.target及登录服务

15.systemd执行graphical需要的服务                    #图形界面

三、crontab计划任务介绍

计划任务的作用:是做一些周期性的任务,在生产中的主要用来定期备份数据

计划任务的安排方式分两种:

一种是定时性的,也就是例行。就是每隔一定的周期就要重复来做这个事情

一种是突发性的,就是这次做完了这个事,就没有下一次了,临时决定,只执行一次的任务

at和crontab这两个命令:

at:它是一个可以处理仅执行一次就结束的指令

crontab:它是会把你指定的工作或任务,比如:脚本等,按照你设定的周期一直循环执行下去

突发性的命令:

语法格式: at      时间  ;              服务:       atd

 [root@localhost ~]#  systemctl start atd                  #开启atd服务

[root@localhost ~]#  systemctl status atd              #查看atd服务状态

[root@localhost ~]#  systemctl is-enabled atd        #查看是否开始开机启动服务,如果弹出enabled,说明开机启动此服务

实战-使用at创建计划任务

[root@localhost ~]#  date                           #查看系统时间

2018年 05月 21日 星期一 20:43:29 CST

 [root@localhost ~]# at 20:46          #注意:如果是上午时间,后面加上am,比如9:20am

at> mkdir /tmp/yun                         #输入你要执行的命令

at> touch /tmp/yun/a.txt                

at< EOT>                                         结束:ctrl+d

 [root@localhost ~]# at -l                           #查看计划任务

 [root@localhost ~]# atq                            #查看计划任务

 检查at计划任务运行结果:

[root@localhost ~]# ls /tmp/yun/                

查看和删除at将要执行的计划任务

这个查看,只能看到还没有执行的。如果这个任务已经开始执行或者执行完成了,是看不到的 [root@localhost ~]# at -l              

 [root@localhost ~]# at -c 1              #-c 打印任务的内容到标准输出, 查看1号计划任务具体内容 查看定时任务内容

[root@localhost ~]# ls /var/spool/at/

a00003018452cb a0000501845084 spool

[root@localhost ~]# tail -5 /var/spool/at

a0000501845084                  

at计划任务的特殊写法

 [root@localhost ~]# at 20:00 2018-10-1                  在某天

 [root@localhost ~]#at now +10min                         在 10分钟后执行 

[root@localhost ~]# at 17:00 tomorrow                   明天下午5点执行

 [root@localhost ~]#at 6:00 pm +3 days                  在3天以后的下午6点执行

 [root@localhost ~]# at 23:00 < a.txt                        # 把a.txt的内容给 23:00这个时间

删除at计划任务

 语法: atrm   任务编号

 [root@localhost ~]# at -l 

3  Tue May 22 08:43:00 2018 a root

5  Mon May 21 23:00:00 2018 a root

[root@localhost ~]# atrm 5

 [root@localhost ~]# at -l

 四、crontab定时任务的使用

语法:#crontab  选项 

常用选项:

 -l:list,列出指定用户的计划任务列表

 -e:edit,编辑指定用户的计划任务列表

 -u:user,指定的用户名,如果不指定,则表示当前用户

 -r:remove,删除指定用户的计划任务列表

①列出 看到上述的提示表示root用户没有计划任务需要去做。

②编辑计划任务(重点)

 计划任务的规则语法格式,以行为单位,一行则为一个计划:

分  时  日  月  周   需要执行的命令

 例如:如果想要每天的0点0分执行reboot指令,则可以写成 0 0 * * * reboot

取值范围(常识):

分:0~59               时:0~23           日:1~31             月:1~12       周:0~7,0和7表示星期天 四个符号:

 *:表示取值范围中的每一个数字

-:做连续区间表达式的,要想表示1~7,则可以写成:1-7

 /:表示每多少个,例如:想每10分钟一次,则可以在分的位置写:*/10

,:表示多个取值,比如想在1点,2点6点执行,则可以在时的位置写:1,2,6

问题1:

每月1、10、22日的4:45重启network服务

45 4 1,10,22 * * service network restart

问题2:每周六、周日的1:10重启network服务

10 1 * * 6,7 service network restart

问题3:每天18:00至23:00之间每隔30分钟重启network服务

 */30 18-23 * * * service network restart

问题4:每隔两天的上午8点到11点的第3和第15分钟执行一次重启

3,15 8-11 */2 * * reboot

 案例:真实测试案例,每1分钟往root家目录中的RT.txt中输一个1,为了看到效果使用追加输出 */1 * * * * echo 1 >> /root/RT.txt

执行的效果: 注意:在计划任务中,默认的最小单位就是分,不能再小了。

五、系统日志管理

系统日志文件概述:/var/log目录保管由rsyslog维护的,里面存放的一些特定于系统和服务的日志文件

/var/log/messages              大多数系统日志消息记录在此处。有也例外的:如与身份验证,电子邮件处理相关的定期作业任务等

/var/log/secure                   安全和身份验证相关的消息和登录失败的日志文件。 ssh远程连接产生的日志

/var/log/maillog 与邮件服务器相关的消息日志文件

在centos7中,系统日志消息由rsyslog 服务负责处理

常见日志文件的作用

/var/log/cron                            与定期执行任务相关的日志文件

/var/log/boot.log                      与系统启动相关的消息记录

/var/log/dmesg                        与系统启动相关的消息记录

例1:查看哪个IP地址经常暴力破解系统用户密码

[root@localhost ~]# sshroot@192.168.1.63#故意输错3次密码

 查看安全和身份验证日志:

[root@localhost ~]# grep Failed /var/log/secure

案例:使用 /var/log/btmp文件查看系统的用户

/var/log/btmp文件是记录错误登录系统的日志。如果发现/var/log/btmp日志文件比较大,大于1M,就算大了,就说明很多人在暴力破解ssh服务,此日志需要使用lastb程序查看 [root@localhost log]# ll -h /var/log/btmp

                                               日志的记录方式

 分类 →级别

日志的分类:

daemon:后台进程相关               kern :内核产生的信息          lpr :打印系统产生的

authpriv :安全认证                     cron: 定时相关                    mail: 邮件相关

syslog :日志服务本身的             news :新闻系统

 local0~7            自定义的日志设备

local0-local7          日志的级别: 轻→重

 7             debug              信息对开发人员调试应用程序有用,在操作过程中无用

6              info                  正常的操作信息,可以收集报告,测量吞吐量等

5             notice                注意,正常但重要的事件,

4             warning             警告,提示如果不采取行动。将会发生错误。比如文件系统使用90%

3             err                     错误,阻止某个模块或程序的功能不能正常使用

2             crit                    关键的错误,已经影响了整个系统或软件不能正常工作的信息

1             alert                 警报,需要立刻修改的信息

0             emerg              紧急,内核崩溃等严重信息

rsyslog日志服务

       ->服务名称rsyslog                             ->配置文件 /etc/rsyslog.conf

我们来查看一下日志的配置文件信息:

编辑配置文件                      vim /etc/rsyslog.conf *.info;mail.none;authpriv.none;cron.none                           /var/log/messages authpriv.*                                                                            /var/log/secure

mail.*                                                                                  -/var/log/maillog

cron.*                                                                                  /var/log/cron

*.emerg                                                                              :omusrmsg:* uucp,news.crit                                                                    /var/log/spooler local7.*                                                                                  /var/log/boot.log

注释:

 #$UDPServerRun 514 #允许514端口接收使用UDP协议转发过来的日志 #$InputTCPServerRun 514 ##允许514端口接收使用TCP协议转发过来的日志

 #kern.*        内核类型的所有级别日志→存放到→                  /dev/console *.info;mail.none;authpriv.none;cron.none                               /var/log/messages

所有的类别级别是info以上 除了mail,authpriv,cron (产生的日志太多,不易于查看) 

类别.    级别

authpriv.*                 认证的信息→存放→                                   /var/log/secure

 mail.*                      邮件相关的信息→存放→                          -/var/log/maillog

cron.*                      计划任务相关的信息→存放→                    /var/log/cron

local7.*                   开机时显示的信息→存放-->                       /var/log/boot.log

注: “- ”号: 邮件的信息比较多,现将数据存储到内存,达到一定大小,全部写到硬盘.有利于减少I/O进程的开销 数据存储在内存,如果关机不当数据消失

日志输入的规则

 . info                              大于等于info级别的信息全部记录到某个文件

 .=级别                           仅记录等于某个级别的日志

例: .=info 只记录info级别的日志

.! 级别                            除了某个级别意外,记录所有的级别信息

例: .!err 除了err外记录所有

.none                            指的是排除某个类别

例: mail.none 所有mail类别的日志都不记录

实战-自定义ssh服务的日志类型和存储位置

[root@xuegod63 ~]# vim /etc/rsyslog.conf                    #以73行下,插入以下红色标记内容

73                                    local7.*                                          /var/log/boot.log

74                                    local0.*                                          /var/log/sshd.log

注:把local0类别的日志,保存到 /var/log/sshd.log路径

定义ssh服务的日志类别为local0,编辑sshd服务的主配置文件

[root@xuegod63 log]# vim /etc/ssh/sshd_config                     #插入 SyslogFacility local0

改:32 SyslogFacility AUTHPRIV

为:32 SyslogFacility local0

先重启rsyslog服务(生效配置)

[root@localhost ~]# vim /etc/ssh/sshd_config

再重启sshd服务.生成日志

[root@localhost ~]# systemctl restart sshd

验证是否生成日志并查看其中的内容,

[root@localhost ~]# cat -n /var/log/sshd.log                       #说明修改成功

上面对就的信息:时间 主机 服务 进程ID 相关的信息

作者:白色衬衫_f48d

链接:https://www.jianshu.com/p/dd8402315a7d

來源:简书

简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容

  • Linux日志管理 自有服务,即不需要用户独立去安装的软件的服务,而是当系统安装好之后就可以直接使用的服务(内置...
    白色衬衫_f48d阅读 673评论 0 0
  • 设置主机名 #hostname 查看完整的主机名 #hostname -f查看主机名、域名 ①临时设置主机名(立...
    嶮_6a95阅读 519评论 0 0
  • 一、rsyslogd: 系统专职日志程序。将绝大部分日志记录, 系统日志程序和系统操作有关,安全,...
    十七遇你_dc8d阅读 2,063评论 0 0
  • 日志管理2 1、日志服务的配置文件 [loring ~]# vim /etc/rsyslog.conf ...
    崔千易阅读 552评论 0 0
  • 一,设置主机名 # hostname 查看完整主机名 # hostname -f 查看主机名,域名 1)临...
    静待_dac3阅读 878评论 0 0