linux 中如何查看块设备,在linux中,如何确定使用块设备的进程?

作者在迁移服务器磁盘到LVM卷组时遇到问题,原有分区被删除后,Linux无法读取新的分区表。hdparm-z报告显示设备繁忙,尽管已检查多个资源列表。文章探讨了可能的隐藏问题及如何释放资源,包括partprobe的使用和资源占用排查技巧。
摘要由CSDN通过智能技术生成

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

我已经从hdb卸载了每个文件系统,使用hdb关闭交换,已经在设备上删除了一个较小的VG,然后使用fdisk重新分区,删除现有分区,并创建了2个分区,但在写完后,linux拒绝了重新读取分区表.使用hdparm -z报告再次尝试:BLKRRPART失败:设备或资源繁忙.

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

> / proc / swaps

> / 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正在报告错误:错误通知内核有关分区的修改/ dev / hdb1 – 设备或资源繁忙. < - 特别是关于hdb1. hdb1以前是LVM卷组(VG)中的物理卷(PV),在我重新分区之前,我已经恢复了pvremoved em ...... 更新2:FWIW,我仍然没有纠正这个问题,幸运的是它并不紧急.我已经了解到partprobe正在使用更新的API调用,这就是为什么它似乎早先做了一些事情.我仍然没有找到一种简单有效的方法,给定一个设备,它的主要/次要数字,找出哪些资源(内核或用户空间)正在使用它.有任何想法吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值