本文共 2899 字,大约阅读时间需要 9 分钟。
RHEL7.2 如何设置block
[root@localhost ~]# mkfs.xfs -b size=1024 /dev/sdb1 -f meta-data=/dev/sdb1 isize=256 agcount=4, agsize=24064 blks = sectsz=512 attr=2, projid32bit=1 = crc=0 finobt=0 data = bsize=1024 blocks=96256, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=0 log =internal log bsize=1024 blocks=2564, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 注: [root@localhost ~]# mkfs.ext4 -b 1024 /dev/sdb1Linux文件系统由三部分组成 :文件名,inode,block(真正存数据)
inode:文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为"索引节点"。inode的内容
inode包含文件的元信息,具体来说有以下内容: 文件的字节数 文件拥有者的User ID 文件的Group ID 文件的读、写、执行权限 文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,atime指文件上一次打开的时间。 链接数,即有多少文件名指向这个inode[root@localhost ~]# stat a.txt
File: ‘a.txt’ Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fd00h/64768d Inode: 36433003 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2016-02-24 08:45:42.182854288 -0500 Modify: 2016-02-24 08:45:42.182854288 -0500 Change: 2016-02-24 08:45:42.182854288 -0500[root@localhost ~]# ll a.txt
-rw-r--r-- 1 root root 0 Feb 24 08:45 a.txtinode的大小
inode也会消耗硬盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域。一个是数据区,存放文件数据;另一个是inode区(inode table),存放inode所包含的信息。16G
1 G = 1024 MB =1024 1024 KB 1 G = 1000 MB =1000 1000 KB查看每个硬盘分区的inode总数和已经使用的数量,可以使用df命令。
[root@localhost ~]# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/mapper/rhel-root 10485760 138134 10347626 2% / devtmpfs 500087 404 499683 1% /dev tmpfs 503976 6 503970 1% /dev/shm tmpfs 503976 563 503413 1% /run tmpfs 503976 13 503963 1% /sys/fs/cgroup /dev/sr0 0 0 0 - /mnt /dev/sda1 204800 327 204473 1% /boot tmpfs 503976 17 503959 1% /run/user/42 tmpfs 503976 1 503975 1% /run/user/0使用ls -i命令,可以看到文件名对应的inode号码:
[root@localhost ~]# ls -i a.txt 36433003 a.txt 查看目录的inode号 [root@localhost ~]# ll -di /etc/ 16777345 drwxr-xr-x. 136 root root 8192 Feb 24 08:03 /etc/扩展:linux中ctime,mtime,atime的区别
ctime:“改变时间(change time)” mtime :“修改时间(modification time)” 改变和修改之间的区别在于是改文件的属性还是更改它的内容。chmod a-w myfile,那么这是一个改变; echo foo >> myfile,那么这是一个修改。 改变是文件的索引节点发生了改变;修改是文本本身的内容发生了变化。 atime :“访问时间(access time)” 访问时间是文件最后一次被读取的时间。因此阅读一个文件会更新它的访问时间。但是它的改变时间和修改时间并没有变。ls -lc filename 列出文件的 ctime
ls -lu filename 列出文件的 atime ls -l filename 列出文件的 mtime实例:
web服务器中小文件很多,导致硬盘有空间,但无法创建文件。 inode数被用光了。 [root@localhost ~]# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/mapper/rhel-root 10485760 138138 10347622 2% / devtmpfs 500087 404 499683 1% /dev tmpfs 503976 6 503970 1% /dev/shm tmpfs 503976 563 503413 1% /run tmpfs 503976 13 503963 1% /sys/fs/cgroup /dev/sr0 0 0 0 - /mnt /dev/sda1 204800 327 204473 1% /boot tmpfs 503976 17 503959 1% /run/user/42 tmpfs 503976 1 503975 1% /run/user/0本文转自信自己belive51CTO博客,原文链接: http://blog.51cto.com/11638205/2048928,如需转载请自行联系原作者