inode 与 block 详解
inode 和 block 概述
格式化的时候被确定的inode、block
inode的内容
inode:i节点(索引号:依靠某个指针或依靠某个目录找到要的那些数据)
元数据(mate data):
xfs:占512字节(不是固定的,可调节的,但是不能调太小)
ext4:占256字节(不是固定的,可调节的,但是不能调太小)
block:块(管理文件的最小管理单元)
下面这些都可以称为块:
xfs文件系统(在操作系统层面管理文件的):4096(输入输出大小)
该文件如果不足4096,那么文件系统会给该文件分配多大的空间还是4096
(例如:10000字节:
3块:
4096
4096
4096(10000-8192:实际第3块占的)
(注:每个文件独占一个块,不管占完还是没有都是独占)
磁盘IO:1024
扇区IO(硬盘在管理文件时候的最小IO单元):512(磁盘在管理文件的时候最小输入输出的大小)
文件后面没有带单位的数字后的大小默认是字节
硬链接与软链接
硬链接
把磁盘上所存的文件在操作系统层面起一个名字,对应的磁盘上的文件就是一种链接,就是硬链接
在操作系统里每个文件至少要有一个硬链接
软链接
也称为符号链接,它并不指向文件本身,而是指向一个含有文件路径名的字符串,因此软连接和原文件本质上是不同的文件,具有不同的inode号。
创建方式
硬链接:通过给文件创建一个新的名称来创建,使用1n命令,无需添加任何选项。
软连接:通过创建一个指向原文件路径的链接文件来创建,使用1n-s命令。
链接数与文件删除:硬链接:创建硬链接时,原文件的链接数会递增。只有当链接数为零时,文件才会被删除。软连接:软连接的创建和删除对原文件的链接数没有影响。如果删除原文件,软连接将失效。
跨文件系统与分区
硬链接:不能跨文件系统或分区创建
软连接:可以跨文件系统或分区创建,甚至可以链接到远程的文件系统上的文件。
目录链接
硬链接:不支持对目录创建硬链接
软连接:可以创建指向目录的软连接
相互关系与依赖性
硬链接:与原文件是平级关系,不存在依赖,
软连接:依赖于原文件,如果原文件被移动、重命名或删除,软连接可能会失效
路径
硬链接:创建的是相对于当前工作目录的路径,
软连接:创建的是相对于软连接文件的路径,可以是绝对路径或相对路径。
使用场景与灵活性
硬链接:由于硬链接与原文件是同一文件的两个名称,因此它们共享相同的文件内容和属性。这提供了数据冗余性,但灵活性较低。
创建文件硬链接:ln文件地址链地址
恢复误删除的文件
EXT:
安装其依赖软件:yumyinstalle2fsprogs-devel e2fsprogs-libs gcc
解压拖拽过来的压缩包:tar xvfextundelete-0.2.4.tar.bz2
解压后进入压缩包内:cdextundelete-0.2.4
配置:./configure--prefix=/usr/local/extundelete
执行脚本,指定安装参数安装路径
编译:make
编译安装:make instal1
创建一个软链接:ln-s /usr/local/extundeletr/bin/ /usr/bin/退出:cd
格式ext3:mkfs-t ext3 /dev/sdbl
挂载:mount /dev/sdbl/data
进入data下:cd /data/
查看:ls(lost+found:有备份功能)模拟误删环境:echo a>aecho a>becho a>cecho a>d查看:ls
误删a,b:rm -rf ab
查看:ls
切换:cd
查看进程:fuser -mv/dev/sdbl
取消进程:kill-9进程号
切换:cd
取消挂载:umount /data/
使用解压包恢复:extundelete /dev/sdbl --restore-all
进入开头为RE的文件:cd RECOVEREDFILES
查看恢复文件:ls
查看内容:cat 文件名
现在的操作系统创建时间不显示是已经被废弃了,但是保留了这个属性
atime(access time)最近访问:是查看文件信息
mtime(modify time)最近更改:是文件信息
ctime(change time)最近改动:是文件属性的时间
xfs 类型文件备份和恢复
所需工具:yumyinstall xfsdump xfsrestore格式化为xfs:mkfs -t xfs-f /dev/sdbl
挂载:mount /dev/sdbl /aaa
测试:
进入aaa:cd /aaa
填写数据:echo a>a echo b>b echo c>c
切换:cd
备份文件:xfsdump -f /bbb/sdb1-1 /aaa
xfsdump -f备份位置 备份文件
切换:cd
误删后恢复文件:xfsrestore -f 备份位置 备份文件
xfsdump 的备份级别有两种:
0 表示完全备份;
1-9 表示增量备份。
xfsdump 的备份级别默认为 0。
xfsdump 的命令格式为: xfsdump -f 备份存放位置要备份路径或设备文件
常用的备份参数包括以下几种:
-f:指定备份文件目录;
-L:指定标签 session label;
-M:指定设备标签 media label;
-s:备份单个文件,-s 后面不能直接跟路径
主要日志文件
日志数据主要包括以下三种类型:
内核及系统日志:这种日志数据由系统服务 rsyslog 统一管理,根据其主配置文件/etc/rsyslog.conf 中的设置决定将内核消息及各种系统程序消息记录到什么位置。系统中有相当一部分程序会把自己的日志文件交由 rsyslog 管理,因而这些程序使用的日志记录也具有相似的格式。
用户日志:这种日志数据用于记录 Linux 操作系统用户登录及退出系统的相关信息,包括用户名、登录的终端、登录时间、来源主机、正在使用的进程操作等。
程序日志:有些应用程序会选择由自己独立管理一份日志文件(而不是交给 rsyslog服务管理),用于记录本程序运行过程中的各种事件信息。由于这些程序只负责管理自己的日志文件,因此不同程序所使用的日志记录格式可能会存在较大的差异。
常见的一些日志文件:
/var/log/messages:记录 Linux 内核消息及各种应用程序的公共日志信息,包括启动、I/0 错误、网络错误、程序故障等。对于未使用独立日志文件的应用程序或服务,一般都可以从该日志文件中获得相关的事件记录信息
/var/log/cron:记录 crond 计划任务产生的事件信息
/var/log/dmesg:记录 Linux 操作系统在引导过程中的各种事件信息
/var/log/maillog:记录进入或发出系统的电子邮件活动
/var/log/lastlog:记录每个用户最近的登录事件
/var/log/secure:记录用户认证相关的安全事件信息
/var/log/wtmp:记录每个用户登录、注销及系统启动和停机事件
/var/log/btmp:记录失败的、错误的登录尝试及验证事件
查看:tail messages
查看wtmp:w
日志文件分析
内核及系统日志
0 EMERG(紧急):会导致主机系统不可用的情况。
1 ALERT(警告):必须马上采取措施解决的问题。
2 CRIT(严重):比较严重的情况。
3 ERR(错误):运行出现错误。
4 WARNING(提醒):可能影响系统功能,需要提醒用户的重要事件。
5 NOTICE(注意):不会影响正常功能,但是需要注意的事件。
6 INFO(信息):一般信息。
7 DEBUG(调试):程序或系统调试信息等
用户日志
查询当前登录的用户情况——users、who、w 命令
w 命令用于显示当前系统中的每个用户及其所运行的进程信息,比 users、who 命令的输出内容要丰富一些。
查询用户登录的历史记录——last、lastb 命令
lastb 命令用于查询登录失败的用户记录
程序日志
用户在非常规的时间登录,或者用户登录系统的 IP 地址和以往的不一样。
用户登录失败的日志记录,尤其是那些一再连续尝试进入失败的日志记录。
非法使用或不正当使用超级用户权限。
无故或者非法重新启动各项网络服务的记录。
不正常的日志记录,如日志残缺不全,或者是诸如 wtmp 这样的日志文件无故缺少了中间的记录文件
systemctl stop firewalld:多主机之间通信会有防火墙拦截,(注:还没学防火墙之前)可以提前关闭,为防火墙添加允许的安全策略,仅允许指定的流量访问
防火墙不能关闭,找到该程序用的端口,然后在防火墙里把这个端口开启,允许访问指定的端口,相应的流量就可以进入了
内核安全机制
setenforce 0(注:做实验时要关闭,不关闭,有些程序无法正常运行),保证多个主机之间通信不会受到影响
每一个程序在运行的时候它都对应了一个文件,是这个程序的文件,叫配置文件