百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

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

bigegpt 2025-01-13 11:02 8 浏览

随着存储技术的不断发展,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(当前待定扇区计数):指示正在等待修复的坏扇区数量。如果此值增加,可能表明磁盘正在逐渐失效。

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

相关推荐

10w qps缓存数据库——Redis(redis缓存调优)

一、Redis数据库介绍:Redis:非关系型缓存数据库nosql:非关系型数据库没有表,没有表与表之间的关系,更不存在外键存储数据的形式为key:values的形式c语言写的服务(监听端口),用来存...

Redis系列专题4--Redis配置参数详解

本文基于windowsX64,3.2.100版本讲解,不同版本默认配置参数不同在Redis中,Redis的根目录中有一个配置文件(redis.conf,windows下为redis.windows....

开源一夏 | 23 张图,4500 字从入门到精通解释 Redis

redis是目前出场率最高的NoSQL数据库,同时也是一个开源的数据结构存储系统,在缓存、数据库、消息处理等场景使用的非常多,本文瑞哥就带着大家用一篇文章入门这个强大的开源数据库——Redis。...

redis的简单与集群搭建(redis建立集群)

Redis是什么?是开源免费用c语言编写的单线程高性能的(key-value形式)内存数据库,基于内存运行并支持持久化的nosql数据库作用主要用来做缓存,单不仅仅是做缓存,比如:redis的计数器生...

推荐几个好用Redis图形化客户端工具

RedisPlushttps://gitee.com/MaxBill/RedisPlusRedisPlus是为Redis可视化管理开发的一款开源免费的桌面客户端软件,支持Windows、Linux...

关于Redis在windows上运行及fork函数问题

Redis在将数据库进行持久化操作时,需要fork一个进程,但是windows并不支持fork,导致在持久化操作期间,Redis必须阻塞所有的客户端直至持久化操作完成。微软的一些工程师花费时间在解决在...

你必须懂的Redis十大应用场景(redis常见应用场景)

Redis作为一款高性能的键值存储数据库,在互联网业务中有着广泛的应用。今天,我们就来详细盘点一下Redis的十大常用业务场景,并附上Golang的示例代码和简图,帮助大家更好地理解和应用Redis。...

极简Redis配置(redis的配置)

一、概述Redis的配置文件位于Redis安装目录下,文件名为redis.conf(Windows名为redis.windows.conf,linux下的是redis.conf)你可以通过C...

什么是redis,怎么启动及如何压测

从今天起咱们一起来学习一下关于“redis监控与调优”的内容。一、Redis介绍Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。...

一款全新Redis UI可视化管理工具,支持WebUI和桌面——P3X Redis UI

介绍P3XRedisUI这是一个非常实用的RedisGUI,提供响应式WebUI访问或作为桌面应用程序使用,桌面端是跨平台的,而且完美支持中文界面。Githubhttps://github....

windows系统的服务器快速部署java项目环境地址

1、mysql:https://dev.mysql.com/downloads/mysql/(msi安装包)2、redis:https://github.com/tporadowski/redis/r...

window11 下 redis 下载与安装(windows安装redis客户端)

#热爱编程是一种怎样的体验#window11下redis下载与安装1)各个版本redis下载(windows)https://github.com/MicrosoftArchive/r...

一款轻量级的Redis客户端工具,贼好用!

使用命令行来操作Redis是一件非常麻烦的事情,我们一般会选用客户端工具来操作Redis。今天给大家分享一款好用的Redis客户端工具TinyRDM,它的界面清新又优雅,希望对大家有所帮助!简介Ti...

一个.NET开发且功能强大的Windows远程控制系统

我们致力于探索、分享和推荐最新的实用技术栈、开源项目、框架和实用工具。每天都有新鲜的开源资讯等待你的发现!项目介绍SiMayRemoteMonitorOS是一个基于Windows的远程控制系统,完...

Redis客户端工具详解(4款主流工具)

大家好,我是mikechen。Redis是大型架构的基石,也是大厂最爱考察内容,今天就给大家重点详解4款Redis工具@mikechen本篇已收于mikechen原创超30万字《阿里架构师进阶专题合集...