这是Ubuntu服务器11.10。
/dev/sdb没有挂载(见下面的输出),也没有被我看到的任何进程使用。它也不是用来交换的。这是服务器中的第二个IDE驱动器,连接到辅助IDE并在硬件raid中设置为数组2。
我不能安装驱动器,因为我收到投诉,它可能已经在使用。我确实运行了fdisk,删除了以前的所有分区,并创建了一个主分区。
root@sargent:/home/harel# fdisk -l /dev/sdb
Disk /dev/sdb: 122.9 GB, 122942324736 bytes
226 heads, 63 sectors/track, 16864 cylinders, total 240121728 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00083711
Device Boot Start End Blocks Id System
/dev/sdb1 2048 240121727 120059840 83 Linux
root@sargent:/home/harel# mkfs -t ext4 /dev/sdb
mke2fs 1.41.14 (22-Dec-2010)
/dev/sdb is entire device, not just one partition!
Proceed anyway? (y,n) y
/dev/sdb is apparently in use by the system; will not make a filesystem here!
root@sargent:/home/harel# cat /proc/swaps
Filename Type Size Used Priority
/dev/sda5 partition 2619388 0 -1
root@sargent:/home/harel# mount
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
发布于 2012-01-02 22:52:45
/dev/sdb
正在使用,因为它上有操作系统所知道的分区。如果您想在文件系统上创建一个文件系统(这不是一个好主意,因为很少这样做会使管理员感到困惑,并且会使您很难进行任何类型的拆分或调整大小),那么首先使用fdisk
删除现有的分区。如果您想在唯一的分区/dev/sdb1
上创建一个文件系统(这是您应该做的,因为直接使用磁盘没有好处),那么请说出您的意思:mkfs /dev/sdb1
。
发布于 2018-11-11 09:38:29
您会得到这个错误消息,因为/dev/sdb
有一个分区(即/dev/sdb1
),并且mkfs调用还会覆盖您的分区表的全部或部分。在最坏的情况下,您的文件系统将无法使用。或者你“只是”松开一个你可能还需要的分区表。由于分区设备文件和磁盘分区表上的实际情况应该是相同的,因此内核可以说正在使用它们。
因此,简单的规则是:如果您想要在整个磁盘设备上创建您的文件系统,那么确保之前删除了所有分区。例如:
# ls /dev/sdb*
/dev/sdb /dev/sdb1
# sfdisk --delete /dev/sdb
# sfdisk --list /dev/sdb
# ls /dev/sdb*
/dev/sdb
通常,分区工具负责通知内核更新其分区设备文件。但是有时(例如对于回送设备)可能需要显式地删除它们(在删除分区表之后),例如通过partx -dv mydev
和/或kpartx -dv mydev
。
请注意,以前的kpartx -av mydev
可能将分区设备创建为/dev/mapper/mydev*
而不是/dev/mydev*
。当mkfs出现时,mkfs也会以同样的方式抱怨。
发布于 2018-10-10 05:53:37
这是一个旧的帖子,但是当我试图为我的一个硬盘创建一个文件系统时,我遇到了同样的问题。系统抱怨说
> [root@MASTER ~]# mkfs.ext4 -L squid_cache -m2 /dev/sdc1
mke2fs 1.42.9 (28-Dec-2013)
/dev/sdc1 is apparently in use by the system; will not make a filesystem here!
命令:
没有产生任何有用的东西。我做了些什么来找出问题的原因。我转到/etc目录,搜索提到驱动器sdc的任何文件。第一个“查找”没有找到任何东西,所以我扩大了搜索范围,包括下面的下一层,它确实找到了罪犯。
> [root@MASTER etc]# find ./* -maxdepth 1 -type f -execdir grep -l sdc '{}' +
./services
./saveconfig.json
我知道targetcli (iSCSI后端)正在使用这些文件,所以一旦我分离了存储并重新运行mkfs命令,相同的命令就会运行,而不会出现任何问题。
希望这能有所帮助。
https://serverfault.com/questions/345971
复制相似问题