如何在 Ubuntu 中扫描硬盘以查找物理问题?
答案1
您可能想要使用“badblocks”。
答案2
您可以使用 Ubuntu 中提供的“SMART”扫描。SMART 是一个分析大多数新硬盘内置数据的程序。虽然它不能为您提供完整的信息,但当您认为可能存在问题时,SMART 是第一个要查看的地方。另外,请尽快备份您的数据!
以下是有关 smartctl 的更多信息和一些一般用法的链接:
http://www.cyberciti.biz/tips/linux-find-out-if-harddisk-failing.html
答案3
在 *nix 中执行此操作的标准方法是使用fsck
命令系列,对于您的情况,使用 -c 开关来检查坏块。您可以fsck
单独使用命令,也可以fsck.ext4
针对特定系统使用。例如:
fsck.ext4 -cvf /dev/sda1
以下是它的帮助:
Usage: fsck.ext4 [-panyrcdfvtDFV] [-b superblock] [-B blocksize]
[-I inode_buffer_blocks] [-P process_inode_size]
[-l|-L bad_blocks_file] [-C fd] [-j external_journal]
[-E extended-options] device
Emergency help:
-p Automatic repair (no questions)
-n Make no changes to the filesystem
-y Assume "yes" to all questions
-c Check for bad blocks and add them to the badblock list
-f Force checking even if filesystem is marked clean
-v Be verbose
-b superblock Use alternative superblock
-B blocksize Force blocksize when looking for superblock
-j external_journal Set location of the external journal
-l bad_blocks_file Add to badblocks list
-L bad_blocks_file Set badblocks list
如您所见,它会检查文件系统,因此如果您想检查整个磁盘,则必须在所有分区上运行它。此外,要访问分区,需要将其卸载。这意味着,如果您需要扫描根分区,则需要从实时 cd/usb 启动才能访问它。
答案4
另一种方法是使用带有一些专用软件的可启动 CD/USB 记忆棒。
看这里(在 ServerFault 上!)寻求一些建议。
我一直使用 SpinRite,但它是 $$-ware 而不是 Ubuntu/OSS。