扫描计算机硬盘主要出于两个原因:一个原因是分析硬盘,找出文件系统的不一致或错误。引起这些问题的可能因素包括:持续的系统崩溃,关键的系统软件关闭不当,更主要的是破坏性程序(比如恶意软件和病毒等)。
而另一个原因是分析硬盘的物理状态,我们可以检查硬盘,查找磁盘表面上的物理损坏或失效的内存晶体管引起的坏扇区。
我们在本文中将介绍几款基于GUI和终端的Linux磁盘扫描实用工具。如果你注意到计算机硬盘或某个分区有任何不寻常的行为,一般最先调查是不是文件系统的不一致或错误,而说到执行这项任务,没有其他实用工具比fsck更出色的了。
1.fsck――文件系统一致性检查
fsck是一款系统实用工具,可用来检查、并根据情况修复Linux文件系统。它是几款文件系统检查工具的前端程序。
警告:除非你知道自己在干什么,否则最好只在用于测试的Linux服务器上尝试fsck命令。
在你对某个分区运行fsck之前,始终要先卸载分区。
$ sudo unmount /dev/sdc1
$ sudo fsck -Vt vfat /dev/sdc1
在下面这个命令中,参数选项符有:
-t – 指定文件系统类型。
-V – 启用详细模式。
你可以在fsck参考手册页中找到用法方面的详细指示:
$ man fsck
一旦你执行了文件系统不一致性测试,可以继续执行评估物理状态的工作了。
2.badblocks
badblocks这款实用工具用来扫描硬盘中的坏块或坏扇区。假设你发现了硬盘上的任何坏块,就可以将它与fsck或e2fsck结合使用,指令内核切勿使用这些坏块。
想进一步了解如何使用badblocks实用工具检查坏块,请参阅《如何在Linux下检查硬盘上的块扇区或坏块》一文:。
3.S.M.A.R.T系统实用工具
S.M.A.R.T(自我监测、分析和报告技术)是一种内置在几乎所有现代ATA/SATA和SCSI/SAS硬盘以及固态硬盘中的系统。
它可收集得到支持的硬盘的详细信息,你可以使用下列实用工具获得该信息。
i. Smartctl
smartctl是smartmontools软件包下面的两款实用工具之一。它是一个命令行实用工具,负责控制和监测S.M.A.R.T系统。
想安装smartmontools软件包,运行适用于你所用发行版的下列命令:
$ sudo apt-get install smartmontools #Debian/Ubuntu systems
$ sudo yum install smartmontools #RHEL/CentOS systems
下面这个例子是smartctl命令报告硬盘分区状况,其中选项-H有助于在自我测试后显示总体的分区健康状况:
$ sudo smartctl -H /dev/sda6
查阅smartctl参考手册页,即可了解用法方面的更多指导原则:
$ man smartctl
smartctl有一个GUI前端程序,名为gsmartcontrol,可以按如下方法来安装:
$ sudo apt-get install gsmartcontrol #Debian/Ubuntu systems
$ sudo yum install gsmartcontrol #RHEL/CentOS systems
GSmart Control – Linux磁盘扫描工具
ii. Gnome Disk Utility(or Disks)
Gnome磁盘实用工具提供了一个GUI,可用于处理所有与分区管理有关的任务,比如创建、删除、挂载分区及其他任务。它预先安装在大多数主流的Linux系统中,比如Ubuntu、Fedora、Linux Mint及其他系统。
想在Ubuntu上使用它,打开Dash,搜索Disks。若在Linux Mint上,打开Menu,搜索Disks。若在Fedora上,点击Activities类型Disks。
Gnome Disk Utility for Linux磁盘扫描
更重要的是,它还可以提供S.M.A.R.T数据,并执行自我测试,如下面这个界面所示。
Gnome Disk Utility for Linux磁盘扫描
就是这样!我们在本文中简单介绍了几款面向Linux操作系统的硬盘扫描实用工具。如果你知道本文中没有提及,但是具有同样用途的任何实用工具,欢迎留言交流。