0
点赞
收藏
分享

微信扫一扫

Linux基础11

上善若水山西太原 2022-03-20 阅读 155
linux

inode 和 block概述
文件数据包括元信息与实际数据

文件存储在硬盘上,硬盘最小存储单位是“扇区”,每个扇区存储512字节

block(块)

连续的八个扇区组成一个block

是文件存取的最小单位

inode(索引节点)

中文译名为“索引节点”,也叫 i节点

用于存储文件元信息

文件数据包括实际数据与元信息(类似文件属性)。文件数据存储在"块"中,存储文件元信息(比如文件的创建者、创建日期、文件大小、文件权限等)的区域就叫做inode。因此,一个文件必须占用一个 inode,并且至少占用一个 block。
inode不包含文件名。文件名是存放在目录当中的。Linux系统中一切皆文件,因此目录也是一种文件。

 

1 inode 表结构

每个文件的属性信息,比如:文件的大小,时间,类型,权限等,称为文件的元数据(meta data)

元数据是存放在inode(index node)表中。inode 表中有很多条记录组成,第一条记录对应的存放了一个

文件的元数据信息。

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

  • inode number 节点号

  • 文件类型

  • 权限

  • UID

  • GID

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

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

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

  • 有关文件的其他数据

 

 MBR的破坏与还原

 

 

 

 

 

2.刷新接口

 

 磁盘分区并更改属性

 

 

 

 

 

 

 

 

 

 

 

 输入reboot重启

修复完成

软链接与硬链接
硬连接 同一个文件取不同的名或者叫多个名字,不支持文件夹,创建一个链接数加一,多路径访问。不占用内存
软连接 类似于windows里快捷方式,软连接,符号连接,使用绝对路径
格式:软链接 :ln [-s] 源文件或目录… 链接文件或目标位置

           硬链接: ln [ ] 源文件或目录… 链接文件或目标位置

对比项    硬连接    软连接
本质    本质是同一个文件    本质不是同一个文件
inode    相同    不同
连接数    创建新的硬链接,链接数会增加,删除硬链接,链接数减少    删除新建不会改变
文件夹    不支持    支持
删除源文件    只是链接数减一,但链接文件的访问不受影响    无法访问连接文件
文件类型    和源文件相同    链接文件,和源文件无关
文件大小    和源文件相同    源文件的路径的长度
硬链接创建

 

  1. 文件是存储在硬盘上的,硬盘的最小存储单位叫做“扇区”(sector),每个扇区存储512字节。

  2. 一般连续八个扇区组成一个"块”(block),一个块是4K大小,是文件存取的最小单位。操作系统读取硬盘的时候,是一次性连续读取多个扇区,即一个块一个块的读取的。4k一读,8个扇区一读

  3. 文件数据包括实际数据与元信息(类似文件属性)。文件数据存储在“块"中,存储文件元信息(比如文件的创建者、创建日期、文件大小、文件权限等)的区域就叫做inode表。 因此,一个文件必须占用一个inode,并且至少占用一个block。du 显示

  4. inode不包含文件名。文件名是存放在目录文件夹当中的。Linux 系统中一切皆文件,因此目录也是一种文件。

  5. 每个inode都有一个号码,操作系统用inode号码来识别不同的文件。Linux系统内部不使用文件名,而使用inode号码来识别文件。对于系统来说,文件名只是inode号码便于识别的别称,文件名和inode号码是一一对应关系,每个inode号码对应一个或多个文件名。

    唯一 同一文件系统() 不同的文件

  6. 所以,当用户在Linux系统中试图访问一个文件时,系统会先根据文件名去查找它对应的inode号码:通过inode号码,获取inode信息;根据inode信息,看该用户是否具有访问这个文件的权限;如果有,就指向相对应的数据block,并读取数据。

硬盘上最小的存储单位为扇区(512字节)

文件存储的最小单位为块8个扇区组成为4k

目录文件的结构非常简单,就是一系列目录项(dirent)的列表。每个目录项,由两部分组成:所包含文件的文件名,以及该文件名对应的inode号码。

  • mode:权限

  • owner info:所有者

  • size:大小

  • timestamps:三个时间戳

   

恢复误删除的xfs文件
Centos 7系统默认采用xfs类型的文件,xfs类型的文件可使用xfsdump 与xfsrestore 工具进行备份

恢复。

xfsdump格式:xfsdump -f 备份存放位置 要备份的路径或设备文件
xfsdump的备份级别(默认为0)

0表示完全备份

1-9表示增量备份

使用 xfsdump 时,需要注意以下的几个限制:

不支持没有挂载的文件系统备份,所以只能备份已挂载的;

必须使用 root 的权限才能操作;

只能备份 XFS 文件系统;

备份下来的数据只能让 xfsrestore 解析;

不能备份两个具有相同 UUID 的文件系统(可使用blkid查看)。

 

 

 

 

 

2.刷新接口

 

 磁盘分区并更改属性

 到这我们磁盘就添加成功了,下面我们对磁盘进行扩容

 

 

 

 

 

 

 

 

 

 

 

 

 

二、日志服务管理
1、日志的功能
用于记录系统、程序运行中发生的各种事件
通过阅读日志,有助于诊断和解决系统故障
2、日志文件的分类
内核及系统日志:由系统服务rsyslog统一进行管理,日志格式基本相似,其主配置文件 /etc/rsyslog.conf
用户日志:记录系统用户登录及退出系统的相关信息
程序日志:由各种应用程序独立管理的日志文件,记录格式不统一
3、日志服务
3.1sysklogd系统日志服务
CentOS 5 之前版本采用的日志管理系统服务

syslogd: system application 记录应用日志
klogd: linux kernel 记录内核日志
事件记录格式:

日期时间 主机 进程[pid]: 事件内容

C/S架构:

通过TCP或UDP协议的服务完成日志记录传送,将分布在不同主机的日志实现集中管理

3.2rsyslog系统日志服务
rsyslog是CentOS 6以后版本的系统管理服务:它提供了高性能,出色的安全性和模块化设计。尽管

rsyslog最初是常规的syslogd,但发展成为一种瑞士军刀式的记录工具,能够接受来自各种来源的输

入,并将其转换,然后输出到不同的目的地。

当应用有限的处理时,RSYSLOG每秒可以将超过一百万的消息传递到本地目的地。即使在远程的

目的地和更精细的处理中,性能通常也被认为是惊人的”。

rsyslog 特性

多线程
UDP, TCP, SSL, TLS, RELP
MySQL, PGSQL, Oracle实现日志存储
强大的过滤器,可实现过滤记录日志信息中任意部分
自定义输出格式
适用于企业级中继

、ELK
ELK:由Elasticsearch, Logstash, Kibana三个软件组成

非关系型分布式数据库基于apache软件基金会jakarta项目组的项目lucene
Elasticsearch是个开源分布式搜索引擎,可以处理大规模日志数据,比如:Nginx、Tomcat、系统日志等功能
Logstash对日志进行收集、分析,过滤,并将其存储供以后使用
Kibana 可以提供的日志分析友好的 Web 界面
5、rsyslog管理
5.1系统日志术语
facility:设施,从功能或程序上对日志进行归类

#内置分类
auth(验证), authpriv, cron(定时任务), daemon,ftp,kern, lpr, mail, news, security(auth), user, uucp, syslog
#自定议的分类
local0-local7
Priority 优先级别,从低到高排序
级号    消息    级别    说明
0    EMERG    紧急    会导致主机系统不可用的情况
1    ALERT    警告    必须马上采取措施解决的问题
2    CRIT    严重    比较严重的情况
3    ERR    错误    运行出现错误
4    WARNING    提醒    可能会影响系统功能的事件
5    NOTICE    注意    不会影响系统但值得注意
6    INFO    信息    一般信息
7    DEBUG    调试    程序或系统调试信息等
参看帮助: man 3 syslog

服务名称
代表什么服务的日志

服务名称    说明
auth(LOG_AUTH)    安全和认证相关消息 (不推荐使用authpriv替代)
authpriv(LOG_AUTHPRIV)    安全和认证相关消息(私有的)
cron (LOG_CRON)    系统定时任务cront和at产生的日志
daemon (LOG_DAEMON)    与各个守护进程相关的曰志
ftp (LOG_FTP)    ftp守护进程产生的曰志
kern(LOG_KERN)    内核产生的曰志(不是用户进程产生的)
Iocal0-local7 (LOG_LOCAL 0-7)    为本地使用预留的服务
lpr (LOG_LPR)    打印产生的日志
mail (LOG_MAIL)    邮件收发信息
news (LOG_NEWS)    与新闻服务器相关的日志
syslog (LOG_SYSLOG)    存syslogd服务产生的曰志信息(虽然服务名称己经改为reyslogd,但是很多配罝依然沿用了syslogd服务的,所以这里并没有修改服务名称)
user (LOG_USER)    用户等级类别的日志信息
uucp (LOG_UUCP)    uucp子系统的日志信息,uucp是早期Linux系统进行数据传递的协议,后来也常用在新闻组服务中
5.3rsyslog 相关文件
程序包:rsyslog

主程序:/usr/sbin/rsyslogd

CentOS 6:/etc/rc.d/init.d/rsyslog {start|stop|restart|status}

CentOS 7,8:/usr/lib/systemd/system/rsyslog.service

配置文件:/etc/rsyslog.conf,/etc/rsyslog.d/*.conf

库文件: /lib64/rsyslog/*.so

4rsyslog配置文件


/etc/rsyslog.conf 配置文件格式:由三部分组成

MODULES:相关模块配置

GLOBAL DIRECTIVES:全局配置

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

RULES模块
facility.priority; 
#分类      优先级
 
*: 所有级别
none:没有级别,即不记录
PRIORITY:指定级别(含)以上的所有级别
=PRIORITY:仅记录指定级别的日志信息
 
文件路径:通常在/var/log/,文件路径前的-表示异步写入
用户:将日志事件通知给指定的用户,* 表示登录的所有用户
日志服务器:@host,把日志送往至指定的远程UDP日志服务器 @@host 将日志发送到远程TCP日志服务器
管道: | COMMAND,转发给其它命令处理

常见的一些日志文件
日志文件位置    日志文件说明
/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/tun/ulmp用户日志    记录当前已经登录的用户的信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息。同样,这个文件不能直接用Vi查看,而要使用w、who、users等命令查看
6.1用户日志分析
保存了用户登录、退出系统等相关信息:

/var/log/lastlog:最近都用户登录事件。二进制文件,使用 lastlog 命令查看。
/var/log/secure:与用户验证有关的安全性事件。
/var/log/wtmp:用户登录、注销,及系统开、关机事件。二进制文件,使用 last 命令查看。
/var/run/utmp:当前登录的每个用户的详细信息。二进制文件,使用w、who、users等命令查看。
分析工具:

users、who、w、last、lastb
users 命令只是简单地输出当前登录的用户名称,每个显示的用户名对应一个登录会话。 如果一个用户有不止一个登录会话,那他的用户名将显示与其相同的次数
 

举报

相关推荐

0 条评论