九、磁盘管理

磁盘管理

一、基础概念

  1. 挂载点

    挂载点是一个目录,用于将磁盘分区或存储设备连接到 Linux 文件系统中。磁盘分区只有挂载到挂载点后,才能被系统访问和使用。例如,将/dev/sdb1分区挂载到/mnt/data目录,那么访问/mnt/data目录时,实际访问的就是/dev/sdb1分区里的内容。

    挂载

    • 手动挂载–临时挂载:mount 设备 挂载点

    • 永久挂载—必须把挂载信息写入到/etc/fstab文件中。

      注意:该文件中的挂载信息不能写错,一旦写错,系统重启后将无法
      正常进入操作系统。
      /etc/fstab文件中每个字段的意思如下:
      第1字段:设备名或者是设备的UUID(建议使用UUID)
      第2字段:挂载点(如果设备为交换分区时,此处应写为swap)
      第3字段:文件系统类型,如xfs、ext4、swap等
      第4字段:挂载参数,即mount -o 选项后可以使用的参数。
      如:defaults(默认参数)、rw(可写)、ro(只读)、noexec(禁用执行程序)
      第5字段:表示文件系统是否需要dump备份。(dump是一个备份工具),1为需要备份,
      0为不需要备份,即被dump所忽略。
      第6字段:该数字用户决定系统在启动时是否使用fsck命令,以进行磁盘检查的顺序。
      0表示不检查,1表示优先检查,2表示其次检查。
      xfs的文件系统不适用fsck检查,即可设置为0.

  2. 磁盘类型

    SATA、SCSI、SAS类型的磁盘:在Linux中用sd来表示。
    其中第一块硬盘为sda,第二块二sdb,以此类推。
    第一块硬盘的第一个分区为sda1。

    nvme类型的磁盘,在Linux中使用nvmeXnYpZ进行表示。
    X:数字,表示第几通道的NVME类型,第一个通道用0表示
    Y:数字,表示第几块硬盘,第一个硬盘用1表示
    Z:数字,表示第几个分区,第一个分区用1表示

    virtio-block类型:
    在Linux中用vd表示,第一块硬盘为vda,第一个硬盘的第一个分区为vda1

二、磁盘管理常用命令

  1. 查看磁盘信息

    fdisk -l --查看并确认磁盘的设备类型。
    Device: 分区的设备文件名称。
    Boot:是否是引导分区。如果是,则要有 “*”标志。
    Start:该分区在磁盘中的起始位置(柱面数)。
    End:该分区在磁盘中的结束位置(柱面数)。
    sectors: 扇区,该分区的柱面数之和
    size:大小
    Id:分区对应的系统ID号,83表示Linux中的分区,82为swap分区。
    type: 分区类型。

    parted -l --查看磁盘设备类型

    使用fdisk -l查询,其中的dos表示使用的是MBR分区方法

    在这里插入图片描述

  2. 分区方案:

    **MBR(Master Boot Record):**主引导记录,最多创建15个分区。最大的磁盘和分区的大小为2TB
    MBR分区直接存储数据和引导记录,分区表中没有备份。
    磁盘中的第一个扇区就是MBR,也叫做主引导扇区。大小为512个字节。
    其中主引导记录(启动代码)占用其中的446个字节,分区表占用了64个字节(每个分区定义的是16个字节),64/16=4,也就是说只能创建4个分区
    结束标志占用2个字节。

    常见分区类型

    • 主分区:一块磁盘最多 4 个,可直接被操作系统使用,适合存放重要且需独立管理的数据。
    • 扩展分区:用于创建超过 4 个分区的情况,本身不能存储数据,是逻辑分区的容器。
    • 逻辑分区:在扩展分区内创建,数量几乎无限制,用于存储数据。

    KB MB GB TB PB EB ZB YB

    **GPT(GUID Partition Table):**全局唯一表示分区表。
    1、支持2TB以上的大硬盘
    2、每个磁盘的分区个数几乎没有限制(最多只允许划分128个分区)
    3、分区大小几乎没有限制,8ZB
    4、分区表自带备份。在磁盘的首尾部分分别保存了一份相同的分区表。其中一份被破坏后,
    可以通过另外一份恢复

    GPT分区的数据和引导记录时分开存储的。

    parted -l —列出所有的磁盘上的分区布局

    parted /dev/sda print —列出某个硬盘的分区表

    1MB=10^3=1000KB
    1MiB=2^10=1024KiB

    若要对新的磁盘进行分区,首先需要为其写入磁盘标签。
    将MBR磁盘标签写入磁盘
    parted /dev/sdb mklabel msdos

    将GPT磁盘标签写入磁盘
    parted /dev/vdb mklabel gpt

三、创建分区

fdisk指令

进入fdisk指令后:

  • p:打印当前磁盘的分区表,查看已有的分区情况。
  • n:创建新分区。执行该命令后,根据提示选择分区类型(主分区、扩展分区或逻辑分区),并输入分区的起始和结束位置,或者直接按回车键使用默认值。
  • d:删除分区。输入要删除的分区编号,即可删除指定的分区。
  • t:更改分区的system id 号。输入分区编号和要设置的新类型的十六进制代码,例如,将分区类型设置为 Linux 文件系统,代码为83;设置为交换分区,代码为82
  • w:将分区表的更改写入磁盘并退出fdisk。这一步非常重要,如果不执行w命令,之前的所有操作都不会生效。
  • q:不保存更改直接退出fdisk

parted指令

parted -lparted --list:显示系统中所有磁盘的详细信息,包括磁盘大小、分区表类型、每个分区的起始和结束位置、文件系统类型等。

在终端输入parted /dev/sdX/dev/sdX为目标磁盘)进入parted交互模式,之后可使用各种子命令进行分区操作:

  • 创建新分区:输入mkpart,接着按提示依次设置分区名称、文件系统类型(如ext4xfs等)、起始位置和结束位置。

    • 创建分区时指定分区类型:输入mkpart primarymkpart logical来分别创建主分区或逻辑分区。
  • **删除分区:**输入rm并跟上要删除的分区编号,如rm 2会删除/dev/sdX上的第二个分区。

  • **调整分区大小:**输入resizepart,再跟上要调整大小的分区编号,然后按提示设置新的起始和结束位置。

  • **切换分区表类型:**使用mklabel命令可切换磁盘的分区表类型,如mklabel gpt将磁盘分区表类型切换为 GPT,mklabel msdos切换为 MBR。

  • **退出parted交互模式:**完成分区操作后,输入quit退出parted交互模式。

    mklabel ----选择使用哪种分区方式进行对该磁盘进行分区
    msdos ----选择MBR方式进行分区
    unit ----设置空间大小的单位
    MB
    mkpart ----新建分区
    primary ----选择分区的类型(primary主分区,extended扩展分区)
    xfs ----选择文件系统,此处只是标记,没有格式化。
    1MB ----起始大小
    501MB ----结束大小
    quit —退出,默认是保存退出创建完成后需要执行udevadm settle,
    等待系统检测新分区并在/dev目录下创建关联的设备文件

    【例:】

    parted /dev/sdc mklabel msdos
    parted /dev/sdc mkpart primary xfs 1MB 501MB
    

注意:

  • 操作前要备份重要数据,因为错误操作可能导致数据丢失。
  • 对正在使用的分区进行操作可能影响系统正常运行,建议在操作前卸载相关分区。
  • 分区操作完成后,部分系统可能需要更新内核的分区表信息,可使用partprobe命令实现。

创建MBR磁盘分区

  1. 通过fdisk指令创建分区:

    步骤一:使用fdisk -l指令查看磁盘信息

    步骤二:进入到fdisk交互界面,对指定磁盘进行分区操作

    fdisk /dev/sda    ///dev/sda为实际操作的磁盘设备名
    

    步骤三:创建分区

    • 输入n新建主分区

      在这里插入图片描述

    • 输入e新建扩展分区

      在这里插入图片描述

    • 此时需要给扩展分区分配空间,如果直接回车会把当前磁盘剩余空间全部分配给扩展空间,如何需要指定分配空间,输入+500M此时会分配给扩张空间500m。

    • 输入w保存退出。

    • 输入partprobe /dev/sda指令将系统分析表同步到我的硬盘。

    通过parted指令创建分区:

    步骤一:进入parted交互界面

    在这里插入图片描述

    步骤二:选择分区方案,设置分区表类型为 MBR

    mklabel msdos
    

    步骤三:创建MBR新分区,分配500Mib的空间,设置起始大小

    在这里插入图片描述

    步骤四:输入p查看当前分区情况

    在这里插入图片描述

    步骤五:输入quit退出

    步骤六:使用udevadm settle指令同步到对应的分类表

    使用分区:

    步骤一:通过mkfs.指令去格式化需要的系统文件

    可以通过mkfs.+【回车】去查看支持格式化的文件类型

    在这里插入图片描述

    注意:CentOS7默认使用xfs系统文件

    步骤二:选择xfs文件类型去格式化

    [root@localhost ~]# mkfs.xfs /dev/sda6
    

    步骤三:创建要挂载的目录

    [root@localhost ~]# mkdir /test   //创建挂载的目录
    

    步骤四:使用blkid指令查看刚才格式化分区的UUID

    在这里插入图片描述

    步骤五:进入/etc/fstab文件,配置挂载文件

    [root@localhost ~]# vim /etc/fstab
    

    在这里插入图片描述

    步骤六:输入mount -a指令重新挂载

    步骤七:通过df -Th指令查看创建的分区是否被挂载

    在这里插入图片描述

创建GPT磁盘分区

  1. 添加硬盘
    在这里插入图片描述

  2. 使用reboot重启虚拟机

  3. 使用fdisk -l指令查看刚才添加的硬盘
    在这里插入图片描述

  4. 使用parted /dev/sdb指令进行分区

  5. 输入mklabel
    在这里插入图片描述

  6. 设置gpt方案分区
    在这里插入图片描述

  7. 输入p查看
    在这里插入图片描述

  8. 输入unit设置单位为Mib

  9. 输入mkpart创建分区
    在这里插入图片描述

  10. 选择起始范围
    809)

  11. 输入quit退出

  12. 使用udevadm settle指令同步到对应的分类表

  13. 格式化为ext4的文件类型

    [root@flocalhost ~]# mkfs.ext4 /dev/sdb1
    
  14. 通过blkid指令查看分区的UUOID
    在这里插入图片描述

  15. 新建挂载点

    [root@flocalhost ~]# mkdir /test1
    
  16. 进入/etc/fstab文件,配置挂载文件

    [root@localhost ~]# vim /etc/fstab
    
  17. 配置挂载文件
    在这里插入图片描述

  18. 使用mount -a指令重新挂载

  19. 使用df -Th指令查看
    在这里插入图片描述

管理交换分区

交换分区又称作为虚拟内存,可以用来解决物理内存不足的问题。
free  -h  ---自动匹配单位查询交换分区的使用情况
free  -m  ---以M为单位查询交换分区的使用情况
free  -G  ---以G为单位查询交换分区的使用情况
  1. 非交互式创建swap分区

    parted /dev/sdc mkpart primary  linux-swap 1MB 501MB
    
  2. 格式化交换分区:

    [root@localhost ~]# mkswap /dev/sdb2
    

    在这里插入图片描述

  3. 进入vim /etc/fstab文件,修改配置文件
    注意:swap交换分区不需要写挂载点
    在这里插入图片描述

  4. 启用交换分区

    [root@localhost ~]# swapon -a
    
  5. 使用free -m查看
    在这里插入图片描述

    swapoff -a ----关闭所有的交换分区
    swapon -a ----开启所有的交换分区

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值