[svc][op]磁盘MBR分区机制- inode/Block深入实战
一 思路:
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深入实战的更多相关文章
- 磁盘操作- inode/Block深入实战
一 思路: 1,磁盘物理结构及大小计算 2,分区 MBR GPT知识 3,fdisk分区 挂载 自动挂载 4,格式化文件系统 5,inode block 软硬链接 查看磁盘: [root@moban ...
- Linux中磁盘mbr分区——实践篇
Linux中磁盘mbr分区——实践篇 fdisk命令 语法 fdisk(选项)(参数) 选项 -b <分区大小> 指定每个分区的大小 -l 列出分区表信息 -v 显示版本信息 参数 设备文 ...
- [svc][op]磁盘Inode详解-重要
另一篇白话总结 一.inode是什么 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存512字节(相当于0.5KB ...
- [svc][op]磁盘(结构)容量计算
磁盘结构和容量计算 fdisk -l显示信息详解 [root@www.linuxidc.com ~]# fdisk -l Disk /dev/sda: bytes heads, sectors/tra ...
- Linux 磁盘介绍(磁盘、分区、MBR、GPT)
原文:https://www.linuxidc.com/Linux/2013-06/85717.htm 1. CHS(Cylinder-Head-Sector): was an early metho ...
- Linux 学习手记(6): 磁盘、分区、MBR与GPT
1. 磁盘在LINUX中的表示 Linux所有设备都被抽象为一个文件,保存在/dev目录下 设备名称一般为hd[a-z]或者sd[a-z]([a-z]为分区号),如:hda.hdb.sda.sdb I ...
- 磁盘,fdisk分区,MBR,dd命令
光盘和磁盘.u盘.软盘.硬盘有什么区别 ①光盘: cdrom/dvdrom:光驱(光盘驱动器) rom:只读 ram:可以擦写 cd:700M dvd:4G ②软盘:flopp ...
- Linux磁盘分区--MBR分区
今天心情不高兴,做IT不容易被公司重视,一定要速度学会运营,成为一个高逼格的技术男. 今天我要熟练掌握linux系统分区的能力.大家都知道,linux系统分区有两种分区格式:GTP和MBR. MBR作 ...
- Linux学习之CentOS(十二)------磁盘管理之 磁盘的分区、格式化、挂载(转)
磁盘分区.格式化.挂载磁盘分区 新增分区 查询分区 删除分区磁盘格式化 mkfs mke2fs磁盘挂载与卸载 mount umount 磁盘的分区.格式化.挂 ...
随机推荐
- Android中startService的使用及Service生命周期
Android中有两种主要方式使用Service,通过调用Context的startService方法或调用Context的bindService方法.本文仅仅探讨纯startService的使用.不 ...
- PowerDesigner P M F 的意思
M:表示强制非空:P:是否为主键:D:是否在模型中显示.gerenate:表示是否作为表生成
- Python网络编程 - 一个简单的客户端Get请求程序
import socket target_host = "www.baidu.com" target_port = 80 # create a socket object clie ...
- Ubuntu系统环境变量配置文件(转)
原文:http://www.cnblogs.com/eastson/archive/2012/06/15/2550151.html 在Ubuntu中有如下几个文件可以设置环境变量: /etc/prof ...
- listView.getChildAt(i)时java.lang.NullPointerException
BaseAdapter返回的是当前屏幕所能显示Item条数的组件,所以通过listView.getChildAt(i); 返回的是当前屏幕所能显示的组件.不能通过listView.getChildAt ...
- Statusbar
Main window The QtGui.QMainWindow class provides a main application window. This enables to create a ...
- Centering window on the screen
The following script shows how we can center a window on the desktop screen. #!/usr/bin/python # -*- ...
- TRIZ系列-创新原理-25-自服务原理
自服务原理的详细表述例如以下:1)物体在实施辅助和维修操作时.必须能自我服务:2)利用废弃的材料和能量: 自服务原理的第1)个比較好理解,假设一个系统在执行过程中须要进行辅助和维护操作时,最好不要借助 ...
- Tomcat之配置HTTPS
1. 在C:\Windows\System32\drivers\etc\hosts文件中新增一条项目web.demo.com,让Tomcat可以通过域名访问: 127.0.0.1 web.demo.c ...
- 二叉搜索树 C语言实现
1.二叉搜索树基本概念 二叉搜索树又称二叉排序树,它或者是一棵空树,或者是一棵具有如下特性的非空二叉树: (1)若它的左子树非空,则左子树上所有结点的关键字均小于根结点的关键字: (2)若它的右子树非 ...