我的电脑运行速度越来越慢,对此我并不感到意外(它已经用了大约 6 年了)。以下是我验证过的情况:
- 它们并不是很频繁 (每天仅几次)。
- 当它们发生时,单个应用程序将挂起 10-60 秒,而其余应用程序不会挂起,但也会变慢。
- 即使发生这种情况,CPU 使用率仍保持在较低水平。
- 它发生在应用程序上(例如文本编辑器、firefox、skype)。
- 对于我连续在高 CPU 负载下使用数小时的某些应用程序(例如游戏),从未出现过这种情况。
另请注意:
- 显卡和电源是新的(大约一年)。
- 虽然我现在已经安装了大量软件,但在我重新安装 Windows 之后仍然发生了这种情况。
- 该硬盘已经历过多种分区方案和一些繁重的操作(例如移动大约 200GB 的数据)。
基于以上情况,我已经 70% 确定问题出在硬盘上。不过,在更换硬盘之前,我想排除其他可能性较小的可能性(例如 RAM、软件或 PSU)。
我现在没有钱更换整个盒子,但我可以轻松更换其中一个组件。
我读过几个问题(例如 这个)为解决未知问题提供一般指导,即不是我在这里寻找什么。
我的主要问题是:
我可以运行哪些测试或基准测试来验证我的硬盘有问题?
我不需要解决这个问题,只要确保它是硬盘的问题就满足了。
我可以从朋友那里借一块新硬盘,看看它是否会好起来。如果结果为阳性,则排除所有其他组件,但不能排除软件问题(因为这个新硬盘上没有我每天使用的任何软件)。
在 Windows/Linux 上运行。
答案1
检查SMART 属性是识别硬盘问题的有用的第一步。
访问 SMART 属性
您可以使用第三方工具在 Windows 上查看 SMART 属性,例如智能控制。
在 macOS 上,你可以使用磁盘工具,尽管它不是很冗长。你可以smartctl
从包中安装smartmontools
使用命令行访问 SMART 属性。
在 Linux 上,命令smartctl -a /dev/hda
(来自包smartmontools
)提供有关硬盘的 SMART 信息,其中/dev/hda
替换为相关设备。 GNOME 磁盘(gnome-disks
来自软件包gnome-disk-utility
,以前称为palimpsest
)是一个图形实用程序,它可以提供有关硬盘状况的更多建议。
了解 SMART 属性
以下是一些相关且值得注意的属性。可以找到更大的列表这里。
非零读取错误率(ID 1) 表示磁盘表面或读/写头存在问题。
这吞吐量性能(ID 2)是磁盘的平均效率。如果该值低于阈值,则磁盘可能有问题。
高旋转时间(ID 3)(以毫秒为单位记录)可能表示硬盘驱动器在旋转时遇到问题。
日益重新分配的扇区数(ID 5) 表示硬盘上的某些区域完整性出现问题,必须移动数据。这会导致扇区重新映射时性能下降,但情况可能更严重,因为硬盘即将出现故障。
低寻道时间性能(ID 8) 表示磁头存在机械问题。
这旋转重试次数(ID 10) 在启动失败时出现。如果发生这种情况,输入/输出操作将排队等待,直到硬盘可以正常旋转,这会导致速度变慢。但更重要的是,如果硬盘必须重新尝试启动,则表明即将发生故障。
非零报告无法纠正的错误(ID 187) 计数表示该数量的扇区无法通过硬件纠错来纠正。这是老化的迹象。
这当前待处理部门数量(ID 197) 是等待重新映射的扇区数。这表明硬盘的老化程度。
硬盘基准测试
如果硬盘驱动器中某个位置的性能不佳(可能是存储常用信息的位置),硬盘驱动器读取基准测试可以帮助确认这一点。上面是使用 (palimpsest
现在称为GNOME 磁盘(gnome-disks
)。
如果您更喜欢在 Linux 上执行命令行基准测试,则可以组合多个选项:
hdparm
(摘自包装hdparm
)hdparm -t /dev/hda
— 缓冲顺序读取测试/dev/hda
hdparm -T /dev/hda
— 缓存顺序读取测试/dev/hda
dd
(摘自包装coreutils
)dd if=/dev/hda of=/dev/zero bs=1M count=1024
—使用块大小/dev/hda
为1GiB
1MiB
ioping
(摘自包装ioping
)ioping -R /dev/hda
— 随机读取测试/dev/hda
在 Windows 上,您可以使用以下工具高清调谐进行硬盘基准测试。
在 macOS 上,您可以使用以下工具Blackmagic 磁盘速度测试进行硬盘基准测试。
答案2
在 Windows 中测试的另一种方法是运行命令提示符(在 Vista 或 Windows 7 中以管理员身份运行)。从那里输入CHKDSK C: /f /r
并按 Enter。这将扫描文件系统和可用空间以查找错误
答案3
使用类似工具检查驱动器的 SMART 状态智能控制。如果存在严重问题(如缺陷扇区),这些问题可能在数据中可见。您还可以启动自检以查找尚未记录的新错误。