磁盘分区(一)

整理自《鸟哥的Linux私房菜》,整理者:华科小涛http://www.cnblogs.com/hust-ghtao/

我们都知道一块磁盘是可以被分成多个分区(partition)的,以Windows观点来看,你可能会有一块磁盘并且将它分区成C,D,E盘。那个C,D,E就是分区。但是Linux的设备都是以文件形式存在,那么分区的文件名又是什么?如何进行磁盘分区,磁盘分区有哪些限制?

1. 磁盘的连接方式与设备文件名的关系

个人计算机常见的磁盘接口有两种,分别是IDE接口和SATA接口,目前主流的已经是SATA接口了。我们称可连接到IDE接口的设备成为IDE设备,不管是磁盘还是光盘。

以IDE接口来说,主机会提供两个IDE接口,每个接口连接两个设备,所以最多可以连接到4个设备。每个接口的IDE设备又有Master和Slave之分。4个设备的文件名如表所示。

再以SATA接口来说,由于SATA/USB/SCSIA等磁盘接口都是使用SCSI模块来驱动的,因此这些接口的磁盘设备文件名都是使用SCSI模块来驱动的,因此这些接口的磁盘设备文件名都是/dev/sd[a-p]的格式。但是与IDE接口不同的是,SATA/USB接口的磁盘设备文件名根本就没有一定的顺序,顺序是由Linux内核检测到磁盘的顺序决定的。

2. 磁盘的组成

  1. 磁盘的组成主要有:
  2. #圆形的盘片(主要记录数据的部分);
  3. #机械手臂与机械手臂上的磁头(可读写盘片上的数据);
  4. #主轴马达,可以转动盘片,让机械手臂的磁头在盘片上读写数据。
  5. 而盘片的组成:
  6. $扇区为最小的物理存储单位,每个扇区512B;
  7. $将扇区组成一个园,那就是柱面,柱面是分区的最小单位;
  8. $第一个扇区最重要,有硬盘主引导记录MBR和分区表,其中MBR446B,分区表64B。
  9. 各种接口的磁盘在Linux中的文件名分别是:
  10. (1)/dev/sd[a-p][1-15]:表示SCSI,SATA,USB,Flash等接口的磁盘文件名。
  11. (2)/dev/hd[a-d][1-63]:为IDE接口的磁盘文件名。

3.磁盘分区表

那磁盘是怎么分区的呢,总不能拿锯子来割吧!柱面是文件系统的最小单位,也是分区的最小单位,我们就利用参考柱面号码的方式来进行分区。其实分区的本质就是:在分区表设置每个区的起始柱面和结束柱面号码。

在分区表所在的64B容量中,总共分为4组记录区,每个记录区记录了对应分区的起始柱面和结束柱面的号码。若将硬盘以长条形式来看,然后将柱面以柱形图来看,那么64B的记录区段如图所示:

假设上面的硬盘设备文件名为/dev/hda时,那么这4个分区在Linux系统中的设备文件名如下所示,文件名后面会再接一个数字,这个数字与分区的位置有关。

  • P1:/dev/hda1
  • P2:/dev/hda2
  • P3:/dev/hda3
  • p4:/dev/hda4

由于分区表只有64B,最多只能容纳4个分区,这4个分区被称为主分区或扩展分区。

总结一下:

  1. (1)其实所谓的分区,只是针对那64B的分区表进行设置而已。
  2. (2)硬盘的默认分区表仅能写入4组分区信息。
  3. (3)这4组分区信息我们称为主或扩展分区。
  4. (4)分区的最小单位是柱面。
  5. (5)当系统要写入磁盘时,一定要参考磁盘分区表,才能针对某个分区进行数据的处理。

上面我们介绍了分区的基本知识,让我们回头想下,为什么要分区?

  1. (1)数据的安全性。不同分区使不同类型的数据隔离,既保证数据安全也便于管理。
  2. (2)系统的性能。由于分区将数据集中在某个柱面的区段,由于数据集中了将有助于数据读取的速度与性能。

时间: 2024-10-13 10:19:35

磁盘分区(一)的相关文章

Linux 磁盘分区

system call  系统调用,对硬件进行交互 mkdir进程 ->系统调用-->内核---->硬件 进程们称为用户模式,运行的空间用户空间,所有进程都运行在用户空间,因为他们没有特权 内核运行的位置称为内核 模式或者内核空间 用户的进程是运行在ring3  ,内核是运行在ring0上,ring3和ring0互相信号交互 任何程序在编程的时候,就利用了硬件芯片的功能 一个操作系统的文件系统,是管理磁盘分区的文件存储方式的,元数据在什么地方,数据存在什么地方,这些都是文件系统来管理,所

MBR与GPT分区的区别及磁盘分区相关命令

一.MBR分区结构 主引导记录(Master Boot Record,缩写:MBR),又叫做主引导扇区,是目前比较流行的一种分区结构.磁盘的0磁道0扇区称为MBR,它的大小是512字节,这个区域被分为三个部分: 第一部分为boot loader(主引导程序),占446字节: 第二部分为Partition table(分区表),即DPT,占64字节,每个分区项占用16个字节,这16个字节中存有活动状态标志.文件系统标识.起止柱面号.磁头号.扇区号.隐含扇区数目(4个字节).分区总扇区数目(4个字节

磁盘分区和文件系统格式化

文件系统相关概念: 文件系统示意图: block(块):文件系统的基本存储单元,格式化时决定块大小,大小可以是有1024,2048,4096字节 superblock(超级块):保存整个分区中的全局信息(有多少块组,每个块组有多少块,空闲inode,块大小等,至关重要,允许备份超级块) block group(块组):相当于分区下面的子分区,方便在大分区上快速查找可用空间,大小取决于块大小 GDT:块组描述表,当前分区上每一个块组的块组名,每一个块组的边界信息(从哪个块起始和到哪个块结束) bl

磁盘分区详解

磁盘分区C盘为30G主分区,D盘100G逻辑分区,E:100G主分区 F盘270G主分区 这样的划分硬盘稳定吗 有什么影响? 没有什么影响,都可以使用,如果需要安装双启动系统,就需要多个主分区 1. 一个硬盘主分区至少有1个,最多4个,扩展分区可以没有,最多1个.且主分区+扩展分区总共不能超过4个.逻辑分区可以有若干个. 2. 分出主分区后,其余的部分可以分成扩展分区,一般是剩下的部分全部分成扩展分区,也可以不全分,剩下的部分就浪费了. 3. 扩展分区不能直接使用,必须分成若干逻辑分区.所有的逻

linux CentOS7 磁盘分区fdisk 、df 、du、parted 命令实例

一. df命令 分区查看工具: 1. df [[email protected]_46_188_centos ~]$ df Filesystem     1K-blocks    Used Available Use% Mounted on /dev/vda1       20510332 4844740  14617076  25% / devtmpfs          499348       0    499348   0% /dev tmpfs             508452  

磁盘分区挂载步骤

挂载磁盘的步骤 分区--->格式化--->挂载 fdisk -l               #查看硬盘 fdisk /dev/vdb         #为/dev/vdb硬盘分区 输入下列字母的意义 m                      #查看帮助 p                      #列出当前磁盘的分区情况 n                      #建立新的磁盘分区 e extended          #扩展分区 p primary           #主分区

磁盘分区脚本

AWS上的linux云主机如果是用自己创建的镜像文件安装的,默认是没有创建swap分区,并且数据盘也没有挂载的.需要手动分区并挂载 下面是用来分区的脚本. 执行此脚本会创建两个分区,一个swap分区 另一个是数据盘分区,挂载到/data目录下 #!/bin/bash #2016-11-10 #Author disk=$1 swap=$2 dir_path=/data if [ $# -ne 2 ];then     echo "Usage:$0 Disk SwapSize" else

如果以命令的方式进行磁盘分区(上)

在linux中,我们常常会因为工作需要添加新的硬盘.硬盘可不是说加了一块就可以立即存储数据,而是要进行分区处理,下面介绍一下分区中的两种方式: MBR分区和GPT分区: 先给大家介绍一下两者的区别: MBR分区: 1.最多只有4个主分区 2.每个分区最大只有2TB的存储空间 GPT分区: 1.分区个数几乎没有限制 2.每个分区的存储空间几乎没有限制 到这里大家一定会说那一定是GPT分区好,这个嘛!仁者见仁吧!下面分别给大家演示一下这两种分区命令: MBR分区: 假设我们已经添加了块硬盘sdb,首

磁盘分区、格式化、挂载[转自vbird]

磁盘分区.格式化.挂载磁盘分区    新增分区    查询分区    删除分区磁盘格式化    mkfs    mke2fs磁盘挂载与卸载    mount    umount 磁盘的分区.格式化.挂载 对于一个系统管理者( root )而言,磁盘的的管理是相当重要的一环,尤其近来硬盘已经渐渐的被当成是消耗品了 ..... 如果我们想要在系统里面新增一颗硬盘时,应该有哪些动作需要做的呢: 对磁盘进行分区,以创建可用的 partition : 对该 partition 进行格式化( format

使用U盘安装Centos 6.5操作系统,磁盘分区过程中出现,"sda必须有一个gpt磁盘标签"

解决办法:在安装界面中按 "ctrl+alt+f2"符进入字界面 进行如下操作: 输入parted输入mklabel gpt /dev/sda在提示界面中,输入yes使用print /dev/sda 进行确认reboot 重新启动系统之后,再次进行磁盘分区.