自:http://zone.it.sohu.com/forums/thread-300095-1-1.html
在HPUX或者任何一种UNIX系统,包括Linux系统,对于在磁盘中的文件的寻址结构都是统一的。在本文中,将简要介绍一下寻址结构。
在任何一种UNIX操作系统中,文件系统由如下部分组成。
Superblock
Inode
Directories
其中Superblock是驻留着文件系统的信息,包括文件系统的类型,大小等等,这个信息是冗余的,也就是说,在Superblock有多个,当一个Superblock出现问题的时候可以使用备用Superblock来替代。
Inode也就是所谓的I节点,这是文件或者数据驻留在硬盘上的地点的标识。在一个文件系统中,I节点是唯一的。
Directories是磁盘文件夹,通常情况我们使用文件夹的形式来访问文件,而不是使用的是I节点。
下面,我们使用例子来说明每一个项。
查看Superblock
# cat /etc/sbtab
/dev/vg00/rlvol1: super-block backups (for fsck -b#) at:
16, 2504, 4992, 7480, 9968, 12456, 14944, 17432, 19728, 22216,
24704, 27192, 29680, 32168, 34656, 37144, 39440, 41928, 44416, 46904
/dev/vg00/rtest: super-block backups (for fsck -b#) at:
16, 2504, 4992, 7480, 9968, 12456, 14944, 17432, 19728, 22216,
24704, 27192, 29680, 32168
查看Inode
# ls -i
760 .pwd.lock 633 mkfs
875 MANPATH 632 mklost+found
709 d.login 615 ptydaemonlog
708 d.profile 830 publickey
707 dce.clean 614 pvchange
706 dce.rm 613 pvcreate
705 dce.unconfig 612 pvdisplay
704 dce_com_env 611 pvmove
703 dce_com_utils 610 pwck
702 dce_config 609 quot
701 dce_config_env 608 quotacheck
700 dce_config_utils 607 quotaoff
699 dcopy 606 quotaon
731 default 797 rarpd.conf
698 devnm 744 rc.config
697 dfs.clean 728 rc.config.d
696 dfs.rm 1125 rc.log
查看Directories
# ls -F
.Xauthority .sh_histroy dead.letter Nicry.sh* tmp_mnt/
.Xvg_hosts .sw/ dev/ mnt/ ttyp1
.audioCP .xims/ etc/ net/ usr/
.dt/ SD_CDROM/ export/ nohup.out var/
.dtprofile* TT_DB/ home/ opt/ xvg*
.profile bin/ lib/ sbin/
.rhosts cdrom/ lost+found/ stand/
好了,说明了这个问题。现在我们来研究一下在UNIX中是如何找到一个文件的。
首先,/也就是根的Inode是2,在根下的文件夹也具有这样的Inode。那么如果我们要寻找一个文件,比如查看一个文件/etc/qszy.welcome这个文件,是如何操作的?
# cat /etc/welcome
# #
# # # ###### # #### #### # # ######
# # # # # # # # # ## ## #
# # # ##### # # # # # ## # #####
# # # # # # # # # # #
# # # # # # # # # # # #
## ## ###### ###### #### #### # # ######
他的寻址方式是,首先,找到/,开始我们说明了,/的Inode是2,那么寻址就先找到2。
# ls -d -i /etc
4 /etc
在这里,我们可以看到/etc的Inode是4
# ls -i /etc/qszy.welcome
1289 /etc/qszy.welcome
在这里我们可以看到/etc/qszy.welcome的I节点是1289
好了,现在我们知道,寻找/etc/qszy.welcome文件是从2出发,然后到4,然后到1289,这样我们就可以找到/etc/qszy.welcome这个文件了。