目录
一、inode和block的概念
一个文件数据包括元信息和实际数据
inode(索引节点)是用于存储文件元信息
block(块)是文件存取的最小单位
● 每个文件都会占用一个inode号 ,也会占用至少一个block。
1.1 inode 概念
1.1.1 inode内容
inode 中包含了文件的元信息,其中有(文件的字节数、文件的属主、文件的属组、文件的权限、文件的时间等)
● 每个文件都对应一个inode号,inode又包含了一个文件里的元信息
1.1.2 stat 命令
stat 命令用于查看某个文件的inode信息
格式:stat + 文件名
其中包含了三种时间属性:
(1)ctime(change time):最后一次改变文件或目录的时间 -->对应上图的更改时间
(2)atime(access time):是最近一次访问文件或目录的时间 -->对应上图的最近访问时间
(3)mtime(modify time):是最后一次修改文件或目录的时间 -->对应上图的最近修改时间
1.2 inode 号码
每个文件或目录都会对应一个inode号,可以根据inode号来获取inode信息
1.2.1 inode号码查询
①ls -i +文件名的命令
②stat +文件名
注意:当我们复制一个文件到其他目录时复制的文件会另外生成一个新的inode号,而我们移动一个文件时不会生成一个新的inode号
1.3 inode的空间大小
每一个inode都会有一定的大小,一般是128或256字节。所以inode也会消耗硬盘的空间。每一个硬盘中也有一定的inode号的数量。
1.3.1 df -i 命令查看inode的数量信息
● 我们在生产中可能会遇到一个现象就是在一个硬盘中无法添加内容 显示的的是空间不足问题,但是我们查看磁盘空间时发现还有许多可用的空间,这时我们就要去df -i 去查看磁盘inode的可用量,可用inode不足的时候就会出现空间不足的现象,所以我们去删除释放inode空间。
1.4文件的存储
1.4.1 硬盘分区后的结构
1.4.2 访问文件的一个流程
二、软连接和硬链接
1.1 软连接和硬链接的区别
软连接 | 硬链接 | |
删除原始文件后 | 相对应的文件就会报错 | 相对应的文件不会报错 |
范围 | 适用于文件或者目录 | 用于文件 |
保存的位置 | 与原文件可以位于不同的文件系统中 | 必须与原文件在同一个系统中 |
1.2 基本命令
1.2.1 软连接
ln -s 原文件或目录 目标文件或目录
1.2.2 硬链接
ln 原文件 目标文件
三、恢复删除文件
1.1 恢复EXT类型的文件
①安装依赖包
②解压软件包
③cd 到extundelete 下进行编译安装
④ 创建文件在删除
⑤用extundelete 查看
⑥用extundelete恢复
⑦ls 当前目录会发现一个新的文件
⑧查看文件里会有恢复的文件
1.2 恢复XFS类型文件
1.2.1 xfsdump 备份命令
xfsdump 【参数】 备份存放的位置 需要备份的文件
参数:
-f 指定备份的文件目录
-L 指定标签session label
-M 指定设备标签
-s 备份单个文件
1.2.2 备份的级别
0:安全备份(默认)
1-9:增量备份
1.2.3 xfsrestore 恢复命令
xfsrestore -f 需要恢复文件的位置 存放恢复文件的位置
生产案例(要挂载分区盘)
①首先备份整个分区
②使用 xfsrestore命令恢复文件
四、日志文件
1.1 日志的作用
用于记录系统及程序运行过程中的记录,通过查看日志可以帮助解决系统故障
1.2 日志文件的分类
默认位于:/var/log 下
主要日志介绍:
内核及公共消息日志 /var/log/messages
计划任务日志 /var/long/cron
系统引导日志 /var/log/dmesg (显示系统登录过程中引导信息)
邮件系统日志 /var/log/maillog
用户登录日志 /var/log/lastlog
/var/log/secure
/var/log/wtmp
/var/run/btmp
2.1内核及系统日志
2.1.1 rsyslog
主要程序:/sbin/rsyslog
配置文件:/etc/rsyslog.conf
*.info 表示info等级及以上的所有等级的信息都写到对应的日志文件里
mail.none 表示某事件的信息不写到日志文件里
2.1.2 日志的级别
数字 | 消息 | 级别 | 详细 |
0 | EMERG | 紧急 | 会导致主机系统不可使用情况 |
1 | ALERT | 警告 | 必须马上采取措施解决 |
2 | CRIT | 严重 | 比较严重的情况 |
3 | ERR | 错误 | 运行出现错误 |
4 | WARNING | 提醒 | 可能会影响某个功能使用 |
5 | NOTICE | 注意 | 不会影响使用但需注意 |
6 | INFO | 信息 | 一般的信息 |
7 | DEBUG | 调试 | 程序或系统调试信息 |
2.1.3 日志内容的格式
例如:内核及公共消息日志
其中子系统名指发出消息的系统程序的名字
2.1.4 用户日志
/var/log/secure:记录用户认证相关的安全事件信息
/var/log/lastlog:记录每个用户最近的登录
/var/log/wtmp:记录每个用户登录、注销及系统启动和停机
/var/run/btmp:记录失败的登录
查看用户登录的命令:
①lastlog
②users 查看当前登录的用户名字
③w 显示的比users更加详细
④who
⑤lastb 用于显示用户登录失败的信息
⑥last 查看成功登录的详细信息
2.2 journalctl 日志管理工具
是centos7 上专有的日志管理工具,可以用一个命令查看所有的日志信息。
配置文件:/etc/systemd/journald.conf
journalctl -k 查看内核日志
journalctl -b 查看系统本次启动的日志
journalctl -xe 经常用来查看最近报错的日志
总结
inode 存放元信息 , block 存放文件数据
ln 为硬链接 ln -s 为软链接
日志的主要内容和级别的概况
查看用户日志的命令 last 、w、who、users