一 思路:

1,磁盘物理结构及大小计算

2,分区 MBR GPT知识

3,fdisk分区 挂载 自动挂载

4,格式化文件系统

5,inode block

6,软硬链接

查看磁盘:

[root@moban dev]# ls sda

sda sda1 sda2 sda3

二 MBR分区机制

512

446

66

-----

64

分区模式

注意: 分区编号,1-4只能给主分区或扩展分区使用,逻辑分区是基于扩展分区来搞的,编号从5开始.

不能对已挂载的磁盘,进行操作.

只能读写数据.

如果想重新更改文件系统,--先卸载—然后修改fs

三 mount umount

四 inode block

分区被格式化后分为两部分:

1,inode 存放文件属性(不含文件名) ,还有个指针 block存放文件内容

[root@moban ~]# ls -il .txt

 -rw-r--r--  root root  Mar  : .txt

2,备份inode

dd - convert and copy a file #做一个虚拟的文件系统

[root@moban ~]# dd if=/dev/sda of=mbr.bin bs= count=

+ records in

+ records out

 bytes ( B) copied, 0.000364539 s, 1.4 MB/s

解析:

dd if=/dev/sda of=mbr.bin bs= count=

if源 of目标 bs blocksize count 1个block

[root@moban ~]# od -xa mbr.bin

 48eb  d08e 00bc b8b0  d88e c08e

k H dle dle so P < nul   nul nul so X so @

 befb 7c00 00bf b906  a4f3 21ea 

{ > nul | ? nul ack  nul stx s $ j ! ack nul

 be00 07be  0b75 c683  fefe 

nul > > bel  eot u vt etx F dle soh ~ ~ bel u

 ebf3 b416 b002 bb01 7c00 80b2 748a 

s k syn  stx  soh ; nul |  nul nl t etx stx

      90fa f690 80c2

nul nul nul nul $ b nul nul nul bs z dle dle v B nul

  80b2 59ea 007c  8ec0 8ed8 bcd0

u stx  nul j Y | nul nul  @ so X so P <

  a0fb 7c40 ff3c  c288 f652 80c2

nul sp { sp @ | < del t stx bs B R v B nul

  41b4 aabb cd55 5a13   55fb

t T  A ; * U M dc3 Z R r I soh { U

 75aa a043 7c41 c084  e183  

* u C sp A | eot @ u enq etx a soh t  f

 4c8b be10 7c05 44c6 01ff 8b66 441e c77c

vt L dle > enq | F D del soh f vt rs D | G

  c700    085c 44c7 

eot dle nul G D stx soh nul f ht \ bs G D ack nul

  c031    b40c cd42 

p f  @ ht D eot f ht D ff  B M dc3 r

 bb05  7deb 08b4 13cd 0a73 c2f6 0f80

enq ; nul p k }  bs M dc3 s nl v B nul si

 f084 e900 008d 05be c67c ff44  c031

eot p nul i cr nul > enq | F D del nul f  @

 f088    88d2 c1ca 02e2 e888

bs p @ f ht D eot  R bs J A b stx bs h

 f488   c031 d088 e8c0  

bs t @ ht D bs  @ bs P @ h stx f ht eot

 a166 7c44  66d2 34f7  660a d231

f ! D | f  R f w  bs T nl f  R

 f766   890b 0c44 443b 7d08 8a3c

f w t eot bs T vt ht D ff ; D bs } < nl

 0d54 e2c0 8a06 0a4c c1fe d108 6c8a 5a0c

T cr @ b ack nl L nl ~ A bs Q nl l ff Z

 748a bb0b  c38e db31 01b8 cd02 

nl t vt ; nul p so C  [  soh stx M dc3 r

 8c2a 8ec3  607c b91e  db8e f631

* ff C so ack H | ` rs  nul soh so [  v

 ff31 f3fc 1fa5 ff61  be7c 7d7f 40e8

 del | s % us a del & B | > del } h @

 eb00 be0e 7d84 38e8 eb00 be06 7d8e 30e8

nul k so > eot } h  nul k ack > so } h 

 be00 7d93 2ae8 eb00 47fe   

nul > dc3 } h * nul k ~ G R U B sp nul G

 6f65 006d     006b 

e o m nul H a r d sp D i s k nul R e

    6f72  01bb b400 cd0e

a d nul sp E r r o r nul ; soh nul  so M

 ac10 003c f475 00c3    

dle , < nul u t C nul nul nul nul nul nul nul nul nul

nul nul nul nul nul nul nul nul ack f ht nul nul nul nul sp

  9f83      9f00

! nul etx us ack em nul bs nul nul nul @ ack nul nul us

  2a82 9c0e     2a00

bel em stx * so fs nul H ack nul nul nul sp nul nul *

 9c0f fe83 ffff   b800  

si fs etx ~ del del nul H & nul nul  Y stx nul nul

        aa55

nul nul nul nul nul nul nul nul nul nul nul nul nul nul U *

inode block

比喻:教室门口贴一张纸,inode,有大家的位置信息,以及学生身高,三围信息.座位就相当于block..书的页码

因为inode要存放文件的信息,所以inode是有大小的.C5 inode默认大小128字节.而C6默认inode大小256自己,inode大小在文件系统格式化之后就无法更改了.格式化前可以指定iniode大小,但是一般工作没这个需求.

1,一个文件至少占用1个inode和1个block

2,ext3/4 block大小有1k 2k 4k 其中c6引导1k,其他4k

3,查看inode和block大小及数量

4,1个block只能存储1个文件的内容,所以block并非越大越好.

查看inode和block

查看inode使用状况

[root@moban ~]# df -i

Filesystem Inodes IUsed IFree IUse% Mounted on

/dev/sda3    % /

tmpfs    % /dev/shm

/dev/sda1    % /boot

[root@moban ~]#

有关block的大小:磁盘读取数据是按照block来读取的.

Block并非越大越好,Block快越大,对于单个的小文件(0.5k)业务,会非常浪费空间.因为一个文件无论多大都会必须占用一个inode和block,但是对于大文件.可以提升读取的效率,因为如果block太小.就要读多个block,这样就消耗磁盘io,如果block太大,则会读取较少的block就读完数据,从而减少磁盘的IO

Block快太小会影响磁盘读取大文件数据的效率,block块越小,同样存储一个问及爱你就需要更多的block,这样硬盘读取数据时就要读取多个block,因此效率就越低.

当前生产环境block一般设置为4k

http://blog.csdn.net/liuaigui/article/details/5521024

图解inode,block

这个总结的更加详细点

小的好处:对于小文件

大的好处:

生产环境,block大小如何处理?

如果是大文件的业务,block尽量大一点.

如果是小文件的业务,block给小点

ext3 4最大只能4k.工作用文件几乎没小于4k的.

修改inode和block

格式化时指定inode和block

挂了一块sdb10G的硬盘

格式化时不指定

[root@moban ~]# dumpe2fs /dev/sdb

[root@moban ~]# dumpe2fs /dev/sdb |grep "Inode size"

dumpe2fs 1.41. (-May-)

Inode size:     

[root@moban ~]# dumpe2fs /dev/sdb |grep "Block size"

dumpe2fs 1.41. (-May-)

Block size: 

格式化时候指定inode和block大小

[root@moban ~]# mkfs.ext4 -I  -b  /dev/sdb

[root@moban ~]# dumpe2fs /dev/sdb |grep "Block size"

dumpe2fs 1.41. (-May-)

Block size: 

[root@moban ~]# dumpe2fs /dev/sdb |grep "Inode size"

dumpe2fs 1.41. (-May-)

Inode size:     

小结:

1,磁盘分区格式化文件系统后,会分为inode和block

2,inode存放文件的属性以及指向文件实体的指针,文件名不再inode里.一般商机目录的block

3,访问文件,通过文件-->inode-->blocks

4,inode一般情况默认大小256B block大小1 2 4k 默认是4k,引导分区除外

5,通过df -i 查看inode的数量及使用情况.dumpe2fs /dev/sda3查看inode及block的大小及数量

6,一个文件至少占用一个inode及一个block,单个文件可以占用同一个inode(硬链接)

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

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

9,可以在格式化的时候改变inode和block的大小.
mkfs.ext4 -b  -l  /dev/sdb

dumpe2fs /dev/sdb |grep "Inode size"

dumpe2fs /dev/sdb |grep "Block size"

企业面试题:一个100M的磁盘分区,分别写入1K和1M的文件,分别可以写多少个?

[svc][op]磁盘MBR分区机制- inode/Block深入实战的更多相关文章

  1. 磁盘操作- inode/Block深入实战

    一 思路: 1,磁盘物理结构及大小计算 2,分区 MBR GPT知识 3,fdisk分区 挂载 自动挂载 4,格式化文件系统 5,inode block 软硬链接 查看磁盘: [root@moban ...

  2. Linux中磁盘mbr分区——实践篇

    Linux中磁盘mbr分区——实践篇 fdisk命令 语法 fdisk(选项)(参数) 选项 -b <分区大小> 指定每个分区的大小 -l 列出分区表信息 -v 显示版本信息 参数 设备文 ...

  3. [svc][op]磁盘Inode详解-重要

    另一篇白话总结 一.inode是什么 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存512字节(相当于0.5KB ...

  4. [svc][op]磁盘(结构)容量计算

    磁盘结构和容量计算 fdisk -l显示信息详解 [root@www.linuxidc.com ~]# fdisk -l Disk /dev/sda: bytes heads, sectors/tra ...

  5. Linux 磁盘介绍(磁盘、分区、MBR、GPT)

    原文:https://www.linuxidc.com/Linux/2013-06/85717.htm 1. CHS(Cylinder-Head-Sector): was an early metho ...

  6. Linux 学习手记(6): 磁盘、分区、MBR与GPT

    1. 磁盘在LINUX中的表示 Linux所有设备都被抽象为一个文件,保存在/dev目录下 设备名称一般为hd[a-z]或者sd[a-z]([a-z]为分区号),如:hda.hdb.sda.sdb I ...

  7. 磁盘,fdisk分区,MBR,dd命令

    光盘和磁盘.u盘.软盘.硬盘有什么区别 ①光盘: cdrom/dvdrom:光驱(光盘驱动器)    rom:只读    ram:可以擦写    cd:700M    dvd:4G ②软盘:flopp ...

  8. Linux磁盘分区--MBR分区

    今天心情不高兴,做IT不容易被公司重视,一定要速度学会运营,成为一个高逼格的技术男. 今天我要熟练掌握linux系统分区的能力.大家都知道,linux系统分区有两种分区格式:GTP和MBR. MBR作 ...

  9. Linux学习之CentOS(十二)------磁盘管理之 磁盘的分区、格式化、挂载(转)

    磁盘分区.格式化.挂载磁盘分区    新增分区    查询分区    删除分区磁盘格式化    mkfs    mke2fs磁盘挂载与卸载    mount    umount 磁盘的分区.格式化.挂 ...

随机推荐

  1. 不兼容:不支持SCSI硬盘

    获取机器硬件失败,可能你使用了SCSI硬盘,请更换一台主机进行安装 聚生网管2.11版本不支持scsi硬盘. 终于体会到了不兼容的麻烦了.

  2. redis队列及多线程应用

    由于xxx平台上自己的博客已经很久没更新了,一直以来都是用的印象笔记来做工作中知识的积累存根,不知不觉印象笔记里已经有了四.五百遍文章.为了从新开始能与广大攻城狮共同提高技术能力与水平,随决心另起炉灶 ...

  3. web开发学习之旅

    过段时间要去实习,提前问了下老师我要准备哪些知识. 2015年3月19日,老师告诉我的,ionic Framework,Yii Framework,AngularJS,还有一些前端开发知识. 我除了听 ...

  4. Fiddler Session标志

    Each Session object in Fiddler contains a collection of string flags, in the Session.oFlags[] collec ...

  5. 【线程篇】stop() 和suspend()

    1.为什么不推荐用 stop()和 suspend() stop这个方法将终止所有未结束的方法,包括run方法.当一个线程停止时候,他会立即释放所有他锁住对象上的锁.这会导致对象处于不一致的状态.假如 ...

  6. CUDA 7.0 速查手册

    Create by Jane/Santaizi 03:57:00 3/14/2016 All right reserved. 速查手册基于 CUDA 7.0 toolkit documentation ...

  7. 参数关键点和return返回多个(伪多个)值问题

    # -*- coding: cp936 -*- #python 27 #xiaodeng #参数关键点和return返回多个(伪多个)值问题 #传递参数的概念: #即:对象作为输入,发送给函数的方式 ...

  8. PHP-线程安全与非线程安全版本的区别

    Windows版的PHP从版本5.2.1开始有Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分,这两者不同在于何处?到底应该用哪种?这里做一个简单的介绍. ...

  9. Swift代理造成内存泄漏的解决办法

    在swift中,使用代理 ,可能很多人会这样实现: .首先定义一份协议. protocol ToolProrocol{ //代理方法 func didRecieveResults(result:Int ...

  10. Nginx配置https和wss

    微信小程序不仅要求必须是HTTPS和WSS,还要求URL里不能有端口号. 一.使用Nginx足够了 常见的服务器有三种: Nginx IIS Apache 这三种服务器都可以配置https,但是没必要 ...