1、索引节点

1)、inode也即index node是为索引节点,索引节点表中包含文件系统所有文件列表,一个节点即索引节点是一个表项,包含有关文件的元数据信息(其中链接数是指向这个文件路径名个数);

2)、一个文件只有唯一一个索引节点号(相当于人的×××号码),但可有不同的多个文件名;

3)、人是通过文件名来引用一个文件;

4)、一个目录是目录下的文件名和文件inode号之间的映射;

5)、一个目录文件的内容是一个该目录下所有文件目录项的列表;

2、cp、mv、rm命令与inode

1)、cp的命令:分配一个空闲的inode号,在inode 表中生成新条目,在目录中创建一个目录项,将名称与inode 编号关联,拷贝数据生成新的文件;

2)、如果mv命令的目标和源在相同的文件系统,mv命令用新的文件名创建对应新的目录项,删除旧目录条目对应的旧的文件名,不影响inode表(除时间戳)或磁盘上的数据位置,没有数据被移动;如果目标和源在一个不同的文件系统,mv相当于cp和rm;

3)、rm命令:链接数递减,从而释放的inode号可以被重用,把数据块放在空闲列表中,删除目录项,数据实际上不会马上被删除,但当另一个文件使用数据块时将被覆盖。

3、硬链接与软链接

1)、硬链接:

     创建硬链接会增加额外的记录项以引用文件;
     对应于同一文件系统上一个物理文件;
     每个目录引用相同的inode 号;
     创建时链接数递增;
     删除文件即rm命令递减计数链接;文件要存在,链接数至少为一;当链接数为零时,该文件被删除;
     不能跨越驱动器或分区创建硬链接;
     语法 :
     ln filename [linkname ]

2)、软链接(符号链接)

     一个符号链接指向另一个文件;
     ls -l显示链接的名称和引用的文件;
     一个符号链接的内容是它引用文件的名称;
     可以对目录进行;
     可以跨分区;
     指向的是另一个文件的路径;其大小为指向的路径字符串的长度;不增加或减少目标文件inode的引用计数;
     语法:
     ln -s filename [linkname]

4、确定文件类型

   文件可以包含多种类型的数据;

   检查文文件类型,然后确定适当的开放命令或应用程序使用;
   file [options] <filename>...
Option:
-b 列出文件辨识结果时,不显示文件名称。
-c 详细显示指令执行过程,便于排错或分析程序执行形
-f 列出文件中文件名的文件类型(先把要查看类型的文件写入filetype.txt中后通过# file -f filetype即可批量查看写入的文件类型)
-F 使用指定分隔符号替换输出文件名后默认的”:” 分隔符
-i 输出mime类型的字符串(#file -i 文件,会输出文件类型等信息)
-L 查看对应软链接对应文件的文件类型
-z 尝试去解读压缩文件的内容
--help