运维实施35-磁盘管理

了解磁盘

硬盘的接口类型

接口类型发展方向应用场景
IDESATA I/II/III个人PC机
SCSISAS服务器上

磁盘命名规则

OSIDE(并口)SATA(串口)SCSI
RHEL5/dev/hda/dev/sda/dev/sda
RHEL6/dev/sda/dev/sda/dev/sda
RHEL7/dev/sda/dev/sda/dev/sda

磁盘设备的命名

/dev/sda2
  • s = 硬件接口类型 (sata/scsi)

  • d = disk (硬盘)

  • a = 第1块硬盘 (b, 第二块)

  • 2 = 第几个分区

    /dev/hd    h=IDE硬盘	/dev/hdd3
    /dev/vd    v=虚拟硬盘	/dev/vdf7

    HP服务器硬盘

    /dev/cciss/c0d0
    /dev/cciss/c0d0p1       c0第一个控制器, d0第一块磁盘, p1分区1
    /dev/cciss/c0d0p2       c0第一个控制器, d0第一块磁盘, p2分区2

    硬盘的分区方式

    ==根据磁盘大小==

    ==所需分区的数量来==

分区方式MBR (适用于<2TB磁盘)
  • 使用分区软件fdisk

  • 支持4个主分区或者3个主分区+1个扩展分区(N个逻辑分区)

  • 一个扇区占512字节

MBR (Master Boot Record) 的缩写,由三部分组成:
  1. Bootloader (主引导程序) = 446字节

    • 引导操作系统的主程序

  2. DPT分区表 (Disk Partition Table) = 64字节

    • 分区表保存了硬盘的分区信息,操作系统通过读取分区表内的信息,就能够获得该硬盘的分区信息。==\boot==

    • 每个分区需要占用16个字节大小,保存有文件系统标识、起止柱面号、磁头号、扇区号、起始扇区位置(4个字节)、分区总扇区数目(4个字节)等内容。

    • 分区表中保存的分区信息都是主分区与扩展分区的分区信息,扩展分区不能直接使用,需要在扩展分区内划分一个或多个逻辑分区后才能使用。

  3. 硬盘有效标志(校验位) = 2个字节

分区方式GPT (适用于>2TB磁盘)
  • 使用分区软件gdisk或parted

  • 支持最多128个主分区

磁盘划分

磁盘划分思路

  1. 进入分区表,使用fdisk新建分区

  2. 更新分区表(刷新分区表)

  3. 格式化分区 → 创建文件系统

  4. 挂载使用 → mount【开机自动挂载】

fdisk分区常用命令

lsblk:查看系统中的块设备及其挂载情况。
df -h:查看正在挂载的设备情况。
fdisk -l:查看当前系统的所有设备分区情况。

磁盘信息解读

==做了解==

硬盘容量=柱面数×盘面数(磁头数)×扇区数×扇区大小(一般为512字节)

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000bb904

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM
  • Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors:这行说明了磁盘的整体容量是21.5GB,总共由41943040个扇区组成,每个扇区的大小是512字节。

  • Units = sectors of 1 * 512 = 512 bytes:表明用于计算的基本单位是扇区,每个扇区为512字节。

  • Sector size (logical/physical): 512 bytes / 512 bytes:这里说明了逻辑和物理扇区大小都是512字节。

  • I/O size (minimum/optimal): 512 bytes / 512 bytes:表示最小和最优的输入输出操作的大小都是512字节。

  • Disk label type: dosDisk identifier: 0x000bb904:这些信息指出了磁盘使用的分区表类型是DOS(也称为MBR - Master Boot Record)格式,并提供了磁盘的唯一标识符。

接下来是分区的信息:

  • /dev/sda1/dev/sda2:这是磁盘上的两个分区。第一个分区 /dev/sda1 是启动分区(因为它标记了 *),从第2048个扇区开始到第2099199个扇区结束,总共有大约1GB的空间(1048576个块,每块通常是1KB)。第二个分区 /dev/sda2 是一个LVM(逻辑卷管理)类型的分区,它从第2099200个扇区开始,直到磁盘末尾。

即通过"扇区"而不是传统的CHS(Cylinder-Head-Sector,柱面-磁头-扇区)方式来寻址。这种改变提高了存储效率和访问速度,并且更适应大容量硬盘的需求。

在现代系统中,分区工具通常只显示扇区相关信息,而不会显示柱面信息。

==添加完磁盘之后,需要重启虚拟机==

使用fdisk分区工具

fdisk命令详解

fdisk是Linux系统中最常用的磁盘分区工具之一,它提供了一种交互式的方式来管理磁盘分区。

fdisk主要用于创建、删除、调整和查看磁盘分区。

fdisk工具的启动

# 查看所有磁盘及其分区
fdisk -l

# 操作指定磁盘(例如/dev/sdb)
fdisk /dev/sdb

fdisk交互式命令

启动fdisk工具后,会进入交互式命令模式,常用命令如下:

命令功能描述
m显示命令菜单
p打印分区表
n创建新分区
d删除分区
l列出所有已知的分区类型
t更改分区类型(系统ID)
v验证分区表
w写入分区表并退出
q不保存退出

fdisk分区步骤

启动fdisk并选择磁盘:

fdisk /dev/sdb

创建新分区(按n键):

==主分区最多4个==

==拓展分区只能有一个==

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-20971519, default 2048): [按Enter使用默认值]
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +5G

修改分区类型(如果需要,按t键):

Command (m for help): t
Selected partition 1
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'

查看分区表确认(按p键):

Command (m for help): p
Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x9aeade6a

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    10487807     5242880   8e  Linux LVM

保存并退出(按w键):

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

更新系统内核分区表:

# 使用partx命令更新分区表
partx -a /dev/sdb

# 或使用以下命令
partprobe /dev/sdb

主分区与扩展分区

主分区(Primary Partition)

主分区是可以直接用于安装操作系统、存储数据的分区。在MBR分区表中,一块硬盘最多可以创建4个主分区。

主分区的特点

  • 可以直接格式化并使用

  • 可以设置为活动分区(引导分区)

  • 在MBR分区表中最多只能有4个

  • 每个主分区在分区表中占用一个分区表项(16字节)

扩展分区(Extended Partition)

扩展分区是一种特殊的主分区,它本身不能直接使用,而是作为一个"容器",可以在其中创建多个逻辑分区。

在MBR分区表中,一块硬盘最多只能有一个扩展分区。

扩展分区的特点

  • 不能直接格式化和使用

  • 一块硬盘最多只能有一个扩展分区

  • 扩展分区也占用一个主分区的位置(MBR分区表项)

  • 扩展分区的主要目的是突破4个分区的限制

逻辑分区(Logical Partition)

逻辑分区是在扩展分区内部创建的分区,可以直接格式化并使用。

逻辑分区的特点

  • 只能在扩展分区内创建

  • 数量理论上没有限制(Linux系统通常限制为63个)

  • 编号从5开始(如/dev/sda5, /dev/sda6)

  • 可以像主分区一样格式化和使用

分区格式化

文件系统介绍

在创建完分区后,需要对分区进行格式化,也就是创建文件系统。

文件系统决定了操作系统如何在分区上组织和管理文件数据。

Linux常见文件系统类型
文件系统特点适用场景
ext2不支持日志功能,适合小分区或闪存设备U盘、SD卡等
ext3支持日志功能,可从ext2升级而来通用存储
ext4ext3的改进版,支持更大文件和分区,性能更好现代Linux系统主要选择
xfs高性能日志文件系统,支持大容量存储RHEL7/CentOS7默认文件系统
btrfs新型写时复制文件系统,支持快照、校验和等高级存储需求
swap交换分区,用作虚拟内存系统交换分区

mkfs命令详解

mkfs命令用于在分区上创建新的文件系统,它实际上是一个前端程序,会根据指定的文件系统类型调用对应的格式化工具。

基本语法

mkfs [-t 文件系统类型] [选项] 设备

格式化为ext4文件系统

# 基本格式化
mkfs.ext4 /dev/sdb1

# 等同于
mkfs -t ext4 /dev/sdb1

挂载格式化后的分区

格式化完成后,需要挂载文件系统才能使用:

# 创建挂载点
mkdir -p /mnt/data

# 临时挂载
mount /dev/sdb1 /mnt/data

# 查看挂载情况
df -h /mnt/data

设置开机自动挂载

要使分区在系统启动时自动挂载,需要编辑/etc/fstab文件:

# 编辑fstab文件
vim /etc/fstab

添加如下内容:

# 编辑fstab文件
vim /etc/fstab

添加如下内容:

# 设备             挂载点       文件系统类型  挂载选项       转储 检查顺序
/dev/sdb1         /mnt/data    ext4         defaults       0    2
# 或使用UUID(更稳定,推荐)
UUID=abcd1234-56ef-78ab-90cd-1234567890ab  /mnt/data  ext4  defaults  0  2

获取UUID:

# 获取分区的UUID
blkid /dev/sdb1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值