46 inode

inode 是 UNIX 操作系统中的一种数据结构,其本质是结构体,它包含了与文件系统中各个文件相关的一些重要信息。在 UNIX 中创建文件系统时,同时将会创建大量的 inode 。通常,文件系统磁盘空间中大约百分之一空间分配给了 inode 表。
有时,人们使用了一些不同的术语,如 inode索引编号 (inumber)。这两个术语非常相似,并且相互关联,但它们所指的并不是同样的概念。inode 指的是数据结构;而索引编号实际上是 inode 的标识编号,因此也称其为inode 编号 或者索引编号。索引编号只是文件相关信息中一项重要的内容。下一个部分将介绍 inode 中的其他一些属性。
inode 表包含一份清单,其中列出了对应文件系统的所有 inode 编号。当用户搜索或者访问一个文件时,UNIX 系统通过 inode 表查找正确的 inode 编号。在找到 inode 编号之后,相关的命令才可以访问该 inode ,并对其进行适当的更改。
例如,使用 vi 来编辑一个文件。当您键入 vi 时,在 inode 表中找到 inode 编号之后,才允许您打开该 inode 。在 vi 的编辑会话期间,更改了该 inode 中的某些属性,当您完成操作并键入 :wq 时,将关闭并释放该 inode 。通过这种方式,如果两个用户试图对同一个文件进行编辑, inode 已经在第一个编辑会话期间分配给了另一个用户 ID (UID),因此第二个编辑任务就必须等待,直到该 inode 释放为止。

可以使用 df -k 查询

root@ubuntu:~# df -k
df: ‘/mnt/hgfs’: Protocol error
Filesystem     1K-blocks    Used Available Use% Mounted on
udev              992620       4    992616   1% /dev
tmpfs             200668    1488    199180   1% /run
/dev/sda1       18469756 3958296  13550180  23% /
none                   4       0         4   0% /sys/fs/cgroup
none                5120       0      5120   0% /run/lock
none             1003332     144   1003188   1% /run/shm
none              102400      36    102364   1% /run/user

ls -i

显示 inode 号

root@ubuntu:~# ls -i
267288 1   153647 1.txt     153646 herpets.txt  153648 my.txt     153651 pets.txt  153654 web.txt
281021 1n  153652 cats.txt  153649 html.txt     153635 nohup.out  153653 pet.txt

你可能感兴趣的:(46 inode)