Centos的Inode及Block相关知识

时间:2016-06-04 01:54来源:blog.51cto.com 作者:“tao” 博客 举报 点击:173次

本经验均在CentOSrelease6.7(Final)下操作,如知识有欠缺之处 欢迎批评指正。

linux 的inode及block的相关知识:

1>  Linux系统分区格式化文件系统之后,系统会分为Inode及Block两部分:

1)Inode为系统文件的属性信息(ls -l的结果)及指向文件实体的指针,但是没有存放文件名,一般在上级目录里的Block。

2)Block为存放数据的,ext3/ext4一般为1k,2k,4k,一般默认4k

3)一个文件不论多大至少占用一个Inode和一个Block,一个Block只能存放一个文件的内容,block的数量大于Inode的数量,多个文件可以占用同一个 inode(硬链接) 。

4)访问文件, 通过文件-->inode(验证权限)--->blocks.

5)inode 一般情况默认256B,block大小1k,2k,4k,默认4k,注意,引导分区等特殊分区除外。

6)通过df -i 查看inode的数量及使用情况,dumpe2fs /dev/sda1  查看inode及block的大小和数量。

7)一个block只能 被一个文件使用 ,如果一个文件很小block太大,剩余空间浪费,无法继续被其他文件使用。

8)block不是越大越好,根据业务的文件大小进行选择,一般就是默认 4k。

9)可以在格式化的时候改变inode及block的大小,使用mkfs.ext4 -b 2048 -I 1024  /dev/sdb2

2>Linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
1.命令格式:
df [选项] [文件]

2.参数 :

df -i  查看参数多少 个

[root@techW ~]# df -i
Filesystem            Inodes IUsed   IFree IUse% Mounted on
/dev/mapper/vg_techw-lv_root
                     1152816 55846 1096970    5% /
tmpfs                 125596     1  125595    1% /dev/shm
/dev/sda1             128016    38  127978    1% /boot

df -h  查看磁盘大小:

[root@techW ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_techw-lv_root
                       18G  1.5G   15G   9% /
tmpfs                 491M     0  491M   0% /dev/shm
/dev/sda1             477M   36M  416M   8% /boot

查看当前系统分区的Inode及Block的总量及使用量:

[root@techW ~]# dumpe2fs  /dev/sda1 | grep -i "block size"
dumpe2fs 1.41.12 (17-May-2010)
Block size:               1024
[root@techW ~]
[root@techW ~]
[root@techW ~]# dumpe2fs  /dev/sda1 | grep -i "inode size"
dumpe2fs 1.41.12 (17-May-2010)
Inode size:               128    ###boot分区为128,常规分区为256
[root@techW ~]
[root@techW ~]
[root@techW ~]# dumpe2fs  /dev/sda1 | grep -i "inode count"
dumpe2fs 1.41.12 (17-May-2010)
Inode count:              128016
[root@techW ~]
[root@techW ~]# dumpe2fs  /dev/sda1 | grep -i "block count"
dumpe2fs 1.41.12 (17-May-2010)
Block count:              512000
Reserved block count:     25600

3>添加一块磁盘,格式化,改变Inode及 Block的大小,挂载查看硬盘的Inode及Block数量:

1)添加一块5G的磁盘,为方便区分设置为/dev/sdb,fdisk分区,然后mkfs.ext4格式化

(虚拟机增加一块5G的硬盘,分区,格式化)

[root@techW ~]# fdisk  /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x2d37eabe.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').
Command (m for help):  n ### add a new partition
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 2  ### 为做区分,选择2
First cylinder (1-652, default 1): 
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-652, default 652): 
Using default value 652
Command (m for help): w   ###  write table to disk and exit
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
 
分区时的参数命令:
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)
[root@techW ~]# mkfs.ext4 /dev/sdb2
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)    ###默认的Block的大小为4096
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 1309289 blocks
65464 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1342177280
40 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 26 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

2)###inode的大小范围为128-2048,block的大小范围为1024-4096####

3)将Block和Inode的大小都改为2048:

[root@techW ~]# mkfs.ext4 -b 2048 -I 2048 /dev/sdb2
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=2048 (log=1)
Fragment size=2048 (log=1)
Stride=0 blocks, Stripe width=0 blocks
326400 inodes, 2618578 blocks
130928 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=540016640
160 block groups
16384 blocks per group, 16384 fragments per group
2040 inodes per group
Superblock backups stored on blocks: 
        16384, 49152, 81920, 114688, 147456, 409600, 442368, 802816, 1327104, 
        2048000
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

4)使用dumpe2fs命令查询Inode和Block的大小:

[root@techW ~]# dumpe2fs  /dev/sdb2 | grep "Inode size"
dumpe2fs 1.41.12 (17-May-2010)
Inode size:               2048  ###大小更改成功
[root@techW ~]
s  /dev/sdb2 grep "Block size"
dumpe2fs 1.41.12 (17-May-2010)
Block size:               2048  ###大小更改成功

Centos的Inode及Block相关知识的更多相关文章

  1. 《Inode与Block重要知识总结核心讲解》【转】

    本文转载自:https://blog.csdn.net/BlackEnn/article/details/50787092 1.查看/dev/sda1下磁盘分区的block大小: 2.查看单个inod ...

  2. linux centos的安装及一些相关知识的整理

    相关知识点        ***网桥:主机和虚拟机之间使用"桥接"网络组网 VMware 0 ***Net适配器:把本地网中虚拟机的ip地址转换为主机的外部网络地址 ***仅主机适 ...

  3. inode与block知识总结

    inode概述:硬盘要分区,然后格式化,创建文件系统在每个Linux存储设备的分区被格式化为ext3文件系统后一般有两个部分:    第一部分Inode:存储这些数据的属性信息(大小,属主,归属的用户 ...

  4. LVM 相关知识

    LVM 相关知识 一.示例图 二.概念 名词 全称 释义 PV Physical Volume 物理硬盘.硬盘分区或者RAID磁盘阵列,先要创建pv VG Volume Group 卷组建立在物理卷之 ...

  5. 【Python五篇慢慢弹(5)】类的继承案例解析,python相关知识延伸

    类的继承案例解析,python相关知识延伸 作者:白宁超 2016年10月10日22:36:57 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给 ...

  6. iOS网络相关知识总结

    iOS网络相关知识总结 1.关于请求NSURLRequest? 我们经常讲的GET/POST/PUT等请求是指我们要向服务器发出的NSMutableURLRequest的类型; 我们可以设置Reque ...

  7. Linux文件系统(inode、block……)

    内容源于<鸟哥的Linux私房菜> 认识 EXT2 文件系统 文件系统的特殊观察与操作 文件系统 superblock,inode,block superblock,inode,block ...

  8. linux 文件系统(inode和block)

    linux文件系统(inode block superblock)   先说一下格式化:每种操作系统所设置的文件属性/权限并不相同,为了存放这些文件所需的数据,因此就需要将分区格式化,以成为操作系统能 ...

  9. 磁盘管理之inode与block

    索引式文件系统 什么是inode? Inode其实就是索引号,便于我们寻找我们文件所存储的数据块block,索引式文件系统在查找信息,读写操作上都比原来的文件系统要快,我们可以通过inode中记录的b ...

随机推荐

  1. SQL Server select 将类型相同的行合并

    select Category from(select distinct Category from T_Detail where CREATED_BY= @CREATED_BY AND Record ...

  2. App Store idfa被拒检查办法

    最近应用因为这个问题被拒两次,理由如下: PLA 3.3.12We found your app uses the iOS Advertising Identifier but does not in ...

  3. 微信去除 防欺诈盗号请勿支付或输入qq密码 以及 防欺诈或盗号请不要输入qq密码 的方法

    本文介绍如何去除微信顶部的“防欺诈盗号,请勿支付或输入qq密码”.或 “防欺诈或盗号,请不要输入qq密码”如图所示.    一.微信认证 目前只有已经通过微信认证的账号可以去除这个提示.在公众账号下左 ...

  4. Android 对Map按key和value分别排序

    一.理论准备 Map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等. TreeMap:基于红黑树(Red-Black tre ...

  5. python字典循环小点

    对于字典数据量不大时候   首先会将字典转换成列表,写到内存,如果几百万条,就会减慢速度 for k,v in dic:print k,v 可以这样 for k in dic:print k,dic[ ...

  6. JSP常用标签——JSTL标签和EL表达式

    一.JSTL简介 1.什么是JSTL JSTL是Java中的一个定制标记库集.(这个标记库集不需要自己编写,可以直接使用) 2.为什么要使用JSTL 实现了JSP页面中的代码复用(基于标签库原理,重复 ...

  7. 无线AP_H3C WA2620i-AGN配置

    设置Console口登录AP设备的用户进行密码认证: <Sysname> system-view //进入系统视图 [WA2620i-AGN]user-interface console ...

  8. python 归档tarfile,zipfile学习

    一.tarfile 用法: tarfile.open(cls, name=None, mode='r', fileobj=None, bufsize=10240, **kwargs)  返回一个Tar ...

  9. Jquery判断离开页面时,通过Ajax更新数据(兼容IE,Chrome,FF浏览器)

    现在很多项目都有客户离开网页时,处理一些业务的需求.所以焦点就聚集在了如何获取页面离开事件. 以下是本人在一个项目中需要记录页面浏览时长的处理办法,测试兼容IE,Chrome,FF浏览器 代码如下: ...

  10. 关于更新Ubuntu14.04内核后,virtualbox无法开机vm的问题

    virtualbox和linux内核结合比较紧密,所以当内核意外改动,可能会引起virtualbox无法启动虚拟机,只要尝试启动虚拟机,就会弹出让你执行/etc/init.d/vboxdrv setu ...