wipefs 没有按预期工作

wipefs 没有按预期工作

我正在做wipefs -af /dev/sda1,然后创建 pv 但它抛出错误

我正在使用命令创建

pvcreate -qq --metadatasize=128M --dataalignment=256K '/dev/sda1'

以下是错误

  [root@xxx]# pvcreate -qq --metadatasize=128M --dataalignment=256K '/dev/sda1'
  Can't open /dev/sda1 exclusively.  Mounted filesystem?
  Can't open /dev/sda1 exclusively.  Mounted filesystem?

谷歌后我尝试了以下选项但仍然没有成功

[root@xxx]# pvremove /dev/sda1
  No PV found on device /dev/sda1.

我在centos7.6上运行这个

更新1: 获得更新后我尝试关注

[root@xxx]# umount /dev/sda1
umount: /dev/sda1: not mounted

检查哪些进程正在访问设备

fuser -m -v /dev/sda1

答案1

似乎存在某种误解。

pvcreate告诉您设备 /dev/sda1 仍在使用中(这可以是任何东西,例如它仍然可以安装,或者是 RAID 阵列的一部分,或者设备映射,或者循环,或者任何正在运行的进程,例如您正在复制dd设备......)。

wipefs如果你不使用的话,会告诉你同样的事情-f

   -f, --force
          Force  erasure,  even if the filesystem is mounted.

如果设备仍在使用中,那就是一个严重的问题,因为使用该设备的任何人都可能会修改设备上的数据。因此,在对wipefspvcreate等进行任何操作之前,您确实应该首先卸载设备(或者确保它不再使用)mkfs

wipefs最多只能擦除设备上的一些魔法字节,它不能为您解决任何其他问题,如果它仍然安装,您必须自己卸载它(或者重新启动并希望它无法安装),如果它仍然安装在使用过程中,您必须找出仍在使用它的内容以及原因,然后决定如何停止它。

答案2

wipefs当我使用清除位来删除 bcache时,我遇到了同样的错误。即使当我使用 USB Ubuntu 映像启动时,我发现它仍然用作/dev/sda2交换。

我将其修复如下:

  1. 我使用停用交换
    swapoff /dev/sda2
    
  2. 然后,我重新运行
    wipefs --all --force /dev/sda*
    
    它能够删除交换(和 bcache)分区/dev/sda2/dev/sda3.

相关内容