fedora 18格式化磁盘报“/dev/sdb is apparently in use by the system; will not make a filesystem here!”解决办法

fedora 18创建的虚拟机,给其添加用户磁盘成功,对磁盘做文件系统失败。


[root@fedora18_1 armstrong]# mkfs.ext4 /dev/sdb
mke2fs 1.42.5 (29-Jul-2012)
/dev/sdb is entire device, not just one partition!
无论如何也要继续? (y,n) y
/dev/sdb is apparently in use by the system; will not make a 文件系统 here!
[root@fedora18_1 armstrong]# 
[root@fedora18_1 armstrong]# 

系统提示/dev/sdb磁盘正在被系统使用。


开始怀疑是否是KVM的bug,经过对磁盘进行dd读写时,发现磁盘读写都正常,因此需要排查出现上述现象的原因。


使用fuser命令查看磁盘被系统中那个进程使用,如图所示:

[root@fedora18_1 armstrong]# 
[root@fedora18_1 armstrong]# fuser -v /dev/sdb
                     用户     进程号 权限   命令
/dev/sdb:            root        522 F.... multipathd
[root@fedora18_1 armstrong]# 

发现其正在被multipathd(多路径软件)使用。


查看sd设备产生的id名称:


[root@fedora18_1 armstrong]# ll /dev/disk/by-id/
总用量 0
lrwxrwxrwx. 1 root root  9 6月  17 12:11 ata-QEMU_DVD-ROM_QM00003 -> ../../sr0
lrwxrwxrwx. 1 root root  9 6月  17 12:11 ata-QEMU_HARDDISK_QM00001 -> ../../sda
lrwxrwxrwx. 1 root root 10 6月  17 12:11 ata-QEMU_HARDDISK_QM00001-part1 -> ../../sda1
lrwxrwxrwx. 1 root root 10 6月  17 12:11 ata-QEMU_HARDDISK_QM00001-part2 -> ../../sda2
lrwxrwxrwx. 1 root root  9 6月  17 12:11 ata-QEMU_HARDDISK_QM00002 -> ../../sdb
lrwxrwxrwx. 1 root root 10 6月  17 12:11 dm-name-0QEMU_QEMU_HARDDISK_drive-scsi0-0-0 -> ../../dm-3
lrwxrwxrwx. 1 root root 10 6月  17 12:11 dm-name-fedora-root -> ../../dm-1
lrwxrwxrwx. 1 root root 10 6月  17 12:11 dm-name-fedora-swap -> ../../dm-0
lrwxrwxrwx. 1 root root 10 6月  17 12:11 dm-name-QEMU_HARDDISK_QM00002 -> ../../dm-2
lrwxrwxrwx. 1 root root 10 6月  17 12:11 dm-uuid-LVM-EMigyZZDHUj2J15jjJN7UFno9M7REfPg8JZ06CRrZ60ABXzFbvUgVrsnfM8z1a7b -> ../../dm-1
lrwxrwxrwx. 1 root root 10 6月  17 12:11 dm-uuid-LVM-EMigyZZDHUj2J15jjJN7UFno9M7REfPgFEvsjHqiOhimtN4v9fcGzTEsQVZ8zorm -> ../../dm-0
lrwxrwxrwx. 1 root root 10 6月  17 12:11 dm-uuid-mpath-0QEMU_QEMU_HARDDISK_drive-scsi0-0-0 -> ../../dm-3
lrwxrwxrwx. 1 root root 10 6月  17 12:11 dm-uuid-mpath-QEMU_HARDDISK_QM00002 -> ../../dm-2
lrwxrwxrwx. 1 root root  9 6月  17 12:11 scsi-0QEMU_QEMU_HARDDISK_drive-scsi0-0-0 -> ../../sdc
[root@fedora18_1 armstrong]# 

同时查看其dmsetup生成的table表

[root@fedora18_1 armstrong]# dmsetup table
fedora-swap: 0 4128768 linear 8:2 2048
fedora-root: 0 28393472 linear 8:2 4130816
0QEMU_QEMU_HARDDISK_drive-scsi0-0-0: 0 4194304 multipath 0 0 1 1 service-time 0 1 2 8:32 1 1 
QEMU_HARDDISK_QM00002: 0 2097152 multipath 0 0 1 1 service-time 0 1 2 8:16 1 1 
[root@fedora18_1 armstrong]# 

[root@fedora18_1 armstrong]# ll /dev/mapper/
总用量 0
lrwxrwxrwx. 1 root root       7 6月  17 12:11 0QEMU_QEMU_HARDDISK_drive-scsi0-0-0 -> ../dm-3
crw-------. 1 root root 10, 236 6月  17 12:11 control
lrwxrwxrwx. 1 root root       7 6月  17 12:11 fedora-root -> ../dm-1
lrwxrwxrwx. 1 root root       7 6月  17 12:11 fedora-swap -> ../dm-0
lrwxrwxrwx. 1 root root       7 6月  17 12:11 QEMU_HARDDISK_QM00002 -> ../dm-2
[root@fedora18_1 armstrong]# 

[root@fedora18_1 armstrong]# 
[root@fedora18_1 armstrong]# ll /dev/sd* 
brw-rw----. 1 root disk 8,  0 6月  17 12:11 /dev/sda
brw-rw----. 1 root disk 8,  1 6月  17 12:11 /dev/sda1
brw-rw----. 1 root disk 8,  2 6月  17 12:11 /dev/sda2
brw-rw----. 1 root disk 8, 16 6月  17 12:11 /dev/sdb
brw-rw----. 1 root disk 8, 32 6月  17 12:11 /dev/sdc
[root@fedora18_1 armstrong]# 


发现系统中的使用的sdb和sdc使用的主次设备号分别是8:16和8:32,在/dev/目录下查看,发现multipath在/dev/sdb和/dev/sdc之上又创建了一个dm设备,其名称分别为QEMU_HARDDISK_QM00002和0QEMU_QEMU_HARDDISK_drive-scsi0-0-0


由此可见,在本文开始时调用mkfs.ext4格式化文件系统时失败主要是因为multipath软件正在使用sdb和sdc。因此停止掉multipathd进程,移除dm设备后,应该就能正常格式化文件系统。


[root@fedora18_1 armstrong]# 
[root@fedora18_1 armstrong]# service multipathd stop
Redirecting to /bin/systemctl stop  multipathd.service
[root@fedora18_1 armstrong]# dmsetup remove_all
[root@fedora18_1 armstrong]# 
[root@fedora18_1 armstrong]# ll /dev/mapper/
总用量 0
crw-------. 1 root root 10, 236 6月  17 12:11 control
lrwxrwxrwx. 1 root root       7 6月  17 12:11 fedora-root -> ../dm-1
lrwxrwxrwx. 1 root root       7 6月  17 12:11 fedora-swap -> ../dm-0
[root@fedora18_1 armstrong]# 

可见由multipathd生成的dm设备已经被移除,下面就可以正常的进行格式化文件系统了。


[root@fedora18_1 armstrong]# 
[root@fedora18_1 armstrong]# mkfs.ext4 /dev/sdb
mke2fs 1.42.5 (29-Jul-2012)
/dev/sdb is entire device, not just one partition!
无论如何也要继续? (y,n) y
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376

Allocating group tables: 完成                            
正在写入inode表: 完成                            
Creating journal (8192 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

[root@fedora18_1 armstrong]# 


问题解决。


写在后面的话:其实单纯对mkfs操作来说,使用multipath生成的dm设备也可以进行格式化,但是无法使用sdb和sdc进行pvcreate相关的操作,因为lvm在其配置文件lvm.conf中默认过滤的是sd设备,针对本文这种multipath存在情况的话,pvcreate可能会失败,因此必须对其进行处理。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值