Linux文件系统与日志分析

目录

一、Linux文件系统

1、inode与block

2、查看inode号码的命令

3、inode包含文件的元信息

4、Linux系统文件的三个主要时间属性

5、用户通过文件名打开文件时系统内部过程

6、inode的大小

7、inode的特点

二、日志

1、日志的功能

2、日志文件的分类

3、系统日志介绍

3、ELK

4、rsyslog管理

5、rsyslog配置文件

6、用户登录日志

7、last和lastb:查询用户登录的历史记录

8、journalctl日志管理工具

9、查询当前登录的用户情况

10、日志的管理策略

三、实操:将ssh服务日志单独存放

1、进入rsyslog配置文件,添加自己的文件位置

2、进入ssh配置文件,将ssh配置成使用local6

3、重启服务

4、验证,并查看本机日志记录(tail -f /var/log/secure)

四、实操:通过网络将本地的日志远程备份到另外一台机器

1、两台机器都关闭防火墙工具与selinux

2、打开配置文件,进行修改配置

3、重启服务

4、查看514端口是否启动

5、测试使用logger写入一条测试日志

6、接收方开启TCP和端口514

7、重启日志服务

8、查看接收方是否能收到日志记录


一、Linux文件系统

1、inode与block

文件数据包括元信息与实际信息,文件存储在硬盘上,硬盘最小的存储单位是扇区,每个扇区存储512个字节。

①block:块。连续的八个扇区组成一个block,大小为4k。(是文件存储的最小的单位)

②inode:索引节点,用于存储元信息,在同一个硬件设备上是唯一的,是可以被用完的,用完后无法创建任何文件。

③block和inode的关系:一个文件必须占用一个inode号,但是至少占用一个block。

2、查看inode号码的命令

1.	查看文件名对应的inode号码ls -i 文件名
2. 	查看文件inode信息中的inode号码stat 文件名

3、inode包含文件的元信息

  • 文件的字节数(字节占用多少空间,也称文件大小)
  • 文件拥有者的 User ID
  • 文件的 Group ID
  • 文件的读、写、执行权限
  • 文件的时间戳(ctime、atime、mtime)
  • 文件类型
  • 链接数
  • 有关文件的其他数据
  • 不包含文件名,文件名在目录结构中

4、Linux系统文件的三个主要时间属性

①ctime:最后一次改变问价或目录的时间

②atime:最后依次访问文件或目录的时间

③mtime:最后一次修改文件或目录(内容)

5、用户通过文件名打开文件时系统内部过程

①系统找到与这个文件名对应的inode号码

②通过inode号码,获取inode信息

③根据inode信息,找到文件数据所在的block,读出数据

例题:磁盘有剩余,但无法继续建立文件?

inode用完了,lvm扩容,普通分区删除无用文件。

6、inode的大小

①inode号也会消耗硬盘空间,每个inode的大小一般是128字节或256字节

②inode在同一个文件系统里唯一,在不同的文件系统中可以重复

查看每个硬盘分区的inode总数和已经使用的数量,可以用命令df -i

7、inode的特点

①删除inode的方法:

删除inode号的方法:方法一: find 文件位置 -inum inode号码 -exec rm -rf {} \;方法二: find 文件位置 -inum inode号码 -delete

二、日志

日志默认保存在/var/log目录下

1、日志的功能

①用于记录系统,程序运行中发生的各种事件

②通过阅读日志,有助于诊断和解决系统故障

2、日志文件的分类

①由系统服务rsyslog统一进行管理,日志格式基本相似

②主配置文件/etc/rsyslog.conf

③记录系统用户登录及退出系统的相关信息

④由各种应用程序独立管理的日志文件,记录格式不统一

3、系统日志介绍

①sysklogd系统日志服务

②rsyslog系统日志服务

rpm -qi rsyslog
#查看rsyslog的详细信息
rpm -ql rsyslog
#查看rsyslog的文件列表

3、ELK

由Elasticsearch, Logstash, Kibana三个软件组成

4、rsyslog管理

4.1日志消息的级别

Linux系统内核日志消息的优先级别(数字等级越小,优先级越高,消息越重要):

级别    消息           级别    具体描述
0    EMERG          紧急    会导致主机系统不可用的情况
1    ALERT            警告    必须马上采取措施解决的问题
2    CRIT               严重    比较严重的情况
3    ERR               错误     运行出现错误
4    WARNING     提醒     可能影响系统功能,需要提醒用户的重要事件
5    NOTICE         注意     不会影响正常功能,但是需要注意的事件
6    INFO              信息     一般信息
7    DEBUG          调试     程序或系统调试信息等
是yum或rpm安装配置文件一般放在etc下

在改配置文件一定要先备份,查看软件的配置文件位置,用rpm -qc软件名,去查看,一般以.conf

结尾的是配置文件。

5、rsyslog配置文件

配置文件格式:/etc/rsyslog.conf

①modules:相关模块配置

②global diretives:全局配置

③rules:日志记录相关的规则配置

6、用户登录日志

/var/log/secure: 记录用户认证相关的安全事件信息。
/var/log/lastlog: 记录每个用户最近的登录事件。二进制格式
/var/log/wtmp: 记录每个用户登录、注销及系统启动和停机事件。二进制格式
/var/ run/btmp: 记录失败的、错误的登录尝试及验证事件。二进制格式


7、last和lastb:查询用户登录的历史记录

①last命令用于查询成功登录到系统的用户记录

②lastb命令用于查询登陆失败的用户记录

用户名登录错误,密码输入错误都会被记录在里面,登录失败也属于安全时间,表示可能有人在尝试破解密码。除了使用lastb命令以外,还可以直接从安全日志/var/log/secure中获取相关信息。

8、journalctl日志管理工具

日志的配置文件:/etc/systemd/journald.conf

9、查询当前登录的用户情况

①users

②who

③w

10、日志的管理策略

  • 及时做好备份和归档
  • 延长日志保存期限
  • 控制日志访问权限
  • 日志中可能会包含各类敏感信息,如账户和口令等
  • 集中管理日志
  • 将服务器的日志文件发到统一-的日志文件服务器
  • 便于日志信息的统- -收集、 整理和分析
  • 杜绝日志信息的意外丢失、恶意篡改或删除

三、实操:将ssh服务日志单独存放

ssh远程连接协议:(1)压缩功能,传输快 (2)密文传输

1、进入rsyslog配置文件,添加自己的文件位置

vim /etc/rsyslog.conf

2、进入ssh配置文件,将ssh配置成使用local6

3、重启服务

4、验证,并查看本机日志记录(tail -f /var/log/secure)

四、实操:通过网络将本地的日志远程备份到另外一台机器

就算本机系统崩溃,我们可以查看另一台机器备份的日志,来排查故障

1、两台机器都关闭防火墙工具与selinux

2、打开配置文件,进行修改配置

3、重启服务

4、查看514端口是否启动

5、测试使用logger写入一条测试日志

6、接收方开启TCP和端口514

7、重启日志服务

systemctl restart rsyslog.service

8、查看接收方是否能收到日志记录

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/607025.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解锁前端新潜能:如何使用 Rust 锈化前端工具链

前言 近年来,Rust的受欢迎程度不断上升。首先,在操作系统领域,Rust 已成为 Linux 内核官方认可的开发语言之一,Windows 也宣布将使用 Rust 来重写内核,并重写部分驱动程序。此外,国内手机厂商 Vivo 也宣布…

语言栏中的半角和全角

语言栏中的半角和全角 1. 语言栏2. Halfwidth and fullwidth forms3. Monospaced fontReferences 1. 语言栏 任务栏设置 时间和语言 输入 高级键盘设置 文本服务和输入语言 2. Halfwidth and fullwidth forms 半角和全角,别名半形和全形。 In CJK (Chinese, Japa…

并发编程之CASAtomic原子操作

目录 什么是CAS? CAS 原子操作的三大问题 ABA问题 循环时间长开销大 只能保证一个共享变量的原子操作 jdk中的原子操作类 AtomicInteger AtomicLong AtomicReference LongAdder 什么是CAS? CAS是“比较并交换”(Compare and Swap&a…

sentinel入门,转载的,不记得在哪复制的了

sentinel 基本概念 开发的原因,需要对吞吐量(TPS)、QPS、并发数、响应时间(RT)几个概念做下了解,查自百度百科,记录如下: 响应时间(RT)   响应时间是指系统对请求作出响应的时间。…

python按列写入数据到excel

要将数据按列写入 Excel,可以使用 Python 的 openpyxl 库。 首先,需要安装 openpyxl 库。可以使用以下命令在终端或命令提示符中安装: pip install openpyxl然后,可以按照以下步骤编写代码: 1.导入 openpyxl 库&…

Prokka: ubuntu安装的时候出现错误

[14:10:57] Running: cat /app/prokka_result/ref_file/ref_file.HAMAP.hmm.tmp.77.faa | parallel --gnu --plain -j 2 --block 108208 --recstart ‘>’ --pipe hmmscan --noali --notextw --acc -E 1e-09 --cpu 1 /opt/prokka/db/hmm/HAMAP.hmm /dev/stdin > /app/pro…

Linux 网络工具

sar 利用 sar 工具来监控网络情况&#xff0c;命令行形式&#xff1a; sar -n [keyword] [ <interval> [ <count> ] ]参数说明&#xff1a; -n&#xff1a;表示网络性能监控。 keyword 的取值如下&#xff1a; DEV&#xff1a;显示网络接口信息。EDEV&#xff…

基于多反应堆的高并发服务器【C/C++/Reactor】(中)HttpResponse的定义和初始化 以及组织 HttpResponse 响应消息

一、HttpResponse的定义 1.定义状态码枚举 // 定义状态码枚举 enum HttpStatusCode {Unknown 0,OK 200,MovedPermanently 301,MovedTemporarily 302,BadRequest 400,NotFound 404 }; 2.HTTP 响应报文格式 这个数据块主要是分为四部分 第一部分是状态行第二部分是响应…

Hyperledger Fabric 管理链码 peer lifecycle chaincode 指令使用

链上代码&#xff08;Chaincode&#xff09;简称链码&#xff0c;包括系统链码和用户链码。系统链码&#xff08;System Chaincode&#xff09;指的是 Fabric Peer 中负责系统配置、查询、背书、验证等平台功能的代码逻辑&#xff0c;运行在 Peer 进程内&#xff0c;将在第 14 …

【嵌入式-网络编程】vmware中使用UDP广播失败问题

问题描述&#xff1a; 自己在vmware中搭建了2台虚拟机&#xff0c;虚拟机A向虚拟机A和虚拟机B发送广播信息&#xff0c;接收端在虚拟机A和虚拟机B&#xff0c;这个时候&#xff0c;由于没配置sin.sin_addr.s_addr htonl(INADDR_ANY);&#xff0c;而是配置的inet_pton(AF_INET,…

基于多反应堆的高并发服务器【C/C++/Reactor】(中)HttpRequest模块 解析http请求协议

一、HTTP响应报文格式 HTTP/1.1 200 OK Bdpagetype: 1 Bdqid: 0xf3c9743300024ee4 Cache-Control: private Connection: keep-alive Content-Encoding: gzip Content-Type: text/html;charsetutf-8 Date: Fri, 26 Feb 2021 08:44:35 GMT Expires: Fri, 26 Feb 2021 08:44:35 GM…

今日实践 — 附加数据库/重定向失败如何解决?

WMS数据库与重定向 前言正文如何建立数据库连接&#xff1f;第一步&#xff1a;打开SSMS&#xff0c;右击数据库&#xff0c;点击附加第二步&#xff1a;点击添加第三步&#xff1a;找到自己的数据库文件&#xff0c;点击确定按钮第四步&#xff1a;若有多个数据库&#xff0c;…

如何使用静态IP代理解决Facebook多账号注册并进行网络推广业务?

在当今的数字时代&#xff0c;社交媒体成为了企业进行网络推广的一个重要途径&#xff0c;其中&#xff0c;Facebook是最受欢迎的社交媒体之一&#xff0c;因为它可以让企业通过创建广告和页面来推广他们的产品或服务。 但是&#xff0c;使用Facebook进行网络推广时&#xff0…

Spring Cloud GateWay实现熔断降级

熔断降级 当分布式系统中的网关接收到大量请求并向后端远程系统或服务发起调用时&#xff0c;后端服务可能会产生调用失败&#xff08;如超时或异常&#xff09;。这时&#xff0c;如果让请求继续堆积在网关上&#xff0c;可能会导致整个系统的瘫痪。因此&#xff0c;需要快速…

React16源码: React中Fiber对象的源码实现

关于 Fiber 对象 在FiberRoot里面&#xff0c;它也会为我们去创建的一个对象叫做 Fiber在 React16 之后, 非常核心&#xff0c;非常重要的一个东西A. 每个 ReactElement 都会对应一个 Fiber 对象B. 它会记录节点的各种状态 比如&#xff0c;class component&#xff0c;它的st…

面试算法101:分割等和子集

题目 给定一个非空的正整数数组&#xff0c;请判断能否将这些数字分成和相等的两部分。例如&#xff0c;如果输入数组为[3&#xff0c;4&#xff0c;1]&#xff0c;将这些数字分成[3&#xff0c;1]和[4]两部分&#xff0c;它们的和相等&#xff0c;因此输出true&#xff1b;如…

Docker 中使用超级用户

在docker中安装keytool产生的问题&#xff1a; sudo apt-get install openjdk-8-jre-headless bash: sudo: command not found elasticsearchd989639e3cb4:~/config/certs$ apt-get install openjdk-8-jre-headless E: Could not open lock file /var/lib/dpkg/lock-frontend …

【代码复现系列】paper:CycleGAN and pix2pix in PyTorch

或许有冗余步骤、之后再优化。 1.桌面右键-git bash-输入命令如下【git clone https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix】 2.打开anaconda的prompt&#xff0c;cd到pytorch-CycleGAN-and-pix2pix路径 3.在prompt里输入【conda env create -f environment.y…

【数值分析】逼近,正交多项式

逼近 由离散点&#xff08;函数表&#xff09;给出函数关系通常有两种方法&#xff1a; 使用多项式插值 使用多项式插值会带来两个问题&#xff1a;1. 龙格现象2. 数值本身带有误差&#xff0c;使用插值条件来确定函数关系不合理三次样条插值 三次样条插值克服了龙格现象&…

多线程在编程中的重要性有什么?并以LabVIEW为例进行说明

多线程在编程中的重要性体现在以下几个方面&#xff1a; 并行处理&#xff1a; 多线程允许程序同时执行多个任务&#xff0c;这在现代多核心处理器上尤其重要。通过并行处理&#xff0c;可以显著提高程序的执行效率和响应速度。 资源利用最大化&#xff1a; 通过多线程&#x…