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

2.Atime等详解

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

修改文件名、写入、

修改、该权限、做链接

ls-lc

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

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

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

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 文件名

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

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

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 在某个时间点之前删除的文件

Linux 系统管理——Linux文件系统与日志的更多相关文章

  1. Linux系统管理——Linux安装

    实验软件包下载地址 VirtualBox下载地址 VirtualBox:下载地址 CentOS7镜像下载地址 CentOS7:下载地址 远程登录管理工具下载地址 MobaXterm:下载地址 Virt ...

  2. Linux系统管理——Linux简介

    UNIX与Linux发展史 UNIX发展历史 1.1965年,美国麻省理工学院(MIT),通用电气公司(GE)及AT&T的贝尔实验室联合开发Multics工程计划,其目标是开发一种交互式的具有 ...

  3. 【Linux基础总结】Linux系统管理

    Linux系统管理 Linux磁盘管理命令.内存查看命令讲解 系统信息 查看系统 $ uname 查看系统版本号 $ uname -r 查看cpu信息 $ cat /proc/cpuinfo 查看内存 ...

  4. Linux文件系统与日志!

    1.inode 和 block 概述 文件储存在硬盘上,硬盘的最小储存单位叫“扇区”(sector),每个扇区储存 512 字节. 操作系统读取硬盘的时候,不会一个个扇区的读取,这样效率太低,而是一次 ...

  5. Linux文件系统与日志分析

    Linux文件系统与日志分析一.inode与block概述① 文件数据包括元信息(类似文件属性)与实际数据② 文件存储在硬盘上,硬盘最小存储单位是"扇区"(sector),每个扇区 ...

  6. Linux文件系统与日志分析的了解

    Linux文件系统与日志分析 1.inode和block概述 2.模拟inode耗尽实验 3.ext类型文件恢复 4.xfs类型文件恢复 5.日志文件 6.日志分析 1.文件:文件是存储在硬盘上的,硬 ...

  7. 【转载】应读者强烈要求给出《超容易的Linux系统管理入门书》一书的主要知识点

    刚开始了一篇连载,收到广大Linux爱好者的反馈,非常欣慰.大家对Linux学习感到很迷茫,不知道学哪些内容,如何学习? <超容易的Linux系统管理入门书>一书是腾讯Linux专家在腾讯 ...

  8. Linux 系统管理06--磁盘管理

    Linux系统管理06——磁盘管理 一.磁盘结构 1.硬盘的物理结构 盘片:硬盘有多个盘片,每个盘片2面 磁头:每面一个磁头 2.硬盘的数据结构 扇区:盘片被分为多个扇形区域,每个扇形区存放512字节 ...

  9. Linux ext2/ext3文件系统详解

    转载: Linux ext2/ext3文件系统使用索引节点来记录文件信息,作用像windows的文件分配表.索引节点是一个结构,它包含了一个文件的长度.创建及修改时间.权限.所属关系.磁盘中的位置等信 ...

随机推荐

  1. 基于TCP实现的Socket通讯详解

    Socket通信是基于TCP协议进行的传输层通信,是在应用和应用之间的通信,一般应用在即时通讯上. 建立连接 用Socket创建连接需要在客户端和服务端都使用socket套接字. Linux内存创建S ...

  2. CorelDRAW 学习笔记(一)

    基本图形 等比例图形:按住 Ctrl 拖拽 以中心为起点等比例缩放:按住 Shift 拖拽 快捷键: 矩形:F6 圆形:F7 多边形:Y 双击矩形工具,可以直接创建一个页面大小的矩形对象: 对象对齐 ...

  3. VMwarm下安装ubuntu的一些问题

    1.终端无法输入中文的原因(未实践)  原文地址 2.Windows10下VMwarm(V15.5)和ubuntu14.04实现复制文件(已经实践)  转载路径

  4. xml文件操作帮助类

    xml文件的节点值获取和节点值设置 /// <summary> /// 保存单个点节点的值 /// </summary> /// <param name="Up ...

  5. vs2017添加引用提示“找不到 Microsoft.VisualStudio.Shell.Interop.IVsReferenceManager 服务的实例”解决方案

    vs2017添加引用提示“找不到 Microsoft.VisualStudio.Shell.Interop.IVsReferenceManager 服务的实例” 不知道是不是安装时候的问题?解决方法: ...

  6. java log4j 打日志到控制台同时打印到不同文件

    1.pom配置 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt ...

  7. Python网络编程、爬虫之requests模块使用

    一.python操作网络,也就是打开一个网站,或者请求一个http接口,使用urllib模块. urllib模块是一个标准模块,直接import urllib即可,在python3里面只有urllib ...

  8. 换个语言学一下 Golang (13)——Web表单处理

    介绍 表单是我们平常编写Web应用常用的工具,通过表单我们可以方便的让客户端和服务器进 行数据的交互.对于以前开发过Web的用户来说表单都非常熟悉.表单是一个包含表单元素的区域.表单元素是允许用户在表 ...

  9. MES实施可能会遇到的问题,这里都帮你解决

    MES系统选型关键技术的发展已日趋成熟,开发MES系统技术并不是问题,困难的是如何确定系统的功能.规格,如何成功地使用MES系统,以充分发挥其作用,下面给大家分析这两大块内容. 实施MES系统选型的困 ...

  10. grub破解和bios加密

    grub破解通过单用户模式,可以实现修改密码 grub加密以后,只能通过bios解除grub密码,方法如下 进入bios 修改启动方式,从CD启动 加载系统镜像,原系统默认挂载到/mnt/sysima ...