首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mkfs失败了,抱怨道:"/dev/sdb显然是由系统使用的,不会在这里创建文件系统“

mkfs失败了,抱怨道:"/dev/sdb显然是由系统使用的,不会在这里创建文件系统“
EN

Server Fault用户
提问于 2012-01-02 21:54:22
回答 7查看 176.2K关注 0票数 15

这是Ubuntu服务器11.10。

/dev/sdb没有挂载(见下面的输出),也没有被我看到的任何进程使用。它也不是用来交换的。这是服务器中的第二个IDE驱动器,连接到辅助IDE并在硬件raid中设置为数组2。

我不能安装驱动器,因为我收到投诉,它可能已经在使用。我确实运行了fdisk,删除了以前的所有分区,并创建了一个主分区。

代码语言:javascript
运行
复制
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)
EN

回答 7

Server Fault用户

发布于 2012-01-02 22:52:45

/dev/sdb正在使用,因为它上有操作系统所知道的分区。如果您想在文件系统上创建一个文件系统(这不是一个好主意,因为很少这样做会使管理员感到困惑,并且会使您很难进行任何类型的拆分或调整大小),那么首先使用fdisk删除现有的分区。如果您想在唯一的分区/dev/sdb1上创建一个文件系统(这是您应该做的,因为直接使用磁盘没有好处),那么请说出您的意思:mkfs /dev/sdb1

票数 5
EN

Server Fault用户

发布于 2018-11-11 09:38:29

您会得到这个错误消息,因为/dev/sdb有一个分区(即/dev/sdb1),并且mkfs调用还会覆盖您的分区表的全部或部分。在最坏的情况下,您的文件系统将无法使用。或者你“只是”松开一个你可能还需要的分区表。由于分区设备文件和磁盘分区表上的实际情况应该是相同的,因此内核可以说正在使用它们。

因此,简单的规则是:如果您想要在整个磁盘设备上创建您的文件系统,那么确保之前删除了所有分区。例如:

代码语言:javascript
运行
复制
# 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也会以同样的方式抱怨。

票数 4
EN

Server Fault用户

发布于 2018-10-10 05:53:37

这是一个旧的帖子,但是当我试图为我的一个硬盘创建一个文件系统时,我遇到了同样的问题。系统抱怨说

代码语言:javascript
运行
复制
> [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的任何文件。第一个“查找”没有找到任何东西,所以我扩大了搜索范围,包括下面的下一层,它确实找到了罪犯。

代码语言:javascript
运行
复制
> [root@MASTER etc]# find  ./* -maxdepth 1 -type f -execdir grep -l sdc '{}' +                                                                                             
./services
./saveconfig.json

我知道targetcli (iSCSI后端)正在使用这些文件,所以一旦我分离了存储并重新运行mkfs命令,相同的命令就会运行,而不会出现任何问题。

希望这能有所帮助。

票数 3
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/345971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档