CentOS 8 磁盘管理详解(含GPT分区)

    技术2022-07-11  97

    磁盘管理

    一、概述1、硬盘结构(1)数据结构(2)物理结构(3)存储容量 2、硬盘接口3、分区表示4、linux中的文件系统类型5、实验环境 二、添加新硬盘三、磁盘分区1、MBR分区(使用fdisk工具)2、GPT分区(使用parted工具) 四、格式化和挂载1、XFS文件系统2、SWAP交换分区1、概述2、格式化swap3、启用、禁用和查询swap4、永久挂载swap分区

    一、概述

    硬盘(Hard Disk Drive,简称HDD)是计算机常用的存储设备之一,本文将总体介绍它的基本知识,主要介绍在linux中怎么使用和管理它。

    1、硬盘结构

    (1)数据结构

    扇区:磁盘上的每个磁道被等分为若干个弧段,这些弧段便是硬盘的扇区,硬盘的第一个扇区,叫做引导扇区(sector)磁道:当磁盘旋转时,磁头若保持在一个位置上,则每个磁头都会在磁盘表面划出一个圆形轨迹,这些圆形轨迹就叫做磁道(Track)柱面:在有多个盘片构成的盘组中,由不同盘片的面,但出于同一半径圆的多个磁道组成的一个圆柱面(cylinder)

    (2)物理结构

    盘片:硬盘有多个盘片,每盘片2面磁头:每面一个磁头

    (3)存储容量

    硬盘存储容量=磁头数 x 磁道(柱面)数 x 每道扇区数 x 每扇区字节数1扇区=512字节

    2、硬盘接口

    ATA:Advanced Technology Attachment,并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被SATA所取代SATA:Serial ATA,串口硬盘,是未来和现在PC机硬盘的主流趋势,抗干扰能力强,支持热插拔等功能,速度快,纠错能力强SCSI:Small Computer System Interface,SCSI接口具有应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等优点,但较高的价格使得它很难如IDE硬盘般普及,因此SCSI硬盘主要应用于中、高端服务器和高档工作站中SAS:Serial Attached SCSI,即串行连接SCSI,是新一代的SCSI技术,和现在流行的SATA硬盘相同,都是采用串行技术以获得更高的传输速度,SAS是并行SCSI接口之后开发出的全新接口。此接口的设计是为了改善存储系统的效能、可用性和扩充性,并且提供与SATA硬盘的兼容性光纤通道:Fiber Channel,光纤通道硬盘是为提高多硬盘存储系统的速度和灵活性才开发的,它的出现大大提高了多硬盘系统的通信速度。光纤通道的主要特性有:热插拔性、高速带宽、远程连接、连接设备数量大等

    3、分区表示

    常见的硬盘可以划分为主分区和扩展分区,逻辑分区,主分区只有四个,扩展分区可以看做是特殊的主分区,在扩展分区的基础上创建逻辑分区,例如创建3个主分区,1个扩展分区,而1个扩展分区里又创建了2个逻辑分区,或者4个全部是主分区。 在linux系统中,linux内核读取光驱、硬盘等资源时均通过“设备文件”的形式进行 因此,将硬盘和分区分别表示为不同的文件,具体表述形式如下: 注意:主分区+扩展分区的范围是1-4,逻辑分区始终从5开始

    4、linux中的文件系统类型

    EXT4:第四代扩展文件系统,是linux系统中(7版本以前)默认的文件系统,属于日志型文件系统,特点是保存有磁盘存取记录的日志数据,便于恢复,在存取性能和稳定性方面更加出色XFS:一种高性能的日志文件系统,也是linux系统(7版本之后)默认的文件系统,特别擅长处理大文件,可支持上百万T字节的存储空间,可在短时间内进行数据恢复SWAP:交换文件系统,用于为linux系统建立交换分区,相当于虚拟内存,简而言之就是在硬盘上划分一部分容量作为内存来使用,能够在一定程度上缓解物理内存不足的问题,一般建议交换分区的大小设置为物理内存的1.5-2倍。

    5、实验环境

    虚拟机系统:CentOS Linux release 8.0.1905 (Core)

    二、添加新硬盘

    因为要用两种方式给硬盘分区,所以为虚拟机添加两块硬盘,100G和2T大小 添加之后需要重启系统,重启之后登陆系统用fdisk -l命令可以看到新硬盘的信息,用lsblk命令也可以查看

    fdisk:磁盘及分区管理工具,大多数linux系统自带的工具 要对哪块硬盘进行分区或者管理就使用fdisk后面跟设备名称,如fdisk /dev/sdc 如果不知道怎么用fdisk工具可以借助帮助

    三、磁盘分区

    1、MBR分区(使用fdisk工具)

    一般小于2T的硬盘我们都可以用fdisk来分区就可以了,给sdc创建一个主分区sdc1,分配的大小是50G fdisk /dev/sdc n:新建一个分区 w:保存分区并退出 p:打印分区表信息 分区类型e:扩展分区 ID=82 swap分区 分区类型l:逻辑分区 F:查看未分配的空间 q:直接退出不保存 l:列出所有分区类型 t:改变分区类型

    2、GPT分区(使用parted工具)

    什么是GPT:与支持最大卷为 2 TB (terabytes) 并且每个磁盘最多有 4 个主分区(或 3 个主分区,1 个扩展分区和无限制的逻辑驱动器)的主启动记录 (MBR) 磁盘分区的样式相比,GUID 分区表 (GPT) 磁盘分区样式支持最大卷为 18 EB (exabytes) 并且每磁盘最多有 128 个分区。与 MBR 分区的磁盘不同,至关重要的平台操作数据位于分区,而不是位于非分区或隐藏扇区。另外,GPT 分区磁盘有多余的主要及备份分区表来提高分区数据结构的完整性。

    我们新加的第二块硬盘是2TB的,需要用GPT分区方式,即使用parted工具 parted /dev/sdb mklabel gpt:创建gpt分区表 mkpart primary 0 1T #mkpart 后面跟名称,随便取,0 1T表示需要指定从多少开始多少结束 mkpart second 1T 1.5T rm 2:删除分区2

    print:打印分区表

    q:保存退出

    四、格式化和挂载

    1、XFS文件系统

    因为在CentOS 7之后的linux系统默认使用的是xfs系统,所以这里以xfs系统为例格式化分区,当然也可以格式化成你需要的文件系统类型,用mkfs.两下tab可以快速看到系统所支持的文件系统类型 mkfs.xfs /dev/sdc1 mkfs -t xfs /dev/sdc1 blkid命令可以查看分区的UUID和文件系统类型,后跟具体分区,如果没有跟参数,默认会列出系统中所有设备的UUID和文件系统类型

    格式化后必须要挂载分区,新的分区才能被应用到系统使用,用mount命令挂载分区 mount /dev/sdc1 /opt 如果要永久挂载,随系统启动,请写进/etc/fstab文件里,/dev/sdc1也可以用UUID来代替,UUID每个设备唯一的,比设备名称稳定 /etc/fstab文件解读:

    第一列:设备名称或者UUID第二列:挂载点第三列:文件系统(xfs,ext4,iso9660等)第四列:默认defaults第五列:是否做dump备份,0不备份,1每天备份,2不定期备份第六列:开机时是否检查扇区,0不检查,1最早检查(一般是根目录),2在1检查完之后检查

    注:GPT的硬盘分区格式化和挂载的方式同MBR硬盘分区

    2、SWAP交换分区

    1、概述

    当内存不足时,内核会杀死一些进程,为了避免出现OOM,一般有两种方法: 1、提升内存容量 2、把硬盘容量拿来当内存使用,就是虚拟内存,当没有办法提升实际内存容量的时候,就需要用到第二种方法,也就是交换分区了

    2、格式化swap

    这里用了一块之前已经分好的硬盘分区来做swap,也可以添加一块新硬盘创建新的分区作为swap,看具体需求,sdc5是逻辑分区,使用mkswap命令格式化分区为swap mkswap /dev/sdc5 格式化好了之后用blkid查看一下

    3、启用、禁用和查询swap

    如果要使用swap必须要先开启swap,应用之前先看一下系统现有的swap空间大小,可以使用free -m命令(-m表示单位为M) free -m:查看内存使用情况swapon -s查看所有swap分区,现在系统只有一个默认的swap分区sda2(装系统时装的) 用swapon命令后面跟具体的设备名称来启用swap分区 swapon /dev/sdc5 除了free -m可以查看swap以外,也可以查看/proc/meminfo这个文件里面也会实时记录系统的内存的使用量 cat /proc/meminfo | grep “SwapTotal”

    4、永久挂载swap分区

    如果要让swap永久挂载,也是写在/etc/fstab文件里,这里用的是UUID 注:挂载的swap分区使用df -Th是查看不到的,必须要用查看内存的命令才可以看到

    总结:磁盘管理这一块操作CentOS 8基本上等同于CentOS 7的版本

    Processed: 0.010, SQL: 9