1. 首页 > Linux教程 > 正文

Linux教程FG135-partprobe命令分区表重新加载

内容大纲

内容简介:本文风哥教程参考Linux官方文档、Red Hat Enterprise Linux官方文档、Ansible Automation Platform官方文档、Docker官方文档、Kubernetes官方文档和Podman官方文档等内容,详细介绍了相关技术的配置和使用方法。

1. partprobe命令概述

partprobe命令用于通知操作系统重新读取分区表,当我们使用fdisk、gdisk等工具修改了磁盘分区表后,需要使用partprobe命令来使这些更改生效。

学习交流加群风哥QQ113257174

# 安装partprobe(通常已默认安装)
# dnf install -y parted

# 基本语法
# partprobe [选项] [设备]

# 常用选项
-d:不更新内核
-s:显示分区表摘要
-h:显示帮助信息
-v:显示版本信息

2. 基本用法

<

风哥提示:

p>以下是partprobe命令的基本用法:

# 重新加载所有磁盘的分区表
# partprobe

# 重新加载指定磁盘的分区表
# partprobe /dev/vdb

# 显示分区表摘要
# partprobe -s
/dev/vda: msdos partitions 1 2
/dev/vdb: gpt partitions 1 2 3 4 5

# 不更新内核,只显示分区表
# partprobe -d /dev/vdb

3. 工作原理

partprobe命令的工作原理是:

  1. 读取指定设备的分区表
  2. 将分区表信息发送给内核
  3. 内核更新其内部的分区表缓存
  4. 这样操作系统就能识别到新的分区

4. 常见场景

partprobe命令在以下场景中特别有用:

# 场景1:创建新分区后
# fdisk /dev/vdb
# partprobe /dev/vdb

# 场景2:删除分区后
# fdisk /dev/vdb
# partprobe /dev/vdb

# 场景3:修改分区大小后
# fdisk /dev/vdb
# partprobe /dev/vdb

# 场景4:更换磁盘后
# partprobe /dev/vdb

5. 实战案例

更多学习教程公众号风哥教程itpux_com

下面通过一个完整的实战案例来演示partprobe命令的使用。

# 场景:创建新分区并使用partprobe使更改生效

# 1. 查看当前分区
# lsblk /dev/vdb
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vdb 252:16 0 100G 0 disk

# 2. 创建分区
# fdisk /dev/vdb

Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-209715199, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-209715199, default 209715199): +50G

Created a new partition 1 of type ‘Linux’ and of size 50 GiB.

Command (m for help): n
Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (104859648-209715199, default 104859648):
Last sector, +sectors or +size{K,M,G,T,P} (104859648-209715199, default 209715199):

Created a new partition 2 of type ‘Linux’ and of size 50 GiB.

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

# 3. 查看分区是否生效(此时可能还未生效)
# lsblk /dev/vdb
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vdb 252:16 0 100G 0 disk

# 4. 使用partprobe重新加载分区表
# partprobe /dev/vdb

# 5. 再次查看分区(现在应该生效了)
# lsblk /dev/vdb
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vdb 252:16 0 100G 0 disk
├─vdb1 252:17 0 50G 0 part
└─vdb2 252:18 0 50G 0 part

# 6. 格式化分区
# mkfs.xfs /dev/vdb1
# mkfs.xfs /dev/vdb2

# 7. 挂载分区
# mkdir -p /data1 /data2
# mount /dev/vdb1 /data1
# mount /dev/vdb2 /data2

# 8. 验证挂载
# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 3.9G 9.0M 3.8G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/mapper/rhel-root 45G 3.5G 42G 8% /
/dev/vda1 1014M 194M 821M 20% /boot
tmpfs 781M 0 781M 0% /run/user/0
/dev/vdb1 50G 33M 50G 1% /data1
/dev/vdb2 50G 33M 50G 1% /data2

风哥经验总结

1. 在使用fdisk、gdisk等工具修改分区表后,一定要使用partprobe命令来使更改生效。

2. 如果partprobe命令执行失败,可以尝试使用kpartx命令或者重启系统来使分区表更改生效。

学习交流加群风哥微信: itpux-com

3.

from PG视频:www.itpux.com

在生产环境中,修改分区表是一项高风险操作,建议在操作前做好数据备份。

4. partprobe命令不仅适用于MBR分区表,也适用于GPT分区表。

5. 对于某些特殊情况,可能需要多次执行partprobe命令才能使分区表更改完全生效。

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息