inode和block的概述
什么是文件
文件是储存在硬盘上的,硬盘的最小储存单位叫“扇区”,每个扇区储存512字节
什么是block
一般连续的八个扇区组成一个“块”(block),一个块大小为4k,是最小的文件单位
什么是inode
文件数据储存在“块”中,储存文件元信息(比如文件的创建者,创建日期,文件大小,文件权限等)的区域就叫做inode
注意:
- inode不包含文件名,文件名是存放在目录中的
- 一个文件必须占用一个inode,并且至少占用一个block
- 每个inode都有一个号码,操作系统用用inode号码来识别不同的文件
- Linux系统试图访问一个文件时时,系统会根据文件名查找它对应的inode号:通过inode号获取inode信息,根据inode信息看是否具有访问权限,如果有就指向对应的数据block并读取数据
查看inode
命令:
- ls-il(长格式显示inode号)
- ls-i(查看文件名对应的inode号)
- stat+文件名(查看文件inode信息中的inode号)
linux系统文件三个主要的时间属性
如上图所示:
最近访问:atime(access time)
- 最后一次访问文件或目录的时间
最近更改:ctime(chsnge time)
- 最后一次改变文件或目录(属性)的时间
最近改动:mtime(modify time)
- 最后一次修改文件或目录(内容)的时间
访问文件的简单流程
注意:
inode号也会消耗硬盘空间,每个inode号的大小一般倒是128字节或256字节
通过inode查找文件
find+目录+-inum+inode号
通过inode号删除文件
日志文件
日志的功能
- 用于记录系统,程序运行中发生的各种事件
- 通过阅读日志,有助于诊断和解决系统故障
日志文件的分类
- 内核及系统日志(由系统服务rsyslog统一进行管理)
- 用户日志(记录系统用户登录及推出系统的相关信息)
- 程序日志(由各种应用程序独立管理的日志文件,记录格式不统一)
常见的日志文件
linux操作系统本身和大部分服务程序的日志都默认放在目录/var/log/下
内核及公共消息日志:
/var/log/messages:记录linux内核消息及各种应用程序的公共日志信息
计划任务日志:
/var/log/cron:记录crond计划任务产生的事件信息
系统引导日志:
/var/log/dmesg:记录linux系统在引导过程中的各种事件信息
邮件系统日志:
/var/log/maillog:记录进入或发出系统的电子邮件活动
用户登录日志:
- /var/log/secure:记录用户认证相关的安全事件信息
- /var/log/lastlog:记录每个用户最近的的登录事件(二进制格式)
- /var/log/wtmp:记录每个用户登录,注销及系统启动和停机事件(二进制格式)
- /var/run/btmp:记录失败的,错误的登录尝试及验证事件(二进制格式)
内核及系统日志
查看配置文件
vim /etc/rsyslog.conf
设备字段说明
日记记录的一般格式
- 时间标签:消息发出的日期和时间
- 主机名:生成消息的计算机的名称
- 子系统名称:发出信息的应用程序的名称
- 信息字段:消息的具体内容
用户日志分析
- /var/log/lastlog:最近的用户登录事件
- /var/log/wtmp:用户登录,注销及系统开关机事件
- /var/run/utmp:当前登录的每个用户的详细信息
- /var/log/secure:与用户验证相关的安全性事件
分析工具
- last命令用于查询成功登录到系统的用户信息
- lastb命令用于查询登录失败的用户记录
日志管理策略
- 及时做好备份和归档
- 延长日志保存期限
- 控制日志访问权限(日志中可能包含敏感信息)
- 集中管理日志
- 将服务器的日志文件发到统一的日志文件服务器
- 便于日志信息的统一收集,整理和分析
- 杜绝日志信息的意外丢失,恶意篡改或删除