系统messages日志管理
后台的程序通常被称为守护或服务进程,会处理linux系统的大部分任务
当这些后台程序工作时,会将任务的详细信息记录进日志文件中,也就是历史信息
/var/log/messages #系统日志
>/var/log/messages #清空系统日志
###################
测试:
[root@vm138 ~]# >/var/log/messages
vim /etc/ssh/sshd_config ##更改sshd配置中的78行,改成错误的命令
cat /var/log/messages
systemctl restart sshd.service ##重启sshd服务
[root@vm138 ~]# cat /var/log/messages
Jan 12 22:41:04 vm138 systemd: sshd.service holdoff time over, scheduling restart.
Jan 12 22:41:04 vm138 systemd: Stopping OpenSSH server daemon...
Jan 12 22:41:04 vm138 systemd: Starting OpenSSH server daemon...
扫描二维码关注公众号,回复: 5037813 查看本文章Jan 12 22:41:04 vm138 systemd: Started OpenSSH server daemon.
Jan 12 22:41:04 vm138 sshd: /etc/ssh/sshd_config line 78: Bad yes/no argument: \351\224\231\350\257\257\345\221\275\344\273\244 ##提示出现错误
Jan 12 22:41:04 vm138 systemd: sshd.service: main process exited, code=exited, status=255/n/a
Jan 12 22:41:04 vm138 systemd: Unit sshd.service entered failed state.
1.rsyslog服务
采集系统日志,不产成日志
2.rsyslog管理
存放在rsyslog.conf文件中
vim /etc/rsyslog.conf ##更改
xx.xx 什么类型的日志.什么级别的服务
日志类型
auth #用户认证时产生的日志,login su 命令
authpriv #ssh,ftp等登陆服务的验证信息
cron #与时间任务相关
kern #系统内核消息
lpr #与打印机活动相关
mail #邮件日志
mark #服务内部的消息,是事件标示(产生时间戳)
user #用于用户程序产生的相关信息
uucp #unix to unix copy unix主机之间相关的通信
news.crit #新闻组(网络新闻传输协议)产生的
日志的级别
从上到下级别依次升高,信息越来越少
debug #调试信息(最长用)
info #一般信息(最多)
notice #最重要的普通条件信息
warning #警告
err #错误
crit #严重错误
alert #需要立即修改的信息(如数据库损坏)
emerg #内核崩溃
none #不记录
3.日志的远程同步
远程同步就是将一台主机的报告内容发送给一个服务器
首先要做的就是关闭防火墙
systemctl stop firewalld.service ##关闭
systemctl disable firewalld.service ##设置成开机不自启
在日志的发送方更改配置,表示将所有类型、级别的日志都发给服务器172.25.254.88
[root@vm138 ~]# vim /etc/rsyslog.conf
*.* @172.25.254.88
[root@vm138 ~]# systemctl restart rsyslog.service
在接收方要更改rsyslog.conf中的15、16行并重新加载rsyslog服务
15 $ModLoad imudp
16 $UDPServerRun 514
[root@server88 ~]# systemctl restart rsyslog.service
进行测试:
首先清空双方的日志
[root@vm138 ~]# >/var/log/messages
[root@server88 ~]# >/var/log/messages
在接受方打开监视日志内容
[root@server88 ~]# tail -f /var/log/messages
在发送方使用logger命令向日志写入
[root@vm138 ~]# logger test
[root@vm138 ~]# cat /var/log/messages
Jan 13 01:00:28 vm138 rc.local: /etc/rc.d/rc.local: connect: Connection refused
Jan 13 01:00:28 vm138 rc.local: /etc/rc.d/rc.local: line 18: /dev/tcp/content.example.com/80: Connection refused
Jan 13 01:00:31 vm138 rc.local: /etc/rc.d/rc.local: connect: Connection refused
Jan 13 01:00:31 vm138 rc.local: /etc/rc.d/rc.local: line 18: /dev/tcp/content.example.com/80: Connection refused
Jan 13 01:00:31 vm138 root: test
Jan 13 01:00:34 vm138 rc.local: /etc/rc.d/rc.local: connect: Connection refused
Jan 13 01:00:34 vm138 rc.local: /etc/rc.d/rc.local: line 18: /dev/tcp/content.example.com/80: Connection refused
然后可以在接收方172.25.254.88中得到消息
Jan 13 00:57:26 vm138 root: test
日志采集格式的设定
在日志接收方修改/etc/rsyslog.conf,添加所需要的格式
$template LOGFMT,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
*.info;mail.none;authpriv.none;cron.none /var/log/messages;LOGFMT
然后进行重新加载服务
[root@server88 ~]# systemctl restart rsyslog.service
在接受端再次接受到日志消息就是设定的格式
Jan 13 14:53:31 172.25.254.138 root: test
Jan 13 14:53:32 172.25.254.138 root: test
时间同步服务器
服务名称:chronyd
修改:将172.25.254.88作为服务器时间源,由172.25.254.138与其进行时间同步
首先在服务端修改服务配置文件
[root@server88 ~]# vim /etc/chrony.conf
22 allow 172.25.254.0/24 ##修改网段/掩码,允许哪些用户进行时间同步
29 local stratum 10 ##本机不同步其他机器的时间,只作为时间源
重启服务并更改时区
[root@server88 ~]# systemctl restart chronyd.service
[root@server88 ~]# timedatectl set-timezone Asia/Shanghai
在138客户端
[root@vm138 ~]# vim /etc/chrony.conf #更改第三行信息
3 server 172.25.254.88 iburst #表示同步172.25.254.88主机的时间
[root@vm138 ~]# systemctl restart chronyd.service
[root@vm138 ~]# timedatectl set-timezone Asia/Shanghai
测试:
看看服务端的时间
[root@server88 ~]# date
Sun Jan 13 14:31:42 CST 2019
任意修改一下客户端的时间
[root@vm138 ~]# date 12121212
Thu Dec 12 12:12:00 CST 2019
之后进行客户端时间同步
[root@vm138 ~]# chronyc sources -v ##时间同步
210 Number of sources = 1
.-- Source mode '^' = server, '=' = peer, '#' = local clock.
/ .- Source state '*' = current synced, '+' = combined , '-' = not combined,
| / '?' = unreachable, 'x' = time may be in error, '~' = time too variable.
|| .- xxxx [ yyyy ] +/- zzzz
|| / xxxx = adjusted offset,
|| Log2(Polling interval) -. | yyyy = measured offset,
|| \ | zzzz = estimated error.
|| | |
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* 172.25.254.88 10 6 77 27 -32.6s[-7244ms] +/- 106us
[root@vm138 ~]# date
Sun Jan 13 14:34:08 CST 2019 ##完成与服务器的时间同步
journal
journalctl #查看日志的工具
journalctl -n 3 #查看最近3条日志
journalctl -p err #查看错误日志
--since:查看从什么时间开始的日志
--until:查看从什么时间截止的日志
这两个命令可以组合使用
Journalctl --since ‘2018-11-11 11:11’ --until ‘2018-12-12 11:11’
###如何使用systemd-journald保存系统日志
默认systemd-journald是不保存日志到硬盘的
关机之后再次开机只能看到开机后的日志
之前的就看不到了
[root@vm138 ~]# mkdir /var/log/journal
[root@vm138 ~]# chgrp systemd-journal /var/log/journal/
[root@vm138 ~]# chmod g+s /var/log/journal/
[root@vm138 ~]# ll -d /var/log/journal
drwxr-sr-x. 2 root systemd-journal 6 Jan 13 16:19 /var/log/journal
[root@vm138 ~]# ps aux | grep systemd-journal
root 359 0.0 0.2 40864 2244 ? Ss 16:15 0:00 /usr/lib/systemd/systemd-journald
root 1833 0.0 0.0 112644 940 pts/0 S+ 16:22 0:00 grep --color=auto systemd-journal
[root@vm138 ~]# killall -1 systemd-journald
[root@vm138 ~]# ps aux | grep systemd-journal
root 1748 0.4 0.5 42992 4996 ? Ss 16:29 0:00 /usr/lib/systemd/systemd-journald
root 1754 0.0 0.0 112640 940 pts/0 R+ 16:29 0:00 grep --color=auto systemd-journal
[root@vm138 ~]# ls /var/log/journal
946cb0e817ea4adb916183df8c4fc817
[root@vm138 ~]# cd /var/log/journal
[root@vm138 journal]# ll
total 4
drwxr-sr-x. 2 root systemd-journal 4096 Jan 13 16:30 946cb0e817ea4adb916183df8c4fc817
文件建立的时间是16:25
drwxr-sr-x. 3 root systemd-journal 45 Jan 13 16:25 journal
重新启动后的journalctl日志起始时间就是文件建立时间
[root@vm138 ~]# reboot
Connection to 172.25.254.138 closed by remote host.
Connection to 172.25.254.138 closed.
[kiosk@foundation38 ~]$ ssh [email protected]
[email protected]'s password:
Last login: Sun Jan 13 16:25:46 2019 from 172.25.254.38
[root@vm138 ~]# journalctl
-- Logs begin at Sun 2019-01-13 16:25:05 CST, end at Sun 2019-01-13 16:35:09 CST