Solaris10的文件布局

    unix下的文件系统只有一个(/)根目录。其他所有目录都以根目录的子目录形式出现。Solaris创建分片,在分片上构建文件系统,然后每个文件系统 都可以通过挂接以根目录的子目录形式出现。例如:/etc、/usr等。通过对应的子目录即可对分片进行操作。

   Solaris OS 中的文件一般由文件名和I节点组成,大部分文件都使用数据块(data-block)存储。I节点(inode,information node)。

   inode用来记录文件的信息,可以分为两部分:第一部分inode记录文件的信息如Owen、权限、大小等;第二部分记录该文件的数据块指针,指向特定的数据块。如果是常规文件数据块存放的是文件的内容,若是目录数据块存放的内容是广域目录中的文件(或子目录)和inode之间的链接。

(如单片机 中的地址指针,设备文件只保存了指向设备的数字编号)inode是一个纯数字编号,在创建一个新的文件系统时,会创建一个全新的完整的inode list.

 

  设备文件:

    设备文件不是保存数据的,它仅提供到设备的访问,因此设备文件不使用数据块。

   以上输出中每一行的第一个字母的含义:

-:常规文件

d:目录

l:符号链接

b:块设备文件

c:字符设备文件,也叫裸设备文件

 

解释:

 

块设备(block device)是一种具有一定结构的随机存取设备,对这种设备的读写时按块进行的,他使用缓存区暂时存放数据,待时机成熟后,从缓存区一次性写入设备后一次性读出。如磁盘和文件系统。

例如:硬盘的驱动可能要求读取磁盘上任意块的内容,然后又转去读取别的块的内容。且读取的块在磁盘上的位置不一定连续所以访问时随机的。而且不是以数据流的方式访问,显然是块设备。常见的块设备包括cd-rom、磁盘、硬盘、U盘等。对于usf来说逻辑块的大小为8kbytes。可以使用mkfs -m命令来查看块设备的逻辑块大小。

 

字符设备(character device)顺序存取的数据流设备,对这种设备的读写是按字符进行的,且这些字符连续形成一个数据流、不具备缓存区。所以对这种设备的读写是实时的。如terminal、磁带机、键盘等设备。字符设备(裸设备)以磁盘的最小可寻址单元(sector,512bytes)为单位进行I/O输入输出操作。

 

在ls-l中输出的第二行中99为该设备的主设备号(major device number),0为此设备号(minor device number)

主设备号指定了设备驱动器要访问的设备,此设备号则指定了设备驱动其索要控制的特定单元。在设备文件的的inode中保存了major和minor数值建立了设备文件和他控制的设备之间的联系。(也就是说该inode直接特定的设备)。

 

 

 

链接

 

链接分为硬链接(hard link)和软连接(soft link)

 

软链接(符号链接,symbolic link)类似于Windows系统中的快捷方式。创建方法:ln -s /tmp/1 /2

注意/2是一个软链接,它的inode中存放着指向到/tmp/1文件的指针。

在时候用ls -l命令查看软链接时,他的前缀显示为 -。当删除源文件,软连接也失效。

 

 

硬链接(hard link)硬链接主要的作用是为一个文件设置多个有效目录,保证重要文件不被误删。只有当所有路径全部被删除后,文件的数据块和目录才会被释放,文件被删除。(包括源文件和硬链接)

硬链接的inode指向的是存放数据的数据块。一个普通文件最少拥有一个硬链接,一个目录最少拥有两个硬链接(目录名和.),.表示自己使用和自己目录一样的inode。

notice:注意只有在同一文件系统中才能创建硬链接,且目录不能为目录创建硬链接。

创建硬链接的命令是:

ln soucepath destionalpath

使用ls -li查看的内容如上,可以看见在权限后面会显示一个数字,该数字表示硬链接的个数,也就是指向该数据块的文件的个数。

 

 

目录的硬链接:

对于目录来说虽然不能手动的创建硬链接,但是Solaris默认情况下会为新的空目录创建两个硬链接(目录名和.),其中.代表自己使用和自己目录一样的inode。..表示上一级目录,使用上级目录的inode,每多一个子目录,目录的硬链接就多一个。(目录的硬链接个数由其目录中的子目录来计算,只统计一级子目录)

 

 

ls常用参数:

-l:显示向信息

-a:显示全部信息

-L:显示软链接的目标目录信息

-i:显示inode

-R:显示包括继承了子目录的信息

-d:directory_name 只显示目录名称和信息,不显示目录内部信息(目录内的字目录及文件信息)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值