Redhat持久化日志实战示例详解

目录
  • 持久化日志
  • 实战练习:收集信息

持久化日志

默认情况下,Red Hat Enterprise Linux 7将系统日志存储在/run/log/journal中,该日志存储在tmpfs(临时文件系统)上。这意味着在重新启动时,所有存储的信息都将丢失。如果目录/var/log/journal存在,日志将存储在那里,从而在重新引导后启用持久日志。

可以通过使用以下步骤来启用持久性日志:

mkdir/var/log/journal
chown root:systemd-journal  /var/log/journal
chmod 2755   /var/log/journal

通过向systemd-journald发送USR1信号,通知它应该使用新位置。当然你也是可以重启的:

 killall -USR1 systemd-journald

实战练习:收集信息

在本实验中,我们呢将使用日志文件来排除web服务器的故障。

您的服务器一台机器正在运行一个web服务器,为文件servera.lab.example.com/test.html.提供服务。您的测试经理刚刚发来一张通知,告知您不能从web浏览器访问该文件。通知中没有给出进一步的信息。

使用servera上的日志文件调查此问题,然后解决此问题。

为了重现这个问题,你可以在火狐上浏览这是个网页,也可以执行下面的命令:

elinks -dump http://servera.lab.example.com/test.html

我们遇到HTTP 403的问题。这可能有很多原因:文件权限、Linux类型、内部httpd配置等。

你知道web服务器本身正在运行,并且防火墙是打开的。

我们去servera服务器上看看日志呀:

那我们就应该知道,在服务器上的httpd的日志大多数是存储在:

/var/log/httpd/access_log   for all access attempts
/var/log/httpd/error_log   for all errors.

1.首先我们在 /var/log/httpd/access_log这个地方查询关于test.html的任何消息。

grep test.html /var/log/httpd/access_log

这个输出中的403是HTTP状态代码。除此之外,可以看到请求的URL、请求的日期和时间,以及使用的用户代理,但是没有任何东西可以进一步帮助解决这个问题。

2.继续检查 /var/log/httpd/error_log

tail /var/log/httpd/error_log

这条消息告诉您httpd被文件权限阻止读取test.html文件。这排除了httpd的内部配置错误,所以文件权限和SELinux是可能的原因。

  • 检查/var/www/html/test.html上的文件权限,并在必要时进行修复。
[root@servera ~]# ls -l /var/www/html/test.html

第一组rw-: 表示这个文件的拥有者对它的权限:可读可写

第二组---: 表示这个文件的所属组对它的权限

第三组---: 表示这个文件的其他用户(相对于上面两类用户)对它的权限

我们可以看到这个权限是不太对的。

chmod 644 /var/www/html/test.html

我们让所有用户有可读权限。

我们使用Firefox或elinks再次测试对文件的访问,发现还是没有解决这个问题,那么说明文件权限问题不是全部问题。

那么就要去看看SElinux了:

SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。

  • 检查SELinux日志,查看今天发生的任何拒绝,并修复您可能发现的任何问题。

查看selinux今天是否有拒绝:

 ausearch -i -m avc -ts today

这表明test.html文件具有tmp_t的SELinux类型,所以httpd不允许打开它

通过在上运行递归restorecon修复此问题 /var/www

[root@servera ~]# restorecon -Rv /var/www

此时我们再次运行那个网页就发现OK了。

以上就是Redhat持久化日志实战示例详解的详细内容,更多关于Redhat持久化日志的资料请关注我们其它相关文章!

(0)

相关推荐

  • 红帽(RedHat8) RHEL8.0系统安装步骤图文教程(小白都会)

    可以去了解一下Red Hat8产品详情:https://www.RedHat.com/zh/enterprise-linux-8 先准备VMware Workstation 15 Pro版本,Red Hat8系统镜像,百度网盘链接如下: VMware Workstation 15 Pro版本(含密钥) 链接: https://pan.baidu.com/s/1jFVWhnCWb-mKtO7HPzCcKg 提取码: rn5a Red Hat8系统镜像下载链接: 链接: https://pan.ba

  • Redhat7.3安装MySQL8.0.22的详细教程(二进制安装)

    一.MySQL安装包下载 官网地址:https://dev.mysql.com/downloads/mysql/ 下载步骤: 过滤操作系统版本 选择归档安装包 下载后,上传并md5校验安装包是否与上图官方提供的值一致,确保传输过程安装包无损害 [root@MyDB1 ~]# cd /usr/local/software/ [root@MyDB1 software]# md5sum mysql-8.0.22-el7-x86_64.tar.gz 52e312605f66aaaa0efcd272b9f

  • 红帽RedHat 8.0新特性(网络、yum源、Web界面管理等)

    1.Red Hat8 配置静态IP 注意:Red Hat8网络管理默认使用NetworkManager,而不是之前版本的network. 按照之前版本我们一般通过配置文件设置静态IP地址信息,如下: [root@localhost ~]# cd /etc/sysconfig/network-scripts [root@localhost network-scripts]# cp ifcfg-ens160 ifcfg-ens160.bak // 备份一下,要养成习惯 手动添加静态IP地址: [ro

  • 安装redhat 8.0红帽系统的图文教程(小白必备)

    一.介绍 2019年5月红帽(Redhat)公司正式发布了RHEL8正式版操作系统,RHEL 8是为混合云时代重新设计的操作系统,旨在支持从企业数据中心到多个公共云的工作负载和运作,下面介绍一下安装redhat系统.红帽官方下载地址https://developers.redhat.com/products/rhel/download 二.安装 首先安装好虚拟化工具,我使用的是VMware® Workstation虚拟机, 01.新建虚拟机 选择自定义.下一步-下一步 选择安装的ISO 安装li

  • Redhat6.5安装oracle11g的方法

    一.    安装环境 linux服务器:Redhat 6.5 64位 oracle版本:oracle11gR2 远程windows服务器:已安装Xmanager 内存:8G 存储空间:1T 二.    安装前系统设置 1.软连接lib库:ln -s /lib/libc.so.6 /lib/libc.so.5 2.修改一下lib库搜索路径vim /etc/ld.so.conf 有以下内容 include ld.so.conf.d/*.conf 改为: include ld.so.conf.d/*.

  • VMware中安装Linux系统(Redhat8)及虚拟机的网络配置方法

    1.安装vmware 1.1下载VMware workstations: 选择15.x版本,下载地址可在百度搜索,或者直接在软件管家下载即可 1.2安装vmware 跟着安装向导走即可,只需在安装过程中输入注册许可证密钥 任意输入以下密钥,可完成注册: CZ7WU-2MF01-488FZ-L6Z5T-PYAU4 CY1TH-0XZ5M-M85NY-MNXGG-ZZHU8 ZZ3EK-62W1P-H803P-4WN7T-Q7HT2 CY75U-ATW0P-H8EYZ-WDZE9-N68D6 GY7

  • Redhat持久化日志实战示例详解

    目录 持久化日志 实战练习:收集信息 持久化日志 默认情况下,Red Hat Enterprise Linux 7将系统日志存储在/run/log/journal中,该日志存储在tmpfs(临时文件系统)上.这意味着在重新启动时,所有存储的信息都将丢失.如果目录/var/log/journal存在,日志将存储在那里,从而在重新引导后启用持久日志. 可以通过使用以下步骤来启用持久性日志: mkdir/var/log/journal chown root:systemd-journal /var/l

  • logback自定义json日志输出示例详解

    目录 前言 依赖的jar maven坐标 配置Appender节点 appender配置说明: 配置logger节点 logger配置说明: 前言 先说下楼主的使用场景吧,将程序的某些方法调用以json格式的内容记录到文件中,提供给大数据做数据分析用.当然这个需求实现起来很简单,通过aop拦截切面统一输出内容到文件即可.下面要介绍的就是通过logback日志体系以及logstash提供的json log依赖将数据以json格式记录到日志文件的例子. 依赖的jar logstash-logback

  • Vue3中Vuex状态管理学习实战示例详解

    目录 引言 一.目录结构 二.版本依赖 三.配置Vuex 四.使用Vuex 引言 Vuex 是 Vue 全家桶重要组成之一,专为 Vue.js 应用程序开发的 状态管理模式 + 库 ,它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 一.目录结构 demo/ package.json vite.config.js index.html public/ src/ api/ assets/ common/ components/ store/ index.

  • Awaitility同步异步工具实战示例详解

    目录 引言 1. awaitility入门 1.1 静态导入 1.2 简单例子 2. awaitility在RocketMQ中的实战 3. 总结 引言 在编写测试用例的时候遇到有异步或者队列处理的时候经常会用到 Thread.sleep() 等待来进行测试.例如:DLedger 测试选举的过程.当DLedger Leader下线.此时DLedger会重新发起选举,这个选举的过程是需要一定时间.很多时候在测试代码中就会使用 Thread.sleep . 由于选举需要的时间多少不确定所以sleep时

  • Gin与Mysql实现简单Restful风格API实战示例详解

    目录 It works main.go 编译运行 数据库 CURD 增删改查 增 查 查询列表 Query 查询单条记录 QueryRow 改 删 组织代码 封装模型方法 Handler函数 组织项目 数据库处理 数据model封装 handler 路由 分组路由 app入口 总结 我们已经了解了Golang的Gin框架.对于Webservice服务,restful风格几乎一统天下.Gin也天然的支持restful.下面就使用gin写一个简单的服务,麻雀虽小,五脏俱全.我们先以一个单文件开始,然

  • Java实战之实现物流配送系统示例详解

    目录 介绍 效果图展示 主要实现代码 介绍 系统分普通用户.企业.超级管理员等角色,除基础脚手架外,实现的功能有: 超级管理员:系统管理.用户管理.企业用户管理.普通用户管理.货物类型管理.车辆管理.公告管理.使用帮助等. 普通用户:注册登录.个人信息管理(个人资料.密码修改.充值.订单管理等).货物浏览.公告查看.下单等. 企业用户:注册登录.修改密码.充值.订单管理.货物管理.车辆管理.安排车辆等. 运行环境:windows/Linux均可.jdk1.8.mysql5.7.redis3.0.

  • Python深度学习实战PyQt5布局管理项目示例详解

    目录 1. 从绝对定位到布局管理 1.1 什么是布局管理 1.2 Qt 中的布局管理方法 2. 水平布局(Horizontal Layout) 3. 垂直布局(Vertical Layout) 4. 栅格布局(Grid Layout) 5. 表格布局(Form Layout) 6. 嵌套布局 7. 容器布局 布局管理就是管理图形窗口中各个部件的位置和排列.图形窗口中的大量部件也需要通过布局管理,对部件进行整理分组.排列定位,才能使界面整齐有序.美观大方. 1. 从绝对定位到布局管理 1.1 什么

  • Python深度学习实战PyQt5窗口切换的堆叠布局示例详解

    目录 1. 堆叠布局简介 1. 1什么是堆叠布局(Stacked Layout) 1.2 堆叠布局的实现方法 2. 创建多窗口切换的堆叠布局 3. 堆叠布局的主程序设计 3.1 QStackedWidget 类 3.2 建立信号/槽连接 3.3 页面控制程序 3.4 堆叠布局中的控件操作 软件项目中经常需要多种不同的图形界面,以适应不同的任务场景.选项卡控件(QTackedWidget)通过标签选择打开对应的对话框页面,不需要另外编程.堆叠窗口控件(QStackedWidget)在主程序中通过编

  • python机器学习Sklearn实战adaboost算法示例详解

    目录 pandas批量处理体测成绩 adaboost adaboost原理案例举例 弱分类器合并成强分类器 pandas批量处理体测成绩 import numpy as np import pandas as pd from pandas import Series,DataFrame import matplotlib.pyplot as plt data = pd.read_excel("/Users/zhucan/Desktop/18级高一体测成绩汇总.xls") cond =

  • Python实现日志实时监测的示例详解

    目录 介绍 观察者模式类图 观察者模式示例 1.创建订阅者类 2.创建发布者类 3.应用客户端-Map_server_client.py 4.测试 介绍 观察者模式:是一种行为型设计模式.主要关注的是对象的责任,允许你定义一种订阅机制,可在对象事件发生时通知多个"观察"该对象的其他对象.用来处理对象之间彼此交互. 观察者模式也叫发布-订阅模式,定义了对象之间一对多依赖,当一个对象改变状态时,这个对象的所有依赖者都会收到通知并按照自己的方式进行更新. 观察者设计模式是最简单的行为模式之一

随机推荐