Linux 系统管理——Linux文件系统与日志

一、inode 包含文件的元信息
(1)inode 内容:
文件的字节数、拥有者的 UID、GID、文件的读写执行权限、时间戳等,但不包含文件
名。文件名是储存在目录的目录项中。
(2)查看文件的 inode 内容,stat 命令node

2.Atime等详解spa

 

英文 别称 中文翻译 什么时候修改 查看命令
Access Atime 访问时间 读取、写入 ls-lu
Modify Mtime 修改时间  写入、修改 ls-l
Change/Create Ctime 改变时间/建立时间

修改文件名、写入、操作系统

修改、该权限、作连接翻译

ls-lc

3.目录文件的结构
(1)目录也是一种文件
(2)目录文件的结构:rest

 

文件名1 inode号码1
文件名2 inode号码2
........ ........

 

每一个 inode 都有一个号码,操做系统用 inode 号码来识别不一样的文件
 Linux 系统内部不使用文件名,而使用 inode 号码来识别文件。对于系统来讲,文件名
只是 inode 号码便于识别的别称。blog


4.inode 的号码
(1)系统内部打开文件的步骤:
 1>系统找到这个文件名对应的 inode 号码
 2>经过 inode 号码,获取 inode 信息
 3>根据 inode 信息,找到文件数据所在的 block,读出数据
 inode 通常为 128 字节或 256 字节,每一个 inode 中都记录着文件所在的 block 号,每条记录着 block 号的信息占用 4 字节。inode 中关于 block 号的记录一共包含有 12 个直接、1 个间接、1 个双间接和 1 个三间接。
 12 个直接链接,共占用 48 字节磁盘空间,包含着 12 个直接指向 block 号的信息,若此文件系统默认的 block 大小为 4KB,则仅仅能够指向 12*4=48KB 大小的文件内容,然而咱们的文件若较大时,则须要使用到更多的 block,确定要多于 12 个 block,进而有间接、双间接和三间接。
 间接指的是,inode 中所记录这 4 字节的内容,所指向一个 block,这个block中存放的不是真是的文件内容,而是真实文件所存放位置的block号信息,若每一个block大小为 4KB,那么能够存放 1024 个 block 号信息,1 个间接能够存放的文件大小为:1024*4=4096KB
 双间接则能够存放更大的文件内容,即在间接的基础上再进行间接,若此时 block大小为默认的4KB,则1个双间接能够存放的文件内容大小为:1024*1024*4=4096MB
 三间接即在双间接的基础上在进行间接,若此时 block 大小为默认的 4KB,则 1 个三间接能够存放的文件内容大小1024*1024*1024*4=4096GB
也就是说,在一个 block 大小默认为 4KB 的文件系统中,一个文件最大存储能够达到 48KB+4096KB+4096MB+4096GB,约为 4100GB。
(2)查看文件的 inode 号码
 ls -i 文件名
 stat 文件名ci

 

当一个用户在 Linux 系统中试图访问一个文件时,系统会先根据文件名去查找它的inode,看该用户是否具备访问这个文件的权限。若是有,就指向相对应的数据 block;若是没有过,就返回 Permission denied(拒绝访问)
(3)删除指定 inode 号所对应的文件
(1)格式:find ./ -inum inode 号 -exec rm -i {} \; 
(2)示例:当文件名中包含特殊符号时咱们能够删除其 inode 号达到删除文件的目的io

 

5.查看文件系统的inode与block的信息
xfs:df -i 设备名(文件系统已挂载时查询,查询 inode 总数与已用数量)
ext4:dumpe2fs -h 设备名(文件系统无需挂载)
ext4:tune2fs -l 设备名(文件系统无需挂载)table

 

6.格式化时指定文件系统的inode个数与block大小
(1)方法:
mkfs.ext4 -N inode 数 -b 块大小(单位字节) 设备名基础

 

7.解决 inode 耗尽致使的磁盘故障
(1)方法:
1>删除不使用的文件
2>将文件备份,从新格式化此文件系统,指定较多的 inode 个数

 

8.硬连接(hard link)
(1)方法:ln 源文件 目标文件
(2)特色:
硬连接指向 inode,新生成的硬连接文件的 inode 号与源文件的 inode 号相同,不可针
对目录进行硬连接,必须在同一文件系统内。删除一个文件名,不影响另一个的访问。

 

9.软连接(soft link)
(1)方法:ln -s 源文件或目录 目标文件或目录
(2)特色:
软连接指向文件名,新生成的软连接文件的 inode 号与源文件不一样,目录也能够生成软
连接,软连接文件与源文件能够不在同一文件系统内,软连接文件的内容是源文件的路径,
读取时系统会自动导向源文件,但当源文件移动或重命名时,软连接将报错。

10.硬连接和软链接的对比:

 

  硬连接 软连接
指向 inode 文件名
inode 号是否相同 相同 不一样
是否能够针对目录 不可针对目录 能够针对目录
能否跨文件系统 不可夸文件系统 可跨文件系统
删除、重命名、移动源文件 不受影响 失效
建立命令 In 源文件 目标文件 In -s 源文件或目录 目标文件或目录

 

11.恢复误删除

执行恢复操做 1>经常使用选项: --inode 数值 指定从 inode 号为多少开始显示 --restore-file 文件名 恢复误删除的某个文件 --restore-all 恢复所有已删除的文件 --after dtime 在某个时间点以后删除的文件 --before dtime 在某个时间点以前删除的文件