当前位置: 首页 > news >正文

文件系统和日志管理

一、文件系统

1.概述

文件系统:文件系统提供了一个接口,用户用来访问硬件设备(硬盘)。硬件设备上对文件的管理。文件存储在硬盘上,硬盘最小的存储单位是512字节(扇区)。文件在硬盘上的最小存储单位:块(block) 一个块的大小是4k,一个块就是连续的8个扇区

2.存储文件的方式

  • 实际数据

文件内部的数据保存在硬盘上

  • 元信息

文件的所有者、所在组、最后一次修改时间、文件的大小、文件的权限等。

存储元信息的标识:inode号

inode:不包含文件名,每个文件(目录)创建时都会分配一个全局(当前设备)唯一的识别码。

识别码inode,当一个文件被删除之后,inode号也会回收,供下一个文件继续使用。

df     -i      #查看挂载点inode号使用的情况

硬盘的空间越大,可用的inode号越多

文件无法被创建的原因

磁盘损坏;磁盘配额限制;inode号用尽

ext4文件系统   用完了inode号,文件不能再创建

xfs文件系统     inode号用尽,还可以创建文件(有限)

inode号和文件名分离,使得linux操作系统会出现以下几个现象:

  • 文件名包含特殊字符可能无法正常删除(rm -rf),只能通过inode号进行删除
  • 剪切或者重命名文件,inode号不会发生变化
  • 当用户对文件进行操作时,系统以inode号来识别,不以文件名
  • 文件的数据发生变化,文件的权限发生变化,inode号可能发生改变

 3.xfs文件系统的备份和恢复

 在ubuntu上操作:

#安装依赖环境

apt -y install xfsdump

apt -y install xfsprogs

先备份再恢复

xfsdump 备份

备份级别:0 和 1-9

0         表示全量备份,xfsdump默认备份级别为0

1-9      表示增量备份

xfsdump的常用选项:

-f         指定备份文件的目录

-L        指定标签

-M       指定设备标签

-s        备份单个文件(一般不使用)

xfsrestore 恢复

-f         指定从哪个文件进行恢复

xfs备份恢复的注意点:

1、只有root权限才能备份和恢复

2、备份的目录必须是已挂载的设备

3、挂载的设备必须是xfs文件系统

4、恢复数据必须使用xfsrestore进行解析恢复

 二、日志系统

1.概述

日志:记录系统或者应用运行期间”所有信息“的文档。记录了一些必要的信息,关键的信息。

信息的意义:

  • 判断系统或者程序是否正常运行
  • 记录了故障的信息,告诉我们是什么原因产生的故障

2.日志的种类

系统日志

基本操作系统控制,产生的日志信息

ubuntu         /var/log/syslog

centos         /var/log/messages  

常见的系统日志文件

/var/log/syslog      记录了linux系统的内核消息以及各种应用的公共日志信息(系统控制产生的消息),包括启动、IO错误、网络错误、程序的故障

/var/log/cron          记录的定时任务产生的信息

/ver/log/secure      用户登录系统认证的相关信息

/var/log/maillog     记录的电子邮件的信息

Nov  7 16:33:23     日志产生的时间

ubuntu1          主机名

systemd[1]       systemd设备字段   [1]运行的pid号   systemd这个程序是系统当中的第一个进程,systemd是所有进程的父进程

apt-daily.service: Deactivated successfully     日志的内容

应用服务日志

  • 一般的应用安装完成之后,/var/log/服务的名称,记录的就是使用这个程序过程中产生的信息,不会记录到系统的日志中去
  • 自定义位置,修改应用的配置文件,可以自定义服务的日志路径
  • 日志的位置就在应用的安装目录 logs目录

基本上90%的应用日志的目录都是logs,都是以.log为结尾的文件

 192.168.206.1    电脑主机,谁访问了nginx的服务

[07/Nov/2024:16:48:28 +0800]     访问nginx的时间

"GET / HTTP/1.1"    GET 访问nginx的方式     / 访问的路径    HTTP/1.1  访问使用的协议

200 是服务器响应的状态码。396  服务器返回了396字节的数据。

"Mozilla/5.0 .......Edg/130.0.0.0" 具体信息:由安装了Edge浏览器的Windows 10系统发出请求。具体版本是Chrome/130.0.0.0和Edg/130.0.0.0

3.设备的字段 

设备字段说明
auth用户认证的日志
systemd系统管理程序的日志
cron定时任务的信息
mail邮件的信息
kern系统内核的信息
local自定义需要保存的日志,0-7都可以适用。对应的程序设置的local等级要一致

 实验:ssh服务单独存放

 rsyslog     #linux系统管理系统日志的工具

vim     /etc/rsyslog.conf #管理系统日志的配置文件

local6.*    /var/log/ssh.log

vim    /etc/ssh/sshd_config

SyslogFacility LOCAL6 #定义设备的名称,必须大写

#只要修改了应用的配置,想要配置生效,必须重启该应用

systemctl restart rsyslog

systemctl restart sshd

4.日志的级别

0-7  数字越小,优先级越高,消息越重要

级别说明
0        emerg紧急,系统/应用不可用,系统/应用崩溃的重要消息
1        alert警告,必须马上采取措施的信息,比如磁盘快满了、数据库被破坏
2        crit严重,程序的功能丧失,程序无法正常使用
3        error错误,运行出现了错误,需要尽快修复(看情况)
4        warning提醒,可能影响,但是不重要,只是提醒用户,不属于报错的范围
5        notice注意,不影响正常功能,但是需要注意的时间,无需处理
6        info信息,一般信息,正常运行的信息
7        debug调试,开发人员调试程序是产生的信息
none没有优先级,不记录任何日志的消息

#以上的优先级,可以用户自定义日志的级别,以获取我们想要的内容

*.*

左边:应用名称       右边:日志级别

mail.info   /var/log/mail.log    收集邮件的信息,包含info 以及info以上级别的信息

mail.=info /var/log/mail.log    收集邮件的信息,只收集info级别的日志

mail.!info 除了info级别的信息,其他的都收集

*.info    /var/log/syslog    *表示所有的程序(应用服务内核)

mail.*                              *表示所有级别的日志都收集

*.info;mail.none;nginx.=error /var/log/syslog (多个用;分开)

所有的程序的一般及一般以上和邮件的日志不记录和nginx只记录error的日志,保存到/var/log/syslog

5.journalctl 系统日志管理工具

journalctl    -u   应用名称    #只看某个应用

journalctl _PID=数字       #查看该进程号的信息

查看指定用户的日志:

journalctl _UID=数字   --since today #指定用户今天的日志

journalctl _UID=数字   --since yesterday #指定用户昨天产生的日志

journalctl    -xe     查看系统中systemd的日志


http://www.mrgr.cn/news/67791.html

相关文章:

  • 【学习笔记】SAP ABAP——OPEN SQL(一)【SELECT语句】
  • 带你搞懂红黑树的插入和删除
  • Solon2 开发之 IoC,十、Bean 在容器的两层信息
  • 3种方法轻松从硬盘恢复已删除文件!
  • printf影响单片机中断速度
  • 编译google protobuf项目,生成相应语言的dll文件
  • C++之SET容器
  • 大规模地图构建的细粒度高分辨率卫星数据集OpenSatMap(3787张高分辨率卫星图像)0.15-0.3m
  • 线上3D展厅能实现哪些交互效果?
  • vue2 pdf 链接地址打开
  • 数据结构——双链表
  • 双11疯狂凑单:累坏买家,坑惨卖家
  • 基于TRIZ的教育机器人功能创新
  • 动漫风格大模型和lora推荐
  • 基于 ESP AT 固件使用 BLE 静态配对码完成安全连接和通信
  • 《清宫辞Ⅱ》开机:陈欣予旗装惊艳回归 重新演绎宫闱传奇
  • 树状数组浅谈
  • 论文阅读:基于语义分割的非结构化田间道路场景识别
  • 100种算法【Python版】第55篇——Delaunay三角剖分之Bowyer-Watson算法
  • SSH实验3拒绝root用户远程登录
  • 2024.11.6:艾灸
  • hdmi介绍及DRM实现
  • 《现代网络技术》读书笔记:需求和技术
  • 年入百万:从初中辍学到 50 万读者!
  • audacity 保存中文文件保存报错问题解决
  • C++ OpenCV 理想滤波