在unix文件系统中,inode节点包括哪些内容?

作者&投稿:表斧 (若有异议请与网页底部的电邮联系)
unix系统v的目录项包含哪些内容~

一般unix系统的目录项包括如下三项的内容:

1.(1) kernel(内核):这是unix系统的核心。
2. (2) shell(外壳):这是操作系统的接口,为用户提供一个操作接口。
3. (3) 工具及应用程序:主要是应用程序。

了解如何在 UNIX 中使用 inode 可以节约大量的时间,并提高工作效率。在尚未了解 inode 之前,您可以使用下面的命令,以减少可能碰到的问题。df 命令如前所述,当您在 UNIX 中创建一个文件系统时,将为 inode 表分配大约百分之一的总磁盘空间。每次在文件系统中创建一个文件时,都会为该文件分配一个 inode 。通常,与一个文件系统相关联的 inode 的数目足够多,但耗尽 inode 的可能性始终存在。要监视是否发生了这种情况,您可以观察 df 的输出。使用 df 命令,您可以查看所有已挂载的文件系统或者特定的文件系统。在该命令的输出中,您可以查看各个文件系统中已使用的 inode 的数目,以及文件系统中总体使用情况百分比,如清单 1 中所示。清单 1. 使用 df 来监视 inode 的使用 # df -k|head -6Filesystem 1024-blocks Free %Used Iused %Iused Mounted on/dev/hd4 229376 138436 40% 4730 13% //dev/hd2 8028160 962692 89% 110034 33% /usr/dev/hd9var 1835008 366400 81% 25829 24% /var/dev/hd3 524288 523564 1% 98 1% /tmp/dev/hd1 32768 32416 2% 5 1% /home 如果由于某种原因,某个文件系统 inode 的使用率达到百分之百,那么您将无法在该文件系统中创建更多的文件、设备、目录等等。对于这种情况,一种解决方案是通过 smitty chfs 命令为该文件系统添加更多的空间,如图 1 所示。另一种解决方案是创建较小的 inode 区段。现在,在增强的日志文件系统 (Enhanced Journal File System) 中,IBM AIX 5L 允许 inode 区段小于 16KB 的缺省大小。请记住,如果您在 AIX 5L 中使用这个选项,那么将无法从较早版本的 AIX 访问该文件系统。图 1. smitty chfs 命令的结果istat 和 stat在 AIX 中检查 inode 的一种快捷的方式是使用 istat 命令。使用这个命令,您可以找到特定文件的索引编号,以及其他的 inode 项目,如权限、文件类型、UID、GID、链接的数目(非符号链接)、文件大小和最近一次更新、最近一次修改以及最近一次访问的时间戳。清单 2 显示了 AIX 中文件 /usr/bin/ksh 的 inode 信息。清单 2. /usr/bin/ksh 的 inode 信息 # istat /usr/bin/kshInode 18150 on device 10/8 FileProtection: r-xr-xr-xOwner: 2(bin) Group: 2(bin)Link count: 5 Length 237804 bytesLast updated: Wed Oct 24 17:37:10 EDT 2007Last modified: Wed Apr 18 23:58:06 EDT 2007Last accessed: Mon Apr 28 11:25:35 EDT 2008 除了显示来自 istat 的标准信息之外,现在您还知道了 /usr/bin/ksh 对应的索引编号。如果您同时还找到了该文件所处的逻辑卷,那么甚至可以显示更多的信息。要查找该信息,一种方式是通过使用 df 命令来查看该文件位于哪个已挂载的文件系统中: # df /usr/binFilesystem 512-blocks Free %Used Iused %Iused Mounted on/dev/hd2 16056320 1925384 89% 110034 33% /usr 文件 /usr/bin/ksh 位于目录 /usr/bin 中。查看 df 命令的输出,您可以发现,目录 /usr/bin 包含于 /usr 文件系统中,并且 /usr 文件系统位于逻辑卷 /dev/hd2 之中。现在,您已经知道了索引编号和逻辑卷的名称,那么就可以将这两个信息项作为参数来使用 istat,这样一来,您可以确定组成该文件的磁盘块的十六进制地址,如清单 3 中所示。清单 3. 确定文件磁盘块的十六进制地址 # istat 18150 /dev/hd2Inode 18150 on device 10/8 FileProtection: r-xr-xr-xOwner: 2(bin) Group: 2(bin)Link count: 5 Length 237804 bytesLast updated: Wed Oct 24 17:37:10 EDT 2007Last modified: Wed Apr 18 23:58:06 EDT 2007Last accessed: Mon Apr 28 11:44:20 EDT 2008Block pointers (hexadecimal):11620 ef8c0 Linux 提供了其特有的 istat 版本:stat。Linux stat 命令可以显示类似的信息,并且还包括一些在 AIX istat 命令中没有提供的命令开关: # stat /bin/bash File: `/bin/bash' Size: 722684 Blocks: 1432 IO Block: 4096 regular fileDevice: fd00h/64768d Inode: 12799859 Links: 1Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)Access: 2008-04-06 19:13:50.000000000 -0400Modify: 2006-07-12 03:11:53.000000000 -0400Change: 2007-11-22 04:05:30.000000000 -0500 ls 命令在您的日常工作中总会碰到这样的情况,难以删除或者管理某些文件,因为这些文件的文件名中使用了短横线或者其他特殊字符、或者其文件名完全不正确。这很可能是有人对该文件进行了错误命名。因为 UNIX 中的大多数命令,包括开关或者选项在内,都是以连字符 (-) 或者双连字符 (--) 开头的,很难使用诸如 rm、mv 和 cp 之类常用的命令来操作这些文件。幸运的是,某些命令提供了一些选项,以用来显示相关文件所关联的 inode 的索引编号。ls 命令就提供了一个这样的选项: # ls - -- -p fileA fileB fileC fileDfileE fileF fileG fileH fileI fileJ fileK fileL 使用 ls -i 命令,您可以看到文件名称旁边的索引编号,如清单 4 中所示。现在,您已经知道了文件的索引编号,那么就可以很容易地操作该文件了。清单 4. 查看文件的索引编号 # ls –i38988 38991 -p 38984 fileC 38982 fileF 38977 fileI 38978 fileL38989 - 38980 fileA 38986 fileD 38983 fileG 38987 fileJ38990 -- 38979 fileB 38976 fileE 38985 fileH 38981 fileK find 命令使用 UNIX find 命令,您可以完成使用 ls 命令所开始的工作。对于要进行操作的文件,您已经知道了它们的索引编号,那么就可以开始进行相应的操作了!要删除看似无名的文件,您只需要使用 find 和 -inum 开关对索引编号和文件进行定位。然后,在找到该文件之后,使用 find 和 -exec 开关删除该文件: # find . -inum 38988 -exec rm {} \; 要对该文件进行重命名,可以再次进行相同的操作,但这一次使用 mv 而不是 rm: # find . -inum 38989 -exec mv {} fileM \; 为了验证取得了预期的结果,只需要再次使用 ls -i 命令: # ls -i38990 -- 38979 fileB 38976 fileE 38985 fileH 38981 fileK38991 -p 38984 fileC 38982 fileF 38977 fileI 38978 fileL38980 fileA 38986 fileD 38983 fileG 38987 fileJ 38989 fileM fsck 命令不幸的是,硬件设备不可能一直使用下去,系统可能会在使用多年后出现故障。当发生这种情况,以及由于电源故障或者某些其他问题而导致操作系统异常关闭的时候,您可能会在还原系统备份时碰到一些在崩溃期间处于打开状态的文件,并且现在需要对其加以处理。此时,您可能会碰到一些需要修复 inode 或者存在错误的消息。如果发生这种状况,那么 fsck 命令可以用来救急!您可以使用 fsck 来修复文件系统或者修正受损的 inode ,而不是还原系统、或者甚至重新构建操作系统。下面的命令可以尝试修复逻辑卷 /dev/hd1: # fsck –p /dev/hd1 –y 通过使用 fsck 命令,您还可以缩小受损 inode 的搜索范围。如果您正在搜索一个特定的 inode ,那么可以使用带 -ii-NodeNumber 开关的 fsck 命令。

不同文件系统的inode内容不太一样,但通常都含有以下信息:
struct inode
{
int i_mode; 文件类型(目录、块设备、字符设备、普通文件、权限等)
char i_nlink; 文件硬链接数
char i_uid; 属主ID(UID)
char i_gid; 属主组ID(GID)
char i_size0; 文件大小
char *i_size1; 文件所使用的磁盘块的实际数目
int i_addr[8]; 块地址数组
int i_atime[2]; 最近一次访问时间
int i_mtime[2]; 最近一次修改时间
int i_ctime[2]; 最近inode更改时间
};

在linux文件系统中,是以块为单位存储信息的,为了找到某一个文件在存储空间中存放的位置,用i节点对一个文件进行索引。I节点包含了描述一个文件所必须的全部信息。所以i节点是文件系统管理的一个数据结构。


linux文件系统中每个文件用( )来标
linux文件系统中每个文件用(inode)来标识。在Linux和其他类Unix文件系统中,每个文件和目录都被一个称为inode(索引节点)的数据结构所标识。inode存储了关于文件系统对象的元数据,但并不包含数据内容或文件名。这些元数据包括文件的创建时间、修改时间、访问时间、文件大小、文件类型(例如,普通文件、目录...

什么格式的文件既可以在Unix系统中打开也可以在Windows系统中打开
unix下面有很多兼容word的工具,只有和windows格式兼容的工具才能用的。比如unix下有很多word查看和创建工具,但是这些文件在windows打不开的。但是txt文件肯定能通用的。

Unix系统中,输入\/输出设备被看成什么文件?
在UNIX操作系统中,把输入\/输出设备看作是特殊文件。在UNIX系统中包括两类设备:块设备和字符设备。设备特殊文件有一个索引节点,在文件系统目录中占据一个节点,但其索引节点上的文件类型与其他文件不同,是“块”或者是“字符”特殊文件。

UNIX系统采用直接,一级,二级和三级间接索引技术访问文件,其索引节点有...
UNIX\/Linux文件系统中,直接寻址为10块,一次间接寻址为256块,二次间接寻址为2562块,三次间接寻址为2563块。偏移为263168字节的逻辑块号是:11264\/1024=11。块内偏移量=11264-11×1024=0。由于10<11<256+10,故11264字节在一次间接寻址内。

在unix系统中,文件file1的权限是414的含义
r--即100(2),十进制是4;-w-即010(2),十进制是2;--x即001(2),十进制是1;三位二进制对应八种权限状态,十进制分别是1-7。假如第一组权限为6,换成二进制是110(2),一二位开,三位闭,即可读,可写,不可执行。UNIX操作系统(尤尼斯),是一个强大的多用户、多任务操作系统...

Unix系统中常用内置工具的命令使用指南
Unix系统中常用内置工具的命令使用指南打印文件在 UNIX 系统中,您打印一个文件之前,您可能想要重新格式化它调整它的边距,高亮显示一些单词等等。大多数文件也可以打印而不用重新格式化,但未经处理的打印可能不那

文件系统中目录的作用
索引节点是UNIX文件系统的一个重要部分. 通常用户不用考虑它们,但知道它们是什么确实很有必要.索引节点是磁盘上用于描述文件的一种数据结构. 它保存了文件的大部分重要信息,包括文件数据块(用户关心的文件部分)在磁盘上的地址. 每个索引节点都有自己的标识号, 称为索引号(i-number). 实际上用户根本不...

unix系统把文件描述信息从文件目录中分离出来的原因是什么
减少查找文件时的I\/O信息量。在UNIX系统中,采用了把文件名与文件描述信息分开的方法,使文件描述信息单独构成一个称为索引节点的数据结构,这样文件目录中仅由文件名和指向该文件所对应的i节点的指针构成。因此,目录项缩短为仅16个字节,其中14个字节为文件名,2个字节为i节点指针。若盘块的大小为2...

如何在操作系统中创建和初始化文件系统?
标准的UNIX文件系统,如EXT2\/3\/4,有通用的结构,如超级块(superblock)、i节点(inode)、数据块(datablock)等。超级块存储文件系统的整体信息,如大小。i节点包含除文件名外的文件详细信息,文件名与i节点编号存储在目录中。i节点记录了数据块数量,用于存储文件内容。当需要更多空间时,会动态分配间接...

如何操作unix操作系统,如何进入和退出unixt系统,急!谢谢!
2在分页系统中,对内存的访问不再以字或字节为单位进行,而是以页为单位进行内存访问。3对临界资源采用互斥方式来实现共享。4设备的独立性就是用户可以任意使用系统设备而彼此不互相影响。5分时操作系统向用户提供了联机服务和响应,同时也提供了批处理能力。6unix的文件系统中把文件分为三类,其中有一类...

监利县19635477927: unix的i节点的优缺点 -
产朋欣顺: i节点即inode节点是类unix系统的一个文件系统功能.不同文件系统的inode内容不太一样,但通常都含有以下信息:struct inode { int i_mode; 文件类型(目录、块设备、字符设备、普通文件、权限等) char i_nlink; 文件硬链接数 char i_uid; ...

监利县19635477927: 使用索引节点的创建编辑首先需要明白是什么呢?
产朋欣顺: [1]中文名索引节点外文名inode应用类Unix文件系统1索引节点的创建2使用索引节点索引节点索引节点的创建编辑首先需要明白的是,在Unix操作系统中的任何资源都被当作文件来管理

监利县19635477927: 使用索引点首先要做些什么呢?
产朋欣顺: 中文名索引节点外文名inode应用类Unix文件系统1索引节点的创建2使用索引节点索引节点索引节点的创建编辑首先需要明白的是,在Unix操作系统中的任何资源都被当作文件来管理

监利县19635477927: aix i节点什么意思 -
产朋欣顺: 这是我以前做的笔记,随便看看.文件系统与inode • UNIX文件系统有很多种类型,如HFS,NFS,JFS,CDFS.虽然文件系统种类很多,但是也有着一些相同的数据结构:超级块、inode、目录等等. • inode译成中文就是索引节点,它用来存放...

监利县19635477927: inode的结构
产朋欣顺: 对于经验丰富的 UNIX 开发人员或者管理员来说, inode 的结构相对比较简单,但是可能还有一些您尚不了解的、令人惊讶的有关 inode 的内幕.下面的定义仅给出了 inode 中所包含的、UNIX 用户经常使用的一些重要信息:● inode 编号● 用来...

监利县19635477927: unix系统v的目录项包含哪些内容 -
产朋欣顺: 一般unix系统的目录项包括如下三项的内容:1.(1) kernel(内核):这是unix系统的核心. 2. (2) shell(外壳):这是操作系统的接口,为用户提供一个操作接口. 3. (3) 工具及应用程序:主要是应用程序.

监利县19635477927: Unix操作系统中用户权限机制是如何实现的? -
产朋欣顺: 我的理解.每一个文件,无论何种类型,都拥有一个独一无二的inode,这个inode存在于每一个文件系统的inode list区.这个inode list 是一组inode array,每个元素,也就是每个inode的属性,或者说结构中,包含了这些信息: ownership, type, ...

监利县19635477927: unix的目录结构
产朋欣顺: 无论如何一个inode里面只能出现一个文件(当然压缩的那些不算),所以针对目录也是如此.这个是文件系统本身的约定.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网