使用partx重读磁盘分区信息及自动挂载分区的方法

本文介绍在Linux系统中调整磁盘分区后如何使用partx命令让内核识别新分区,并通过编辑fstab实现分区自动挂载的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在之前的帖子《Linux调整分区后Grub修复》中提到,Linux调整磁盘分区大小后会出现Grub引导损坏的问题,可以参考那篇帖子中的方法,进入grub rescue进行修复。
但是修复后进入系统后发现,随着磁盘调整,以前自动挂载的盘符也不见了,只剩下了File System。但是利用fdiisk -l 能看到所有分区的存在,说明内核没有识别重新调整后的分区。

一、使用partx重读磁盘分区信息

1.查看内核是否已经识别新的分区:

cat /proc/partitions

这里写图片描述
(这个截图是我已经添加过的了,只是示意。)
如果内核没有识别调整后的分区表,我们需要重读磁盘分区表。
有三个命令可以让内核重读磁盘分区表:

partprob 
partx
kpartx

可以使用man或–help查看每个命令的用法。这里使用partx,其用法列在下面。
partx用法

partx命令
-a 登记某块盘上的所有分区信息,如果分区信息有记录,则报错。
-d 删除内核中关于某磁盘的所有分区的记录。(不是卸载!)

通过partx工具让内核重读磁盘分区表

partx -d /dev/sda  //因为内核中存有部分未调整磁盘的信息,故先将所有信息清零
partx -a /dev/sda  //添加调整后的磁盘分区信息
partx -s /dev/sda  //显示磁盘分区信息

通过partx工具查看扇区和磁盘大小
partx

二、自动挂载磁盘分区

到此,系统重启后,就可以识别出其他磁盘分区,但加载时还需要输入用户密码加载。可以修改/etc/fstab文件中的分区挂载设置。

lsblk -f //列出所有块设备信息

lfblk

显示出sda5、sda6两个分区的UUID号,拷贝之后,编辑/etc/fstab ,将要挂载的两个新分区挂在上面。

fstab

保存后退出,重启后系统会自动挂载这两个分区。

:
在调整分区重启后,在启动界面一直出现a start job is running for的问题,后来参考帖子【2】
解决,谨谢!

参考帖子:
【1】Linux磁盘管理,http://253737.blog.51cto.com/243737/1693547/
【2】A start job is running for解决办法,http://tieba.baidu.com/p/3684156805

<think>我们正在处理关于MBR扩展分区的命令教程请求。根据引用内容,特别是引用[2]和引用[3],我们可以总结出在Linux下使用fdisk工具进行MBR扩展分区的创建和修改的步骤。首先,MBR分区表支持主分区和扩展分区。扩展分区可以包含多个逻辑分区。在MBR中,最多只能有四个主分区,或者三个主分区加一个扩展分区(扩展分区内再划分逻辑分区)。操作步骤:1.使用fdisk工具打开磁盘(例如/dev/sda)。2.创建分区使用命令`n`新建分区。3.当需要创建扩展分区时,在分区类型选择时,选择主分区(p)或扩展分区(e)。注意:扩展分区只能有一个。4.在扩展分区内,可以继续使用`n`命令创建逻辑分区(逻辑分区的编号从5开始)。5.删除分区使用命令`d`删除分区。注意:删除扩展分区会同时删除其内的所有逻辑分区。6.修改分区后,使用`wq`命令保存并退出,或者`q`退出不保存。7.在分区操作过程中,有时需要同步分区表,可以使用`partprobe`命令或者`partx`命令(例如:`partx-a/dev/sda`重新加载分区表,`partx-d/dev/sda`清理分区表)。具体步骤示例(创建扩展分区和逻辑分区):1.运行`fdisk/dev/sda`(假设操作磁盘为sda)。2.输入`n`新建分区。3.选择分区类型:主分区(p)或扩展分区(e)。这里选择扩展分区(e)。4.设置分区号(1-4,因为扩展分区必须是四个主分区位置之一)。5.设置起始扇区和结束扇区(或大小)来定义扩展分区的大小。6.然后,继续输入`n`新建分区,此时系统会提示创建逻辑分区(因为已经存在扩展分区)。逻辑分区的编号从5开始。7.设置逻辑分区的起始扇区和结束扇区(或大小)。8.重复步骤6-7可以创建多个逻辑分区。9.输入`p`查看分区表。10.确认无误后,输入`wq`保存并退出。删除扩展分区:1.运行`fdisk/dev/sda`。2.输入`d`删除分区。3.输入要删除的分区号(例如删除扩展分区,输入其分区号,比如3)。4.注意:删除扩展分区后,其下的所有逻辑分区也会被删除。5.输入`wq`保存退出。同步分区表:在修改分区后,有时系统可能不会立即识别,需要同步分区表。可以使用以下命令:-`partprobe`:通知内核重新读取分区表。-或者使用`partx-a/dev/sda`重新加载分区表,`partx-d/dev/sda`清理分区表(在出现设备忙或无法识别时)。格式化逻辑分区:创建逻辑分区后,需要格式化才能使用。例如,将逻辑分区/dev/sda5格式化为xfs文件系统:```bashmkfs.xfs/dev/sda5```挂载分区:```bashmount/dev/sda5/mnt```注意:在操作分区前,请确保数据已备份,以免数据丢失。根据以上步骤,我们可以为用户提供一个详细的MBR扩展分区操作教程。</think>### MBR扩展分区操作命令教程 在Linux中使用`fdisk`工具操作MBR扩展分区的完整流程如下(以`/dev/sda`为例): #### 📌 1. **进入fdisk交互界面** ```bash fdisk /dev/sda # 对sda磁盘进行操作 ``` > 输入`m`可查看所有命令帮助 [^2] #### 📌 2. **创建扩展分区** ```bash Command (m for help): n # 新建分区 Select (default p): e # 选择扩展分区类型(extended) Partition number (1-4): 4 # 扩展分区必须占用主分区位置(1-4) First sector (默认回车): Last sector: +100G # 设置扩展分区大小(示例100G) ``` #### 📌 3. **在扩展分区内创建逻辑分区** ```bash Command (m for help): n Select (default p): l # 选择逻辑分区(logical) First sector: # 使用默认起始位置 Last sector: +20G # 设置逻辑分区大小 ``` > ⚠️ **重要规则**: > 1. 扩展分区最多只能有**1个** [^3] > 2. 逻辑分区编号从**5开始**(如`sda5`, `sda6`) > 3. 扩展分区本身**不能存储数据**,仅作为逻辑分区的容器 [^3] #### 📌 4. **删除分区** ```bash Command (m for help): d # 删除分区 Partition number: 4 # 删除扩展分区(会自动删除所有逻辑分区) ``` #### 📌 5. **分区表操作命令** | 命令 | 功能 | |------|------| | `p` | 显示当前分区表 | | `wq` | **保存并退出** | | `q` | 退出不保存 | | `t` | 修改分区类型 | #### 📌 6. **分区表同步** 修改后必须同步分区表: ```bash partprobe # 内核重读分区表 # 或 partx -a /dev/sda # 重新加载分区partx -d /dev/sda # 清理旧分区表(设备忙时使用) ``` #### 📌 7. **格式化与挂载** ```bash mkfs.xfs /dev/sda5 # 格式化逻辑分区 mount /dev/sda5 /mnt/data # 挂载到目录 ``` > 💡 **故障处理**: > 若出现`Device or resource busy`错误: > 1. 执行`partx -d /dev/sda`清理旧表 > 2. 执行`partx -a /dev/sda`重载分区表 [^2] #### 📌 操作流程图解 ```mermaid graph TD A[启动fdisk /dev/sda] --> B[创建扩展分区 n→e] B --> C[创建逻辑分区 n→l] C --> D[写入分区表 wq] D --> E[同步分区表 partprobe] E --> F[格式化 mkfs.xfs] F --> G[挂载 mount] ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值