2、inode:索引节点
inode 索引节点index node。每个存储设备或存储设备的分区(存储设备是硬盘、软盘、U盘等等)被格式化为文件系统后,有两部份,一部份是inode(很多个),另一部份是Block(很多个),Block是用来存储数据用的。inode是用来存储这些数 据的信息包括文件大小、属主、归属的用户组、读写权限,还包含指向文件实体的指针,但是inode不包括文件名,文件名严格来说不算属性。
inode为每个文件进行信息索引,所以就有了inode的数值。操作系统根据指令, 能通过inode值最快的找到相对应的文件,访问文件通过 文件名--->inode--->block.
多个文件占用同一个inode互为链接文件。
inode对应磁盘上的一块分区空间,每个inode是有大小的,centos 5系列默认inode大小128字节,centos 6系列默认inode大小256字节,
3、block:数据块
磁盘读取数据是按照block读取的;
一个文件可能占用多个block,但是每读取一个block,就消耗一个磁盘I/O,为提高磁盘I/O性能,可将block适当设置大一点,使一次性读取的数据尽量多一点。
一个block只能存放一个文件的内容,即使有剩余也不能再装其他文件的内容,剩余的就浪费了。
block不是越大越好,太大存放小文件(一般小文件小于1K,大文件一般大于16K)容易浪费磁盘空间,太小不利于提高磁盘I/O性能。
block一般大小为1K,2K,4K,引导分区为1K,普通分区为4K(centos 6系列)
磁盘空间取决于inode和block两项,任何一项满了,磁盘就满了。
ext3/ext4文件系统下,一个文件被创建至少占用一个inode和一个block,不同文件的inode 是不同的。
4、
查看文件系统inode总量及剩余量用 df -i
查看磁盘使用量用 df -h
查看inode和block的大小和数量用 dumpe2fs [文件]
文件删除恢复ext3grep
5、企业环境中操作文件,应当先备份再操作,做到能够还原,不能还原的,应当先在测试环境中测试再操作。
企业生产环境一般block设置为4K(centos 5和6系列),centos 7系列例外。
企业环境中inode是够用的,block 消耗的快。企业场景中小文件太多的话会导致inode不够用。
6、文件类型,find -type 查看文件类型, Linux中只有以下7中文件类型,没有其他的....
在Linux中,一切皆为文件。包括普通文件,目录,字符设备文件,块设备文件,符号链接文件,管道文件等等。
1.普通文件(-):通过file [文件]查看文件类型
2.目录(d)
3.字符设备文件(c)
4.块设备文件(b)
5.套接口文件(s)[如我们开启MySQL服务后,在/var/lib/mysql/下生成的mysql.sock文件,关闭MySQL服务后,这个文件就消失了]
6.管道(p):主要用来解决多个程序同时访问同一个文件产生的错误。
7.符号链接文件(l):文件的快捷方式
普通文件(-):通过file [文件]查看文件类型
纯文本文件(ASCII),内容可以直接读到,如配置文件,可用cat直接读到。
二进制文件(binary),Linux中的命令程序属于这种文件,
数据格式文件(data),如Linux用户登录的数据记录在/var/log/wtmp就属于数据格式文件,只能用last命令读取。
目录文件:通过ls -F 区分文件和目录,后面带/的为目录。 dengtest.txt java/ test tomcat/
字符设备文件:字符设备文件表示串行端口的接口设备,如modem。用"c" 表示。crw-rw-rw- 1 root tty 5, 0 Apr 6 19:35 /dev/tty
块设备文件:存储有数据供系统访问的接口设备,如硬盘光驱。用"b" 表示。brw-rw-rw- 1 root tty 5, 0 Apr 6 19:35 /dev/sda
一般用mknod来创建字符或块设备文件,用rm 删除。
套接口文件:一般用于网络连接
7、文件扩展名:
.tar,.zip表示压缩文件,
.sh表示shell文件,
.py表示python语言文件,
.pl表示perl语言文件,
.html .php .jsp .do 表示网页文件
.conf表示配置文件
.rpm表示rpm安装包文件
8、文件权限
原文地址:http://blog.51cto.com/12674559/2095284