1.磁盘基础

linux磁盘管理 与文件系统_柱面

1.1磁盘结构

1)物理结构

盘片:硬盘有多个盘片,每盘片2面

磁头:每面一个磁头

2)数据结构


扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据,硬盘的最小存储单位

磁道:同一盘片不同半径的同心圆,是由磁头在盘片表面划出的圆形轨迹

柱面:不同盘片相同半径构成的圆柱面,由同一半径圆的多个磁道组成

可以用柱面、磁头、扇区来唯一定位磁盘上每一个区域


3)硬盘存储容量

容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数(512字节)


4)磁盘接口类型

IDE:并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被 SATA 所取代。

SATA:抗干扰性强,支持热插拔等功能,速度快,纠错能力强。

SCSI:小型机系统接口,SCSI硬盘广为工作站级个人电脑以及服务器所使用,资料传输时CPU占用率较低,转速快,支持热插拔等。

SAS:是新一代的SCSI技术,和SATA硬盘相同,都是采取序列式技术以获得更高的传输速度,可达到 6Gb/s。

光纤通道:光纤通道磁盘大大提高了多磁盘系统的通信速度。热插拔、高度宽带、远程连接、连接设备数量大是光纤通道·特性。


1.2磁盘分区表示

1)主引导区域(MBR:Master Boot Record)

  • MBR位于硬盘第一个物理扇区处
  • MBR中包含硬盘的主引导程序和硬盘分区表
  • MBR总共512字节,前466字节是主引导记录,分区表保存在MBR扇区中的第477-510字节中
  • 分区表有4个分区记录区,每个分区记录区占16个字节
  • Linux中将硬盘、分区等设备均表示为文件

(MBR由三个部分组成,主引导记录BootLoader、硬盘分区表DPT和硬盘有效标志。

在总共512字节的主引导扇区里

第一部分是BootLoader,占446个字节,它负责从活动分区中装载并运行系统引导程序;

第二部分是Partition table区(DPT分区表),占64个字节;

第三部分是Magic number,占2个字节。)

 ​ /dev/sda5中的sda5

  sd 表示SCSI设备(常用) hd 表示IDE设备

  硬盘的顺序号,以字母a、b、c……表示​​

  分区的顺序号,以数字1、2、3……表示。主分区从1-4,第一个逻辑分区始终从5开始。

​2)磁盘分区结构


硬盘中的主分区数目只有4个


主分区和扩展分区的序号限制在1~4


扩展分区再分为逻辑分区


逻辑分区的序号将始终从5开始


主启动记录(MBR)磁盘分区支持最大卷为2.2TB,大于2.2T会用到patede;每个磁盘最多有4个主分区,或3个主分区、1个扩展分区和在扩展分区里面分多个逻辑分区)。

linux磁盘管理 与文件系统_字段_02


2.文件系统

2.1 文件系统类型

XFS文件系统

存放文件和目录数据的分区

高性能的日志型文件系统,特别擅长于处理大文件,可支持上百万TB的存储空间。

CentOS 7系统中默认使用的文件系统

SWAP——交换文件系统

为Linux系统建立交换分区

一般设置为物理内存的1.5~2倍

Linux支持的其他文件系统类型

EXT4、FAT32、NTFS、 LVM

3. 管理磁盘及分区

3.1检测并确认新磁盘

命令:fdisk 【选项】装置名称

选项:-l

输出后面接的装置所有的 partition 内容。若仅有 fdisk -l 时,则系统将会把整个系统内能够搜索到的装置的 partition 均列出来

linux磁盘管理 与文件系统_linux_03


​7个字段

Device(设备):分区的设备文件名称。

Boot:是否是引导分区。若是,则有“*”标识。

Start:该分区在硬盘中的起始位置(柱面数)。

End:该分区在硬盘中的结束位置(柱面数)。

Blocks:分区的大小,以 Blocks(块)为单位,默认的块大小为 1024 字节。

Id:分区对应的系统 ID 号。例如,83表示Linux中的XFS分区或EXT4分区、8e表示LVM逻辑卷。

System:分区类型。

3.2管理磁盘分区

​fdisk /dev/sdb


交互模式中的常用指令:

m:获取帮助菜单

n:新建分区

p:查看分区情况

d:删除分区

t:变更分区的类型

w:保存分区操作并退出

q:不保存分区操作并退出


创建分区步骤

n

--> p 主分区、e 扩展分区、l 逻辑分区

 --> 设置分区:1  (范围1-4,如按 Enter 键接受默认值)

  --> 设置柱面序列:直接按 Enter 键接受默认值

   --> 设置分区大小:+20G  (指定大小为 20GB,如按 Enter 键接受默认值表示所有空间)

    --w


变更硬盘(特别是正在使用的硬盘)的分区设置以后,建议最好将系统重启一次,或者执行

“partprobe”命令使操作系统检测新的分区表情况。以防格式化分区时损坏硬盘中已有的数据。

                           partprobe /dev/sdb

linux磁盘管理 与文件系统_柱面_04

4.创建文件系统

4.1创建文件系统(格式化):mkfs

Make Filesystem ,创建文件系统(格式化)

mkfs -t 文件系统类型 分区设备   mkfs -t xfs /dev/sdb1

mkfs.(分区类型) 分区设备      mkfs.xfs /dev/sdb1

linux磁盘管理 与文件系统_字段_05


4.2创建交换文件系统swap

创建swap之前,目标分区应先通过fdisk 工具将分区类型ID 号设为 82

fdisk /dev/sdb

-->t

-->5

 -->82


mkswap /dev/sdb5

swapon /dev/sdb5          启用新增加的交换分区

swapoff /dev/sdb5          停用指定的交换分区

swapon -s             查看每个分区的swap状态信息

free -m             查看总的swap状态信息

linux磁盘管理 与文件系统_linux_06


linux磁盘管理 与文件系统_linux_07


4.3挂载、卸载文件系统——mount、umount

挂载文件系统、ISO镜像到指定文件夹

mount  [-t 类型]  存储设备  挂载点目录

mount  -o loop  ISO镜像文件  挂载点目录

-t:用于指定文件系统类型,通常可以省略,由系统自动识别

-o:挂载参数列表,以英文逗号分隔;如用来描述特殊设备,用loop指定


卸载已挂载的文件系统

卸载前提:挂载的设备或者目录没有被在使用中,要先退出挂载目录

umount [-lf] 存储设备目录或者挂载点目录


-lf:强制卸载


查看磁盘使用情况

1.直接 mount 命令


2. df [选项]

-h:显示分区的容量单位

-T:显示文件系统的类型

-i:显示分区的inode号码数量


查看设备的UUID和文件系统类型

blkid [设备]

4.4设置文件系统的自动挂载

设置文件系统的自动挂载

Linux 操作系统在每次开机时,会自动读取/etc/fstab文件的内容,自动挂载所指定的文件系统。

vim /etc/fstab

/dev/sdb1 /opt xfs defaults 0 0

/dev/sr0 /mnt iso9660 defaults 0 0


第1字段:设备名或设备卷标名。(分区)

第2字段:文件系统的挂载点目录的位置。(挂载点)

第3字段:文件系统类型,如 xfs、swap 等。(文件系统类型)

第4字段:挂载参数,即mount命令“-o”选项后可使用的参数。例如,defaults(默认参数)、rw(可读写)、ro(只读)、noexec(禁用执行程序)。(挂载参数)

第5字段:表示文件系统是否需要 dump 备份(dump 是一个备份工具)。一般设为1时表示需要,设为0时将被dump 忽略。(备份)

第6字段:该数字决定在系统启动时进行磁盘检查的顺序。0表示不进行检查,1表示优先检查,2表示其次检查。根分区应设为 1,其他分区设为 2。(磁盘检查顺序)


输入后正确的格式,wq后重启,写入的两个挂载,会在重启时自动挂载。