Linux文件系统

1. Linux文件系统有三部分组成:文件名,inode,block(真正存取数据)

 可以使用: stat 命令查看文件Inode信息

 

2. inode的大小,inode也会消耗硬盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域。

  (1)一个是数据区:存放文件数据;

  (2)另外一个是inode区,存放inode所包含的信息。

 

3. 每个文件至少有一个inode号,操作系统用inode号码来识别不同的文件

  使用ls -i 命令可以查看到对应文件的inode号码:

 

4. 查看目录下:

 

5. 查看目录:

 

6. linux 中 ctime,mtime,atime的区别:

ctime: 改变时间(change time)

mtime: 修改时间(modification time)

  改变和修改时间的区别在于是修改文件的属性还是更改它的内容。

  chmod a-W myfile 这是一个改变时间。

  echo foo >> myfile 这是一个修改时间。

atime: 访问时间(access time)

  访问时间是文件最后一次被读取的时间,因此阅读一个文件会更新它的访问时间。但是它的改变时间和修改时间并没有变化。

 

 

7. 硬链接,ln命令可以创建软件硬链接:

ln 源文件  目标文件

文件名1 - > inode1 -> blockA

文件名2 - > inode1 -> blockA

删除一个另一个不受影响(两个文件的inode号相同)。

总结:硬链接不能跨分区,不能给文件夹创建。

 

8. 软连接,相当于快捷方式

ln -s 源文件 软连接名称

总结:软连接可以跨分区,可以给文件夹创建。

 

 

经验之谈:

web服务器中小文件很多,导致硬盘有空间,但是无法创建文件,可能inode数被用没了。

 

block设置大,效率高,利用率低。

block设置小,效果低,利用率高。

一般系统默认就行。

 

扩展知识:

ext4文件系统 比 ext3文件系统强有什么异同:

1. ext4 支持更大的文件系统和更大的文件,可支持1EB的文件系统,支持16TB的文件。支持无限数量的子目录。无日志模式,提升性能。

2. ext3目前所支持的最大16TB文件系统和最大2TB文件。目前支持32000个子目录。

 

posted @ 2017-04-29 18:57  dcz1001  阅读(123)  评论(0编辑  收藏  举报