15%

Alexhost 满足您的愿望

参与调查 并赢得奖品

08.10.2024
No categories

Linux中smartmontools的smartctl工具指南

介绍

smartctl 是一个命令行工具,属于 smartmontools 套件,提供监控和管理存储设备(如硬盘和 SSD)健康的工具。它允许用户检查驱动器中自我监测、分析和报告技术(SMART)属性的状态,帮助检测驱动器故障的早期迹象。本指南将引导您完成 smartctl 的安装、基本用法和常用命令,适用于 Linux 用户。

什么是 SMART?

SMART(自我监测、分析和报告技术)是大多数现代硬盘和 SSD 中内置的功能,监控温度、读取错误和启动时间等各种属性。这些属性可以提供有关驱动器健康和寿命的洞察,使用户能够预测潜在故障并采取措施,例如在灾难性故障发生之前备份数据或更换驱动器。

安装 smartmontools

在使用 smartctl 之前,您需要安装 smartmontools 套件。大多数 Linux 发行版在其软件库中都有此软件包。使用适合您发行版的命令进行安装:

  • Debian/Ubuntu:
    sudo apt-get update
    sudo apt-get install smartmontools
  • CentOS/RHEL:
    sudo yum install smartmontools
  • Fedora:
    sudo dnf install smartmontools
  • Arch Linux:
    sudo pacman -S smartmontools

安装后,您可以开始使用 smartctl 命令检查和管理您的存储设备。

使用 smartctl 检查驱动器健康

smartctl 是一个多功能工具,可用于各种任务,例如检查驱动器的健康、运行测试和显示驱动器的详细信息。以下是一些常见的 smartctl 命令及其描述。

1. 查看驱动器的基本信息

要查看存储设备的基本信息,例如型号、序列号和固件版本,请使用以下命令:

sudo smartctl -i /dev/sdX

将 /dev/sdX 替换为您的实际设备标识符(例如,/dev/sda,/dev/sdb)。

2. 检查驱动器的整体健康状况

要快速检查驱动器是否健康,请使用:

sudo smartctl -H /dev/sdX

此命令将显示简单的“通过”或“失败”消息,指示驱动器是否检测到任何潜在问题。这是一种快速确定是否需要进一步测试的方法。

3. 显示所有 SMART 属性

要获取驱动器监控的所有 SMART 属性的详细列表,请使用:

sudo smartctl -A /dev/sdX

此命令提供详细统计信息,例如温度、读取错误率和重新分配扇区计数。以下是一些关键属性:

  • Reallocated_Sector_Ct: 表示已重新映射的坏扇区数量。
  • Current_Pending_Sector: 等待重新映射的不稳定扇区数量。
  • Temperature_Celsius: 驱动器的当前温度。

解释这些属性可以提供有关驱动器当前状态的洞察。

4. 运行短自检

smartctl 允许您直接在驱动器上运行自检以检查潜在问题。短测试是可以通过以下命令执行的快速诊断:

sudo smartctl -t short /dev/sdX

此测试需要几分钟,并检查基本读取错误。测试完成后,您可以使用以下命令查看结果:

sudo smartctl -l selftest /dev/sdX

5. 运行长自检

要对驱动器进行更彻底的检查,可以运行长测试:

sudo smartctl -t long /dev/sdX

长测试对驱动器表面进行更全面的分析,但根据驱动器的大小和速度,可能需要几个小时才能完成。使用以下命令检查正在进行的测试状态:

sudo smartctl -c /dev/sdX

6. 启用或禁用 SMART

SMART 通常在大多数驱动器上默认启用,但在少数情况下,可能会被禁用。要在驱动器上启用 SMART,请运行:

sudo smartctl -s on /dev/sdX

要禁用它,请使用:

sudo smartctl -s off /dev/sdX

建议启用 SMART,因为它使您能够利用 smartctl 的所有监控功能。

解释 SMART 数据

smartctl 报告的 SMART 属性起初可能显得晦涩。以下是一些关键点,帮助您解释数据:

  • Raw_Read_Error_Rate: 高值可能表明驱动器读取数据的能力存在问题。
  • Reallocated_Sector_Ct: 非零值可能意味着驱动器开始出现坏扇区。如果此数字持续增加,可能表明驱动器故障。
  • Power_On_Hours: 驱动器通电的总小时数。这可以提供驱动器年龄的概念。
  • Temperature_Celsius: 高温(超过 60°C)可能会缩短驱动器的使用寿命。最好将其保持在 30-40°C 范围内。

自动监控 SMART 状态

为了随时跟踪驱动器的状态,您可以配置 smartd,这是 smartmontools 附带的后台守护进程。它可以自动运行测试,并在驱动器开始显示故障迹象时通过电子邮件通知您。

编辑位于 /etc/smartd.conf 的配置文件,以指定要监控的驱动器以及测试的运行频率。然后,您可以使用以下命令启用并启动 smartd 服务:

sudo systemctl enable smartd
sudo systemctl start smartd

结论

smartctl 是一个强大的工具,用于监控和维护您在 Linux 上的存储设备健康。通过使用本指南中概述的命令,您可以主动检查驱动器的潜在问题,执行诊断测试,并分析详细的 SMART 数据。定期使用 smartctl 可以通过及早识别故障驱动器来帮助防止数据丢失,为您提供备份重要数据和更换有缺陷硬件的时间。

使用 smartctl,您可以获得有关驱动器健康的宝贵洞察,确保您的存储基础设施在 Linux 上的持久性和可靠性。

15%

Alexhost 满足您的愿望

参与调查 并赢得奖品

Похожие записи не найдены.