深入了解磁盘结构

一、     linux中常见的磁盘:

  无论什么操作系统,归根还是要落实与磁盘上的,对于磁盘的管理也是linux管理必备的一项技能。在linux中“一切皆文件”的思想贯彻整个linux的学习中,包括像是磁盘等的硬件也是在linux的/dev/目录下类似于文件形式的存放,常见的SATA口USB优盘或是SCSI口的硬盘在linux中是以/dev/sd[a-p]开头的文件,早期的IDE硬盘现在已经很少见了,这种硬盘在linux中是以/dev/hd[a-d],CDROM是以/dev/cdrom开头的文件,磁带机/dev/st0(SCSI口的),/dev/ht0(IDE口)。每一种设备都有特定的主设备号和次设备号,主设备号用来标识设备类型,次设备号标识同一类型设备的不同设备。

  不同类型的接口的设备速度也是有很大差别的,像是并口的IDE的接口理论值为133MB/s,SCSI硬盘速度为640MB/s 。串口的SATA和SAS口的硬盘速度都是6Gbps,在转化为同一单位的情况下后者的速度还是远远优于前者。串口的USB速度也能达到480MB/s

二、     磁盘结构与术语:

  硬盘的物理结构一般由磁头与盘片、电动机、主控芯片与排线等部件组成;当主电动机带动盘片旋转时,副电动机带动一组( 磁头)到相对应的盘片上并确定读取正面还是反面的碟面,磁头悬浮在碟面上画出一个与盘片同心的圆形轨道( 磁轨或称 柱面),这时由磁头的磁感线圈感应碟面上的磁性与使用硬盘厂商指定的读取时间或数据间隔定位 扇区,从而得到该扇区的数据内容; 深入了解磁盘结构深入了解磁盘结构

磁头(head):对磁盘的数据进行读写

磁道(track):当磁盘旋转时,磁头若保持在一个位置上,则每个磁头都会在磁盘表面划出一个圆形轨迹,这些圆形轨迹就叫做磁道。 磁盘上的磁道是一组记录密度不同的同心圆

扇区(sector):磁盘上的每个磁道被等分为若干个弧段,这些弧段便是硬盘的扇区。硬盘的第一个扇区,叫做引导扇区。 一个扇区的大小为512个字节。

柱面(cylinder):在有多个盘片构成的盘组中,由不同盘片的面,但处于同一半径圆的多个磁道组成的一个圆柱面。

三、     分区类型:

1.      磁盘分区的优点:

    (1) 优化I/O性能

    (2)实现磁盘的空间配额限制

    (3)提高修复速度

    (4)隔离系统和程序

    (5)分区可以安装多个OS

2.      两种分区方式:MBR和GPT

MBR:(master  boot recorder )传统的分区都是以MBA的方式分区的使用32位作为扇区数,分区大小不差过2T,分区是按照柱面来分区(CHS:cylinder,head,sector),在MBR中有LBA地址用来和CHS转换,LBA地址是统一的逻辑区块地址作为寻址方式,这种寻址模式取代了原先 操作系统必须面对存储设备硬件构造的方式。在硬盘上的0磁道0扇区共512个字节存放MBR硬盘分区分区表和主引导程序,其中前446个字节存放引导程序,64个字节存放4个大小为16个字节的分区表,最后还有两个字节(0x55AA)是分区结束标志。

3.bmp

(可以通过十六进制查看器查看,先通过dd命令将硬盘的前512个字节备份成一个二进制文件,在通过hexdump 查看)

[root@centos7 ~]# dd if=/dev/sdc  of=sdc  count=512  bs=1
512+0 records in
512+0 records out
512 bytes (512 B) copied, 0.00509351 s, 101 kB/s
[root@centos7 ~]# hexdump -C sdc
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000001b0  00 00 00 00 00 00 00 00  91 83 ce 77 00 00 00 20  |...........w... |
000001c0  21 00 83 9d 11 4c 00 08  00 00 00 c0 12 00 00 9d  |!....L..........|
000001d0  12 4c 83 db 29 72 00 c8  12 00 00 60 09 00 00 00  |.L..)r.....`....|
000001e0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
000001f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 55 aa  |..............U.|
00000200
[root@centos7 ~]# dd if=sdc_head  of=/dev/sdc bs=1 count=64 skip=446 seek=446    //skip表示源文件跳过多少开始复制,seek表示目标跳过多少开始
64+0 records in
64+0 records out
64 bytes (64 B) copied, 0.0170671 s, 3.7 kB/s

    注释:其中4个分区最多可以建立4个主分区,或者3个主分区加一个扩展分区,主分区结构如上,第一个字节表示此分区是否处于活动分区状态,80表示活动,00表
示非活动,活动分区可以用来存放操作系统。第二个字节表示磁头号,第3和4字节存放扇区号第5个字节表示分区类型,0表示分区未使用。5,6,7字节表示
分区结束的磁头号,扇区和柱面号。后面的八个字节用来存放LBA地址,用来做CHS和LBA地址转化用的。

  扩展分区中存放着逻辑分区的地址,在逻辑分区的第一个扇区也是存放着EBR表,结构与MBR类似,只不过前面的446字节都空着,存放64字节的表中第一个表项的16个字节指向本个逻辑分区,下一个16个字节的表项中存放指向下一个扩展分区的EBR,接下来便是两个空白的表项和类似于MBR的结束标志0x55AA。

3.      GPT分区:

  GPT分区是新一代的分区方式,可支持多分区(最多128个分区)和大分区(磁盘块大小为512字节时可支持8Z,4096字节的块大小时可以达到64Z。注Z的数量级为270­)。GPT使用128位的UUID作为磁盘和分区的同一唯一标识符,并且在GPT分区表自动备份在头尾两部分,并伴有CRC校验位,在GPT分区的首部有一个伪MBR,用于向下兼容MBR,因为MBR是不能理解GPT分区的,在GPT分区首部放置一个伪MBR首部可以防止MBR认为当前磁盘没有分区,而将GPT分区覆盖。

4.bmp

原创文章,作者:jack_cui,如若转载,请注明出处:http://www.178linux.com/41275

(4)
jack_cuijack_cui
上一篇 2016-08-29
下一篇 2016-08-29

相关推荐

  • Linux文本处理工具

    知识框架图 学习笔记 查看文本 查看文本内容 cat -A:显示控制符 -E:显示行结束符$ -n:打印行号,显示空行 -b:打印行号,空行不编号 -s:压缩连续空白行 tac:反向查看文件内容 rev:文本每行倒序显示 分页查看 more less 查看文件头尾内容 head -c:前n个字节 -n:前n行 tail -c -n -f:跟踪显示文件变化,常…

    2018-03-17
  • RAID磁盘列阵

                            RAID   RAID是英文Redundant Array o…

    Linux干货 2016-09-07
  • 文本处理工具

    一、文本处理工具的分类:     查看全部内容:more、less、cat、tac、rev     截取文件内容:head 、tail     抽取文件内容:cut     抽取关键字:grep、eg…

    Linux干货 2016-08-08
  • Find小总结及应用

    Find总结及应用 搜索命令:     locate命令:         在文件系统上查找符合条件的文件         非实时查找( 数据库查找)…

    Linux干货 2016-08-16
  • 由tty命令产生的好玩的想法

    昨天看了马哥Linux视频的前两天内容,里面讲了到终端的概念,回顾一下:  物理终端:是直接接入本机的显示器和键盘设备。/dev/console  虚拟终端:附加在物理终端之上的以软件方式虚拟实现的终端,CentOS 6默认启动6个虚拟终端 Ctrl+Alt+F#: [1,6] 图形终端:附加在物理终端之上的以软件方式…

    Linux干货 2016-05-16
  • Linux下各类颜色文件的意思

    Linux下各类颜色文件的意思   Linux系统对在终端下的各文件进行了颜色区分,了解各个颜色文件对应的意思对是学习Linux必须要掌握的。Linux文件颜色如下图: 1、白色:表示普通文件(-) 2、蓝色:表示目录(d) 3、绿色:表示可执行文件(-) 4、红色:表示压缩文件(-) 5、浅蓝色:链接文件(l) 6、黄色:表示设备文件(c) 7、…

    Linux干货 2016-10-18