我目前正在运行
sudo mkfs.msdos -c -F 32 /dev/sdg1
大约需要多长时间?这是 250GB 的 USB 2.0 磁盘。当然有下限2 * 250GB / 480 Mbit/s ~ 8400s
(必须写入和读取整个磁盘),但我担心可能会比这更慢。
有人有亲身经历吗?
为了让这条消息更适合谷歌搜索,让我输入快速和慢速:速度有多快?速度有多慢?
答案1
听起来对你有用,但对于记录来说......
块检查可能需要难以置信如果有实际的坏块导致 I/O 错误,则需要很长时间;这取决于驱动程序、错误以及它用来恢复的内容。 固态硬盘应该更快,并且出错的可能性也更小,但是错误仍然可能使其成为最好的情况。
我建议使用消息如果它看起来太慢,看看它是否有问题。
顺便问一下,你为什么认为它必须写入整个磁盘?我不明白mkfs.vfat(1)手册页,它进行破坏性测试,坏块(1)程序默认进行只读测试。
顺便说一下,我曾经mkfs-c 命令在约 4GB 的 SCSI 磁盘上花费 24 多个小时(IIRC)。
答案2
我badblocks /dev/sdg1
通过 USB 2.0 在 1TB 硬盘上运行,根据手册页,这就是命令的作用mkfs.* -c
。默认测试块大小为 1KiB,默认情况下执行只读测试。
24 小时后我中止了它:它只测试了 120GB 并发现了 10000 多个坏块。正如 @nvram 指出的那样,当你真的有坏块时,它会非常慢。
因此对于您的 HDD 来说,可能需要超过 2 天的时间。
答案3
它所用的时间并不比下限多多少。不幸的是,我没有用秒表记录,但差不多就是这样。
答案4
感谢这些提示!我想分享我解决朋友无法启动的 Ubuntu PC 的经验。我使用 USB 介质上的 Xubuntu 启动了 PC。使用命令后e2fsck可以挂载硬盘分区,并且可以从硬盘中检索文件(我的朋友很高兴:)。
硬盘故障错误消息可以在内核环形缓冲区中看到(并且可以使用消息命令):
[78748.550250] ata1.00: status: { DRDY ERR }
[78748.550253] ata1.00: error: { UNC }
[78748.572323] ata1.00: configured for UDMA/100
[78748.572341] ata1: EH complete
[78753.326771] ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
[78753.326777] ata1.00: BMDMA stat 0x25
[78753.326782] ata1.00: failed command: READ DMA
[78753.326790] ata1.00: cmd c8/00:08:48:0b:44/00:00:00:00:00/e4 tag 0 dma 4096 in
[78753.326792] res 51/40:08:48:0b:44/40:00:04:00:00/e4 Emask 0x9 (media error)
当我尝试在 PC 上安装 Xubuntu 时,由于这些介质错误,安装停止了。我使用 Gparted 对硬盘进行分区,然后制作文件系统命令使ext4文件系统排除坏块。
ubuntu@ubuntu:~$ sudo mke2fs -c -t ext4 /dev/sda1
...
...
...
Checking for bad blocks (read-only test): 18.07% done, 2:54:19 elapsed
18.20% done, 8:14:58 elapsed
18.20% done, 8:22:01 elapsed
^[[B20% done, 8:35:08 elapsed
块检查太慢了,我以为执行卡住了。它几乎在 18% 左右停止了,似乎永远也到不了最后。但是消息显示块已分步并且正在进行块检查。如果块没有问题,块检查会更快,整个执行过程大约需要 24 小时。硬盘大小为 40 GB。