解决mkfs.ext4提示/dev/sda3被系统占用无法创建文件系统问题
Arch安装阶段分区格式化提示占用/设备忙排查方案
该类报错核心原因是分区创建后内核未同步分区表、分区被自动挂载/激活、存在设备映射占用,按以下优先级操作即可解决:
- 第一步:卸载所有已挂载的目标分区
执行lsblk或mount | grep sda检查sda磁盘下所有分区的挂载状态,如果发现sda1、sda3被自动挂载到/run/media等临时路径,执行umount /dev/sda1、umount /dev/sda3卸载;如果提示设备忙,加懒卸载参数:umount -l /dev/sda1、umount -l /dev/sda3 - 第二步:关闭自动激活的swap分区
Arch Live环境会自动识别磁盘上新建的swap分区并激活,直接占用分区设备。执行swapon --show查看已激活的swap列表,如果看到之前创建的swap分区(一般是/dev/sda2),执行swapoff /dev/sda2关闭即可 - 第三步:强制内核重读分区表
这是GPT分区操作后最高发的报错原因:刚用分区工具完成分区操作时,内核还持有旧的分区表缓存,会判定新分区处于系统占用状态。依次执行以下命令刷新分区表:
等待2秒后再尝试执行格式化命令即可partprobe /dev/sda blockdev --rereadpt /dev/sda - 第四步:清除占用的设备映射
VMware、Hyper-V等虚拟化平台默认可能给磁盘生成device-mapper映射,占用原始分区设备。执行dmsetup ls查看所有dm映射条目,如果存在和sda分区对应的映射,执行dmsetup remove /dev/mapper/对应映射名称删除占用 - 兜底方案
如果以上操作全部执行后仍然报错,直接执行reboot重启Arch Live安装环境,重启后不要打开图形化文件管理器点击任何磁盘分区(避免触发自动挂载),直接在命令行tty中依次执行格式化操作:# 格式化EFI分区 mkfs.fat -F 32 /dev/sda1 # 格式化根分区 mkfs.ext4 /dev/sda3 # 格式化并激活swap分区 mkswap /dev/sda2 swapon /dev/sda2
注意:安装过程中尽量不要通过图形文件管理器访问待安装的磁盘分区,图形环境默认的自动挂载机制是触发这类设备忙报错的最常见诱因。
内容的提问来源于stack exchange,提问作者Ali hasan Galib
相关产品推荐
相关产品推荐

