Linux中的磁盘管理

Linux中磁盘管理的学习主要分为3个部分:

  • 分区
  • 格式化
  • 挂载

    一、磁盘结构

    硬盘是计算机常用的存储设备之一,本章将介绍硬盘的基本知识。

    硬盘的物流结构

    • 盘片:磁盘有多个盘片,每盘片2面
    • 磁头:每面一个磁头
    • 硬盘的数据结构

      硬盘的数据结构

    • 扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据
    • 磁道:同一盘片不同半径的同心圆
    • 柱面:不同盘片相同半径构成的圆柱面
      Linux中的磁盘管理
      Linux中的磁盘管理
      Linux中的磁盘管理
      Linux中的磁盘管理

      硬盘存储容量

  • 硬盘存储容量=磁头数x磁道(柱面)数x每道扇区数x每扇区字节数
    例如:磁盘是一个 3个圆盘6个磁头,7个柱面(每个盘片7个磁道) 的磁盘,图3中每条磁道有12个扇区,所以此磁盘的容量为:
    存储容量 6 7 12 * 512 = 258048
    每个磁道的扇区数一样是说的老的硬盘,外圈的密度小,内圈的密度大,每圈可存储的数据量是一样的。新的硬盘数据的密度都一致,这样磁道的周长越长,扇区就越多,存储的数据量就越大。
  • 可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域,用fdisl-l查看分区信息:
    Linux中的磁盘管理

    磁盘接口类型

  • IDE 并口
  • SATA 串口
  • SCSI 小型机系统接口

    磁盘分区表示

  • 主引导记录(MBR:MAster Boot Record)
    • MBR位于硬盘第一个物理扇区处
    • MBR中包含硬盘的主引导程序和硬盘分区表
    • 分区表有4个分区记录区,每个分区记录区占16字节
  • Linux中将硬盘、分区等设备均表示文件
    Linux中的磁盘管理
    Hd:IDE接口
    SD:SCSI接口
    a代表第一块硬盘
    5:逻辑分区

    磁盘分区结构

  • 硬盘中的主分区数目只有4个
  • 因此主分区和扩展分区的序号也就限制在1~4
  • 扩展分区再分为逻辑分区
  • 逻辑分区的序号将始终从5开始
    Linux中的磁盘管理

    二、文件系统类型

  • XFS文件系统
    • 存放文件和目录数据分区
    • 高性能的日志型文件系统
    • CentOS7系统中默认使用的文件系统
  • SWAP,交换文件系统
    • 为Linux系统建立交换分区
  • Linux支持的其他文件系统类型
    • FAT16、FAT32、NTFS
    • EXT4、JFS

      三、检测并确认新硬盘

  • fdisk命令
    • 查看或管理磁盘分区
      fdisl-l [磁盘设备] 或 fdisk [磁盘设备]
  • 交互模式中的常用命令
    • m、p、n、d、t、w、q
  • m表示帮助信息
  • p表示显示分区列表

    Linux中的磁盘管理

  • n表示创建分区,如创建两个主分区

    Linux中的磁盘管理
    按照类似的操作步骤继续创建第二个主分区(/dev/sdb2),容量也指定为 20GB,完成 后可以输入“p”指令查看分区情况,具体操作如下:
    Linux中的磁盘管理

    创建一个扩展分区和两个逻辑分区,使用剩余的硬盘空间可以创建扩展分区,然后在扩展分区中创建逻辑分区。需要注意的 是,若主分区、逻辑分区均已创建完毕(四个主分区号已用完),则再次输入“n”指令后将 不再提示选择分区类别。 首先使用剩下的所有空间建立扩展分区(/dev/sdb4)(全部空间分配完毕后,将无法再 建立新的主分区),具体操作如下:

    Linux中的磁盘管理
    接下来在扩展分区中建立第一个逻辑分区(/dev/sdb5),容量指定为 2GB,具体操作如 下:
    Linux中的磁盘管理
    然后按照类似的操作步骤继续创建第二个逻辑分区(/dev/sdb6),容量指定为 10GB,完成后可以再次输入“p”指令查看分区情况,具体操作如下:
    Linux中的磁盘管理

  • d表示删除分区

    Linux中的磁盘管理

  • t表示转换分区类型 通过ID转换

    最常用的 XFS、Swap 文件系统对应的 ID 号分别为 83、82,而用于 Windows 中的 NTFS 文件系统对应的 ID 号一般 为 86。执行下面的操作可以将逻辑分区“dev/sdb5”的类型更改为 Swap,通过“p”指令可以 确认分区/dev/sdb5 的分区 ID 已由默认的 83 变为 82。如图:
    Linux中的磁盘管理

  • w表示保存修改

    Linux中的磁盘管理

  • q表示退出

    三、创建文件系统

  • mfks命令

    • Make Filesystem,创建文件系统(格式化)
    • mkfs -t 文件系统类型 分区设备
      执行如下“/s/sbin/mkfs*”命令,可以查看当前操作系统 内与 mkfs 命令相关的工具程序。
      Linux中的磁盘管理
      创建 XFS 文件系统 当需要创建 XFS 文件系统时,只需结合“-t xfs”选项指定类型,并指定要被格式化的 分区设备即可。例如,执行以下操作将把分区/dev/sdb1 格式化为 XFS 文件系统。
      Linux中的磁盘管理
  • mkswap命令
    • make swap,创建交换文件系统
    • mkswap 分区设备
    • swapon 添加
    • swapoff 卸载
      对于新增加的交换分区,需要使用 swapon 命令进行启用,反之使用 swapoff 命令停用 指定的交换分区。例如,以下操作分别展示了启用、停用交换分区/dev/sdb5 的过程,以及 总交换空间的变化情况。
      Linux中的磁盘管理

      挂载、卸载系统文件

  • mount命令
    • 挂载文件系统、ISO镜像到指定文件
    • mount [-t 类型] 存储设备 挂载点目录
    • mount -o loop ISO镜像文件 挂载点目录
      Linux中的磁盘管理
      其中,文件系统类型通常可以省略(由系统自动识别),存储设备即对应分区的设备文 件名(如/dev/sdb1、/dev/cdrom)或网络资源路径,挂载点即用户指定用于挂载的目录。 例如,以下操作用于将光盘设备挂载到/media/cdrom 目录。
      Linux中的磁盘管理
  • umount命令
    • 卸载已挂载的文件系统
    • umount 存储设备位置
    • umount 挂载点目录
      Linux中的磁盘管理

      设置文件系统的自动挂载

  • /etc/fsdtab配置文件
    • 包含需要开机后自动挂载的文件系统记录
      [root@localhost ~]# vi /etc/fstab
      ......//省略部分内容
      /dev/sdb1 /mailbox xfs defaults 0 0
      设备名称 挂载点 文件系统类型 功能权限 是否容灾备份 启动序列检查 0,1,2