首页 > 系统相关 >linux文件系统与日志分析

linux文件系统与日志分析

时间:2023-11-09 16:35:09浏览次数:33  
标签:文件 log 文件系统 用户 linux var 日志 inode

Linux文件系统

inode表结构

每一个inode表记录对应的保存了以下信息:

  • inode number 节点号

  • 文件类型

  • 权限

  • UID

  • GID

  • 链接数(指向这个文件名路径名称个数)

  • 该文件的大小和不同的时间戳

  • 指向磁盘上文件的数据块指针

  • 有关文件的其他数据 

ls  -i:查看inode号

 stat:也可以查看设备inode号

 #stat会显示设备变动的时间

3个时间

atime:最后一次查看文件的时间

mtime:最近更改文件内容的时间;更改完内容之后ctime也会改变

ctitme:最近更改文件元信息的时间,比如改权限等

inode表 也会占用磁盘空间

cp和inode

  • 分配一个空闲的inode号,在inode表中生成新条目

  • 在目录中创建一个目录项,将名称与inode编号关联

  • 拷贝数据生成新的文件

rm和inode

  • 硬链接数递减,从而释放的inode号可以被重用

  • 把数据块放在空闲列表中

  • 删除目录项

  • 数据实际上不会马上被删除,但当另一个文件使用数据块时将被覆盖

mv和inode

  • 如果mv命令的目标和源在同一设备,

    不影响inode表(除时间戳)或磁盘上的数据位置:没有数据被移动!

    删除旧的目录对应关系新建目录对应关系

硬链接和软链接与inode

  硬链接 软链接
本质 本质是同一个文件 本质不是同一个文件
inode 相同 不同
连接数 创建新的硬链接,连接数会增加,删除会减少 新建和删除都不会改变
文件夹 不支持 支持
删除源文件 只是连接数减一,但连接文件的访问不受影响

无法访问连接的文件

文件类型 和源文件相同 路径文件和源文件无关
文件大小 和源文件相同 源文件的路径长度

日志

内核及系统日志由系统服务 rsyslog 统一管理,根据其主配置文件 /etc/rsyslog.conf

Linux 操作系统本身和大部分服务器程序的日志文件都默认放在目录/var/log/下

日志文件的格式主要为:

  • 事件产生的时间
  • 产生事件的服务器的主机名
  • 产生事件的服务名或程序名
  • 事件的具体信息

 

常见的一些日志文件:

/var/log/messages 它是核心系统日志文件,其中包含了系统启动时的引导信息,以及系统运行时的其他状态消息。I/O 错误、网络错误和其他系统错误都会记录到此文件中。其他信息,比如某个人的身份切换为 root,已及用户自定义安装软件的日志,也会在这里列出
内核和公共日志
/var/log/cron 记录与系统定时任务相关的日志
计划任务日志
/var/log/dmesg 记录了系统在开机是内核自检的信息,也可以使用dmesg命令直接查看内核自检信息
系统引导日志

/var/log/maillog

记录邮件信息的日志
邮件日志
/var/log/lastlog 记录系统中所有用户最后一次的登录时间的曰志。这个文件也是二进制文件.不能直接用Vi 查看。而要使用lastlog命令查看

/var/log/secure

记录验证和授权方面的倍息,只要涉及账户和密码的程序都会记录,比如系统的登录、ssh的登录、su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中

/var/log/wtmp

记永久记录所有用户的登陆、注销信息,同时记录系统的启动、重启、关机事件。同样,这个文件也是二进制文件.不能直接用Vi查看,而要使用last命令查看

/var/log/ulmp

记录当前已经登录的用户的信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息。同样,这个文件不能直接用Vi查看,而要使用w、who、users等命令查看

用户日志

 

 

在 Linux 内核中,根据日志消息的重要程度不同,将其分为不同 的优先级别(数字等级越小,优先级越高,消息越重要)

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

用户日志:

在wtmp、btmp、lastlog等日志中,保存了系统用户登录、退出等相关的事件信息,

但是这些文件都是二进制的数据文件,不能直接tail、less等文本查看工具进行查看,

需要使用who、w、user、last和lastb等用户查询命令来获取日志信息。

who

who命令用于报告当前登录到系统中的每个用户的信息

 #该命令可以看用户名、终端类型、登录日期及远程主机

w

w命令用于显示当前系统中的每个用户及其所运行的进程信息

 user

user命令只是简单的输出当前登录的用户

 last

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

 lastb

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

 

实验:将日志文件全部放在日志文件服务器上

 ##编辑文件取消第19 20 行注释允许服务器使用TCP 514端口接收日志

 #查看514端口是否开启

 #重启rsyslog日志服务

 #打开一台新的虚拟机作为客户端

 #把所有日志采用TCP协议发送到192.168.116.8的514端口上

 #重启rsyslog日志服务

 #在客户端机器上尝试写日志

#服务端可以正常接受

 

标签:文件,log,文件系统,用户,linux,var,日志,inode
From: https://www.cnblogs.com/chenjw0608/p/17822123.html

相关文章

  • Linux之PWM风扇驱动
    Linux之PWM风扇驱动背景该驱动主要是用于PWM模块去驱动散热风扇,使用通用的PWM接口,只要主控Soc的PWM模块使用的是标准通用的PWM框架,则可以适用于任何主控Soc,与具体的硬件无关。用户空间接口驱动程序给用户空间提供了相应hwmon的sysfs接口: /sys/class/hwmon/hwmon-x/,主要是对PWM的......
  • Linux之IR驱动
    Linux之IR驱动背景在光谱中波长自760nm至400um的电磁波称为红外线,它是一种不可见光。红外遥控成本很低,以前广泛应用在电视,空调等电器的控制上面,现在随着蓝牙遥控器慢慢普及,红外遥控越来越少,但在某些场景,还保留着红外通信红外属于media子系统里面的rc(remotecontrol)模块,所以相关驱......
  • ELK日志收集&&日志收集方案
    31.ELK日志收集日志分析系统-k8s部署ElasticSearch集群-帝都攻城狮-博客园(cnblogs.com)https://blog.csdn.net/miss1181248983/article/details/11377394331.1日志收集方式 1.node节点收集,基于daemonset部署日志收集进程,实现json-file类型(标准输出/dev/stdou......
  • Linux程序崩溃自启动方法
     linux进程挂掉后,可以通过配置systemd来自动启动服务1.创建systemd服务文件,例如:huyang.service,需要放置在系统文件夹/etc/systemd/system2.编辑文件,填写详细信息3.操作systemd服务[Unit]Description=huyangSCRSserver#对服务的描述After=netw......
  • Linux关闭防火墙命令
    1:查看防火状态systemctlstatusfirewalldservice iptables status2:暂时关闭防火墙systemctlstopfirewalldservice iptables stop3:永久关闭防火墙systemctldisablefirewalldchkconfigiptablesoff4:重启防火墙systemctlenablefirewalldserviceiptablesrestart ......
  • loki采集k8s日志
    前言loki是轻量、易用的日志聚合系统。如果你的k8s集群规模并不大,推荐使用grafana+loki的方案来做微服务日志的采集;Loki组成loki架构很简单,主要由3部分组成:loki:服务端,负责存储日志和处理查询;promtail:采集端,负责采集日志发送给loki;grafana:负责采集日志的展示;promtail.ymlkubectl......
  • 防火墙的限制规则2(Linux)
    一:设置防火墙的规则2firewalld通过守护进程(usr/sbin/firewalld)、配置文件(usr/lib/firewalld、/etc/firewalld)、配置命令forewalld-cmd(/usr/sbin/firewalld-cmd)和GUI配置应用程序firewall-config(/use/sbin/firewall-config)来提供服务。在firewalld服务中,有几种类型的......
  • Linux 服务器如何实现数据同步?
    一、简介1认识Rsync(remotesynchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。Rsync使用所谓的“Rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快;Rsync支持大多数的类Unix系统......
  • 【Linux上机实验】新实验五 shell编程
    【前言】愿,所有相遇,都恰逢其时!愿,此刻心头,正满怀欣喜!---你好,朋友,欢迎你! ---对此篇博客中有任何问题和不懂的可以咨询QQ:27595909051.编写脚本,从键盘输入10个数,并计算这些数的和(用数组存放20个数)。1.输入visum.sh,创建一个名为"sum.sh"的文件......
  • Linux第十一周学习报告
    进程管道 管道也是一种重定向,重定向字符控制输出到文件,管道控制输出到其他程序;它的作用是把上一个进程的输出作为下一个进程的输入,可以把多个进程连接到一起。 1、将etc/passwd中的用户按照UID数值大小排序,显示前三行,其中“-t”指定字段分隔符。“-k”指定字段,“-n”表示按......