小编Jas*_*son的帖子

在linux中,如何确定哪些进程正在使用块设备?

我的服务器中有一个磁盘,我正在将其迁移到 LVM 卷组。以前,它使用传统的 DOS 磁盘分区,hdb[1-5].

我已经从 卸载了每个文件系统hdb,使用 关闭了交换hdb,已经删除了设备上的一个较小的 VG,然后使用 fdisk 对其进行了重新分区,删除了现有分区,并创建了 2 个分区,但是在将其写出后,linux 拒绝重新分区读取分区表。使用报告重试hdparm -zBLKRRPART failed: Device or resource busy.

我已检查以下位置以确保设备及其分区未在任何地方列出:

  • /proc/交换
  • /proc/mdadm
  • “pvs”命令的输出
  • “mount”命令的输出
  • /etc/mtab
  • lsof | grep hdb

cat /proc/partitions仍然列出分区,并且hdparm -z /dev/hdb仍然让我设备繁忙。

是否有什么我遗失的东西,或者一个我还不知道的秘密地方,可以找到我的块设备上仍然保留着的东西?更重要的是,如何释放它的保留以便重新加载分区表?

FWIW,在这种特定情况下,我可以简单地重新启动服务器而不必担心,但这之前一直困扰着我,我很好奇是否有更好的方法。

(编辑:添加了更精确的措辞)(编辑:重新分区的详细信息)

更新:我使用了partprobe /dev/hdb,它确实改变了一些事情:在 /dev /hdb1 中,/deb/hdb[3-5] 现在消失了,partprobe 正在报告Error: Error informing the kernel about modifications to partition /dev/hdb1 -- Device or resource busy.<-- 特别是关于 hdb1。hdb1 以前是 LVM 卷组 …

linux partition lvm

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

linux ×1

lvm ×1

partition ×1