如何在 Linux 上检查 SSD/HDD 健康状况?

简介: 【10月更文挑战第14天】

随着存储技术的不断发展,SSD 和 HDD 仍然是大多数系统管理员和个人用户的重要存储设备。然而,这些存储设备并非永恒不变,它们可能会随着时间的推移而出现故障。因此,定期检查 SSD 和 HDD 的健康状况至关重要,这可以帮助我们在数据丢失发生之前发现潜在问题并采取预防措施。

在 Linux 系统上,有多种工具可以用来检查存储设备的健康状况。本文将详细介绍如何使用 smartctlgnome-disks 等工具来检查 SSD 和 HDD 的健康状况。

smartctlsmartmontools 软件包的一部分,它可以用于监控和报告存储设备的健康状况。smartctl 工具可以从设备中提取详细的信息,如错误率、温度和总体健康状态。

在 Debian/Ubuntu 上安装 Smartctl

sudo apt update
sudo apt install smartmontools -y

在 RHEL/CentOS/Fedora 上安装 Smartctl

sudo dnf install smartmontools -y

安装 smartctl 后,启动 smartd 守护进程并检查其状态:

sudo systemctl start smartd
sudo systemctl status smartd

输出示例:

? smartmontools.service - Self Monitoring and Reporting Technology (SMART) Daemon
     Loaded: loaded (/lib/systemd/system/smartmontools.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2024-07-02 08:58:33 UTC; 11s ago

smartd 守护进程将监控系统中的存储设备,并在检测到潜在问题时发送警告。

使用 Smartctl 检查 SSD/HDD 健康状况

启用存储设备的 SMART 功能

在某些情况下,存储设备的 SMART 功能默认情况下可能未启用。您可以使用以下命令启用它:

sudo smartctl -s on /dev/sda

其中,/dev/sda 是要检查的存储设备。请根据实际情况替换设备路径。

获取存储设备的基本信息

启用 SMART 后,您可以使用以下命令获取存储设备的基本信息:

sudo smartctl -i /dev/sda

输出示例:

Device Model:     WDC WD5000LPVX-75V0TT0
Serial Number:    WXV1EC4KN2N7
Firmware Version: 01.01A01
User Capacity:    500,107,862,016 bytes [500 GB]
SMART support is: Enabled

此命令将显示存储设备的型号、序列号、固件版本、容量和 SMART 支持状态等信息。

执行短测试

短测试主要用于快速检测存储设备的电气和机械属性,包括读取和验证操作。执行短测试的命令如下:

sudo smartctl -t short -a /dev/sda

短测试通常只需几分钟即可完成。完成后,可以查看测试结果:

sudo smartctl -l selftest /dev/sda

输出示例:

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed without error       00%      7609         -

执行长测试

长测试比短测试更加全面,覆盖所有短测试的内容,同时还对磁盘进行更深入的扫描。执行长测试的命令如下:

sudo smartctl -t long -a /dev/sda

长测试可能需要几个小时才能完成。在测试期间,您可以使用以下命令查看测试进度:

sudo smartctl -l selftest /dev/sda

检查设备的整体健康状况

要快速检查存储设备的整体健康状况,可以使用以下命令:

sudo smartctl -d ata -H /dev/sda

输出示例:

SMART overall-health self-assessment test result: PASSED

如果设备通过了整体健康检查,您将看到“PASSED”结果。如果存在问题,结果将显示为“FAILED”。

查看详细的错误日志

除了执行测试,smartctl 还允许您查看存储设备的错误日志。使用以下命令查看详细的错误信息:

sudo smartctl -l error /dev/sda

如果设备存在错误,您将在日志中看到详细的错误描述。

获取自定义帮助信息

要查看 smartctl 工具的所有可用选项和命令,可以使用以下命令:

smartctl --help

使用 Gnome Disks 检查存储设备健康状况

对于更偏好图形界面的用户,gnome-disks 工具提供了一个简单直观的方式来检查存储设备的健康状况。gnome-disks 是 GNOME 桌面环境的一部分,但它也可以在其他桌面环境中使用。

安装 Gnome Disks

如果尚未安装 gnome-disks,可以使用以下命令进行安装:

sudo apt install gnome-disk-utility -y  # Debian/Ubuntu
sudo dnf install gnome-disk-utility -y  # RHEL/CentOS/Fedora

启动 Gnome Disks

在终端中输入以下命令启动 gnome-disks

gnome-disks

检查存储设备健康状况

启动 gnome-disks 后,选择要检查的存储设备,然后点击“磁盘”界面右侧的“磁盘健康”选项。这里将显示设备的 SMART 状态,包括设备健康评估、温度、运行时间和其他详细信息。

在获取了存储设备的 SMART 数据后,理解这些数据对于预防故障至关重要。以下是一些常见的 SMART 属性及其含义:

  • Reallocated Sectors Count(重映射扇区计数):指示已重新分配的坏扇区数量。值越高,表明磁盘越接近失效。
  • Power-On Hours(通电时间):显示磁盘自首次使用以来的累计运行时间。
  • Temperature(温度):显示当前磁盘的温度。高温可能会加速磁盘的老化和损坏。
  • Current Pending Sector Count(当前待定扇区计数):指示正在等待修复的坏扇区数量。如果此值增加,可能表明磁盘正在逐渐失效。

通过定期检查这些关键属性,您可以在问题出现之前识别潜在的硬件故障,并采取适当的措施,如备份数据和更换故障硬盘。

目录
相关文章
|
14天前
|
网络协议 安全 Linux
阿里云国际上如何检查 Linux 上正在使用哪些端口
阿里云国际上如何检查 Linux 上正在使用哪些端口
|
2月前
|
监控 Linux
在Linux中,如何创建、检查和修复文件系统?
在Linux中,如何创建、检查和修复文件系统?
|
2月前
|
监控 Linux Shell
"揭秘!一键掌控Linux服务器健康的秘密武器——超实用系统检查脚本,让你的服务器稳如老狗,告别宕机烦恼!"
【8月更文挑战第14天】服务器宕机或资源耗尽会严重影响业务。为此,你需要一个Linux系统检查脚本来守护服务器健康。它可以自动检测潜在问题如磁盘满载、内存泄漏等,避免服务中断。脚本应包括磁盘空间、内存/CPU使用、系统时间准确性、关键服务状态及系统日志分析等检查项。通过编写并定期运行这样的脚本,可以显著提高服务器的稳定性和可靠性。
45 1
|
3月前
|
存储 Linux 网络安全
如何在 Linux 中检查和设置时区?
【7月更文挑战第12天】
50 2
如何在 Linux 中检查和设置时区?
|
2月前
|
关系型数据库 MySQL Linux
在Linux中,如何检查某项服务是否在运行?
在Linux中,如何检查某项服务是否在运行?
|
2月前
|
存储 固态存储 Linux
在Linux中,什么是SSD和HDD,作用分别是什么?
在Linux中,什么是SSD和HDD,作用分别是什么?
|
2月前
|
缓存 Ubuntu Linux
在Linux中,如何检查系统更新?
在Linux中,如何检查系统更新?
|
2月前
|
Linux
在Linux中,如何检查磁盘空间使用情况?
在Linux中,如何检查磁盘空间使用情况?
|
2月前
|
监控 Linux
在Linux中,如何检查磁盘使用情况和剩余空间?
在Linux中,如何检查磁盘使用情况和剩余空间?
|
2月前
|
存储 固态存储 Linux
在Linux中,ext4文件系统有何特性?如何检查文件系统的完整性?
在Linux中,ext4文件系统有何特性?如何检查文件系统的完整性?