linux文件系统

来源:互联网 发布:僵尸题材单机游戏知乎 编辑:程序博客网 时间:2024/06/06 05:12

linux 文件系统由三部分组成: 文件名 inode block(真正存放数据)


inode : 文件数据都存储在 块 中, 那么很显然 , 必须找到一个地方存储文件的元信息,比如文件的创建者,文件的创建日期,文件的大小等等,

              这种储存文件信息的区域就叫做 inode,即 索引节点


inode包含文件元信息 具体内容:

             1 文件的字节数

             2 文件的拥有者UserID

             3 文件的GroupID

             4 文件的读写执行 权限

             5 文件的时间戳 共3个 ctime : inode 上一次变动的时间 mtime 指文件内容上一次变动时间 atime指文件上一次打开时间

             6 链接数 即多少文件名指向这个inode

             7 文件数据block位置


使用stat命令查看文件inode信息
[root@localhost etc]# stat /etc/passwd
  File: ‘/etc/passwd’
  Size: 2413          Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051d    Inode: 135390839   Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-12-01 11:05:04.739114631 +0800
Modify: 2016-12-01 11:05:03.215066885 +0800
Change: 2016-12-01 11:05:03.216066916 +0800
 Birth: -


inode也会消耗磁盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域,一个是数据区 存放文件数据 另一个 inode区 存放inode所包含信息

inode大小

[root@localhost etc]# df -ih
Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/sda3         98M  202K   98M    1% /
devtmpfs         505K   376  505K    1% /dev
tmpfs            509K     6  509K    1% /dev/shm
tmpfs            509K   541  508K    1% /run
tmpfs            509K    13  509K    1% /sys/fs/cgroup
/dev/sda1        300K   330  300K    1% /boot
tmpfs            509K    18  509K    1% /run/user/42
tmpfs            509K     1  509K    1% /run/user/1000


每个文件最少有一个inode号,操作系统用inode号来识别不同文件


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

[root@localhost etc]# ls -i /etc/passwd           
135390839 /etc/passwd


[root@localhost etc]# ls -i /etc/         #查看目录
135269213 abrt                        135196069 machine-id
135269405 adjtime                     134515716 magic
134220506 aliases                     134828910 mail.rc
134217861 aliases.db                  135884369 makedumpfile.conf.sample
270434964 alsa                        137114316 man_db.conf
402804691 alternatives                403255674 maven
135269484 anacrontab                  134701072 mke2fs.conf
274313846 asciidoc                       857078 modprobe.d
134603545 asound.conf                 269986391 modules-load.d
137110355 at.deny                     134220520 motd
  1640622 at-spi2                     134217860 mtab


[root@localhost etc]# ls -di /etc/     #查看目录Inode号
134217857 /etc/


ext4 文件系统比ext3文件系统强的方面:

1. ext4 与 ext3 兼容 更大的文件系统和更大的文件

                ext3 目前支持最大的16TB 文件系统 和 最大 2TB文件

                ext4 分别支持 1EB(1EB = 1024PB 1PB = 1024TB)的文件系统 以及16TB的文件

2. ext4 无限的子目录 ext3 目前只支持32,000个子目录

3. 无日志模式 日志总归有一些开销 ext4允许关闭日志 以便某些有特殊需求的用户可以借此提升性能

0 0