我们都知道 SSD 的预定使用寿命有限。所以对我来说,问题是如何在 (Ubuntu) Linux 中检查我的 SSD 当前的健康状况?也许可以估计一下需要多长时间?
最好使用图形工具,但命令行工具也可以。
我正在使用 Xubuntu 12.04 LTS
答案1
检查 SSD 的健康状况
对于基于 Ubuntu、Mint 或 Debian 的发行版
# apt-get install smartmontools
Media_Wearout_Indicator 就是您要找的东西。100 表示您的 SSD 使用寿命为 100%,数字越低表示剩余使用寿命越短。
# smartctl -a /dev/sda | grep Media_Wearout_Indicator
显示你的 sdd 信息
# smartctl -a /dev/sda
您可以在以下网址阅读完整文章:Nam Huy Linux 博客 - 如何在 Linux 上检查 SSD 剩余寿命
答案2
安装Gnome 磁盘实用程序并检查SMART 数据和测试为了耗损均衡计数或类似内容。该数字越高(百分比,从 1 到 100),您的 SSD 就越“耗电”,这意味着您更有可能遇到问题。但如果您有最新的 SSD,则无需担心。
通过安装
sudo apt-get install gnome-disk-utility
通过启动
菜单->设置->磁盘工具
或通过命令行
sudo gnome-disks
答案3
如果您没有英特尔品牌的 SSD:请阅读此文。
小心!!——我被“smartmontools”误导了。我有一个三星SSD,以及smartmonitor/'smartctl'工具误报那个“233”(十六进制“E9”)属性是“Media_Wearout_Indicator”;事实上——不,对于三星(和其他制造商)来说,情况完全不同。我发现的这个和其他论坛帖子、堆栈交换问题/答案和高级用户博客似乎都是“以英特尔为中心”,只有模糊的暗示“它可能会有所不同”。(与任何建议相比,您需要注意 smartmontools 对属性的错误和错误标记)。
当我准备将我的 SSD 复制到我购买的新硬盘上时(因为 smartmontools 告诉了我),我启动到 Windows(我有一个双启动系统),从仅适用于 Windows 的三星工具“Samsung_Magician_v43.exe”告诉我的有关我的驱动器的信息中了解有关 SSD 的一些信息 - 令人震惊的是,它没有任何信息。
经过几个小时的挖掘 - 我终于能够运行仅限 Windows 的工具:hddgaurdian,然后还有晶盘信息:惊喜!这两种工具都告诉我我的三星固态硬盘“很好”(hdd guardian 说“5 星”,Crystal Disk 说“98% OK”)。相比之下,smartctl 工具明确将“十进制 233 / 十六进制 E9”的属性标记为“介质磨损指示器”——并告诉我它的值为“1”或 1%——这是即将发生故障(风险)的指标。为了尽可能确定,我不断挖掘,终于能够从三星官方找到至少一些东西:三星白皮书 07:与 SSD 通信 [archive.org]
该文件确实暗示三星没有以相同的方式使用属性“十六进制E9”/“十进制‘233’”。 (三星:我非常失望,请修复您的官方软件工具,或者至少明确表示您不提供磨损指示信息!)
此外 - 如果你既没有英特尔固态硬盘也没有三星固态硬盘 - 请注意,这些信息似乎因制造商而异。(例如,参见https://code.google.com/p/hddguardian/wiki/about_reliability这是我发现的唯一有用的指示变化程度的指标。)
那么:如果你没有英特尔固态硬盘——不是 被 smartmonitor 提供的错误属性名称标签误导。也许将来会有所改进,但 Ubuntu 12.04 LTS(2014 年 4 月)默认安装的版本完全失败了。smartctl 并没有告诉你它“不知道”,而是错误地标记了属性。我找不到另一个可以让“正确”信息透明或清晰的 Linux 工具。
答案4
对于基于 Debian 的计算机上的金士顿驱动器
如同这个答案执行
# apt-get install smartmontools
但是,当我执行命令显示驱动器信息时,SMART 似乎已被禁用:
# smartctl -a /dev/sda
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.13.0-45-generic] (local build)
[ ... ]
SMART support is: Available - device has SMART capability.
SMART support is: Disabled
您需要以 root 身份执行以下操作来启用该功能:
# smartctl -s on -a /dev/sda
然后,您可以通过进行一个简短的测试(大约花了 1 分钟)来执行自我测试:
# smartctl -t short -a /dev/sda
或者进行更彻底的测试(花了我大约 1.5 小时):
# smartctl -t long -a /dev/sda
请注意,在大多数情况下,您不需要卸载驱动器来执行这些测试。如果需要,请参阅man smartctl
。
现在,当您执行时,smartctl -a /dev/sda
您应该会看到自我评估测试结果。这可能是您真正需要关心的:
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
如果你喜欢细节,你还会看到这样的表格:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x0032 095 095 050 Old_age Always - 0/178007034
5 Retired_Block_Count 0x0033 100 100 003 Pre-fail Always - 0
9 Power_On_Hours_and_Msec 0x0032 092 092 000 Old_age Always - 7626h+46m+45.580s
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 8
171 Program_Fail_Count 0x000a 100 100 000 Old_age Always - 0
172 Erase_Fail_Count 0x0032 100 100 000 Old_age Always - 0
174 Unexpect_Power_Loss_Ct 0x0030 000 000 000 Old_age Offline - 4
177 Wear_Range_Delta 0x0000 000 000 000 Old_age Offline - 1
181 Program_Fail_Count 0x000a 100 100 000 Old_age Always - 0
182 Erase_Fail_Count 0x0032 100 100 000 Old_age Always - 0
187 Reported_Uncorrect 0x0012 100 100 000 Old_age Always - 0
189 Airflow_Temperature_Cel 0x0000 030 035 000 Old_age Offline - 30 (Min/Max 24/35)
194 Temperature_Celsius 0x0022 030 035 000 Old_age Always - 30 (Min/Max 24/35)
195 ECC_Uncorr_Error_Count 0x001c 120 120 000 Old_age Offline - 0/178007034
196 Reallocated_Event_Count 0x0033 100 100 003 Pre-fail Always - 0
201 Unc_Soft_Read_Err_Rate 0x001c 120 120 000 Old_age Offline - 0/178007034
204 Soft_ECC_Correct_Rate 0x001c 120 120 000 Old_age Offline - 0/178007034
230 Life_Curve_Status 0x0013 100 100 000 Pre-fail Always - 100
231 SSD_Life_Left 0x0013 100 100 010 Pre-fail Always - 0
233 SandForce_Internal 0x0032 000 000 000 Old_age Always - 3498
234 SandForce_Internal 0x0032 000 000 000 Old_age Always - 2885
241 Lifetime_Writes_GiB 0x0032 000 000 000 Old_age Always - 2885
242 Lifetime_Reads_GiB 0x0032 000 000 000 Old_age Always - 868
如果你想知道所有这些值的含义,请参阅金士顿文档。