您的位置:首页 > 移动开发

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

2013-09-02 23:46 1056 查看
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

81
a8af
92 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可能会失败,因此必须对其进行处理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐