标签: smartctl

SmartMonTools:我怎么知道我的硬盘上是否正在运行任何 smartctl 测试?

我正在使用SmartMonTools测试硬盘

测试前的硬盘状态(几天前仅进行了一次简短的测试):

$ sudo smartctl -l selftest /dev/sda
smartctl 6.2 2013-07-26 r3841 [i686-linux-3.16.0-30-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
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%      5167         -
Run Code Online (Sandbox Code Playgroud)

所以我开始了漫长的测试

$ sudo smartctl -t long /dev/sda
smartctl 6.2 2013-07-26 r3841 [i686-linux-3.16.0-30-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian …
Run Code Online (Sandbox Code Playgroud)

hard-disk smart smartctl

57
推荐指数
2
解决办法
5万
查看次数

ide-to-usb 外壳内外部硬盘上的 smartctl

我在 USB 机箱中有一个非常旧的 2.5" IDE 驱动器,它会出现一些缓冲区 I/O 错误。我试图用它smartctl来看看 SMART 怎么说,但我无法让它工作。作为root,如果我只是写:

#> smartctl --all /dev/sde
Run Code Online (Sandbox Code Playgroud)

smartctl 答案:

/dev/sde: Unknown USB bridge [0x14cd:0x6600 (0x201)]
Smartctl: please specify device type with the -d option.
Run Code Online (Sandbox Code Playgroud)

因此,我尝试-d TYPE了帮助摘要中的所有可用方法,并通过以下方式获得了最佳结果:

#> smartctl --all -d scsi /dev/sde
Run Code Online (Sandbox Code Playgroud)

输出:

Vendor:               IC25N030
Product:              ATMR04-0
User Capacity:        30,005,821,440 bytes [30,0 GB]
Logical block size:   512 bytes
scsiModePageOffset: response length too short, resp_len=4 offset=4 bd_len=0
>> Terminate command early due to bad response to IEC mode …
Run Code Online (Sandbox Code Playgroud)

ide external-hdd usb-drive smartctl

45
推荐指数
3
解决办法
5万
查看次数

如何查看SSD剩余寿命或介质磨损程度?

我们都知道 SSD 的预定寿命是有限的。如何在 Linux 中检查 SSD 的当前健康状态?

大多数谷歌搜索结果会要求您查找名为 Media_Wearout_Indicator 的百分比字段的 SMART 信息,或其他术语指标,如长期数据耐力——不存在——是的,我确实检查了两个 SSD,都没有这些字段。我可以继续寻找第三个 SSD,但我觉得这些字段没有标准化。

为了演示这里的问题,我们举了两个例子。


对于第一个 SSD,不清楚哪个字段表示磨损级别。然而,只有一个 Unknown_Attribute 的 RAW VALUE 介于 1 和 100 之间,因此我只能假设这就是我们正在寻找的:

    $ sudo smartctl -A /dev/sda                                             
    smartctl 6.2 2013-04-20 r3812 [x86_64-linux-3.11.0-14-generic] (local build)
    Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

    === START OF READ SMART DATA SECTION ===                                 
    SMART Attributes Data Structure revision number: 1                       
    Vendor Specific SMART Attributes with Thresholds:                        
    ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
      5 Reallocated_Sector_Ct   0x0002 …
Run Code Online (Sandbox Code Playgroud)

hardware ssd hard-disk smartctl

36
推荐指数
3
解决办法
11万
查看次数

交换似乎没有被使用

(我目前使用的是 Ubuntu 14.04 LTS,GNOME 环境)

tl;dr如何强制进行更多内存交换(swappiness 已经达到 100)?

我最近经历了很多系统冻结/崩溃。通常在访问繁忙的网站时。它发生了太多我在我的 tty 上加载了 htop,所以我可以切换到它并终止我的浏览器(因为 GUI 没有响应)。但是,有时我需要使用 REISUB。

我认为 GNOME 可能比 Unity 工作得更好,因为我的 Debian 系统没有问题,而且在一定程度上确实如此,但我的内存仍然很高,并且卡住了。

我看着我的free -m今天,注意到我的交换显示为 0 使用。输出:


             total       used       free     shared    buffers     cached
Mem:          1821       1673        148        221         40        643
-/+ buffers/cache:        989        832
Swap:         1933          0       1933
Run Code Online (Sandbox Code Playgroud)

我对 100 ( sudo sysctl vm.swappiness=100)进行了临时交换。结果仍然相同(即使在运行到接近最大系统内存使用量后仍使用 0)。

我看了这个答案:

如何查看系统是否正在交换? 不幸的是,在我写这篇文章的时候,我的系统进入了更新,我的包被锁定,所以我无法安装这个 ( sar) 也不确定这是哪个包的一部分,以便提供另一个输出。

我查看了 fstab,我的交换分区被正确使用。

# swap was on /dev/sda3 during installation
 UUID=10fdfed2-1fde-4d9f-a8f1-3d2376b0ffcc none            swap    sw              0       0 …
Run Code Online (Sandbox Code Playgroud)

partition ubuntu memory swap smartctl

12
推荐指数
1
解决办法
9754
查看次数

如何变得聪明以忽略硬盘?

我有一个外部硬盘驱动器,它没有正确报告 SMART 信息(它给出了无意义的结果)。

因此,smartd守护程序( 的一部分smartmontools)不断发出有关设备可能出现故障的错误警报。

/etc/smartmontools/smartd.conf(我在这里使用默认值)中,我看到了一堆选项,但没有一个与我的需要相关(忽略特定硬盘驱动器的警报 - 我希望能够通过 USB ID 等引用它,因为/dev如果我连接了更多设备,则输入会有所不同)。

我可以编辑/usr/libexec/smartmontools/smartdnotifysmartd事件发生时调用的脚本)并手动强制它关闭该特定设备,但我想知道是否有一种不那么丑陋的方法来做到这一点。

如何smartd不报告特定硬盘的任何警告?我喜欢禁用该守护程序; 我希望它不关心这个特定的硬盘。

external-hdd smart smartctl

11
推荐指数
2
解决办法
4742
查看次数

在 smartctl 输出中,LifeTime(hours) 是什么意思?

具体来说,在smartctl输出中,是如何LifeTime(hours)计算的?我假设它是以下之一:

  1. 测试时间与驱动器制造日期之间的差异(以小时为单位)。

  2. 测试时间与驱动器第一次通电日期之间的差异(以小时为单位)。

  3. 测试时间(以“驱动运行小时数”表示)与“驱动运行小时数”总数之间的差异(以小时为单位)。

*“驱动器运行小时数”是指驱动器已通电的总运行小时数。(类比:飞机发动机不像汽车那样有里程表。相反,它们通常显示发动机运行的小时数。我使用“驱动运行时间”来表示类似的意思,但用于硬盘驱动器)


示例smartctl输出:

=== START OF READ SMART DATA SECTION ===
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%     22057         -
# 2  Short offline       Completed without error       00%     22057         -
# 3  Extended offline    Completed without error       00%     22029         -
# 4  Extended offline    Completed without error       00%     21958         -
Run Code Online (Sandbox Code Playgroud)

hard-disk smartctl disk

11
推荐指数
1
解决办法
1万
查看次数

如何防止 smartd 报告它找不到磁盘?

我已经智能监控我的硬盘驱动器。它通常工作正常,但以下错误窗口一直每 24 小时弹出一次。

This email was generated by the smartd daemon running on:
  host name: sparhawk-XPS-17
  DNS domain: [Unknown]
  NIS domain: (none)
The following warning/error was logged by the smartd daemon:
Device: /dev/sdc [SAT], unable to open device
For details see host's SYSLOG.
You can also use the smartctl utility for further investigation.
Another email message will be sent in 24 hours if the problem persists.
Run Code Online (Sandbox Code Playgroud)

没有连接sdc,但我还是尝试了sudo smartctl -a /dev/sdc。结果是

smartctl 5.43 2012-06-30 r3573 [x86_64-linux-3.5.0-26-generic] (local build)
Copyright …
Run Code Online (Sandbox Code Playgroud)

monitoring hard-disk smartctl

9
推荐指数
2
解决办法
1万
查看次数

我的硬盘是否有坏道?

我有一个新驱动器,如果smartctl检测到坏扇区,我很困惑。短自检和扩展自检completed without error。但是Error Log指示Uncorrectable error in data96 sectors

这是smartctl输出:

smartctl 5.41 2011-06-09 r3365 [i686-linux-3.2.0-52-generic] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Model Family:     Hitachi Deskstar T7K500
Device Model:     Hitachi HDT725025VLA380
Serial Number:    VFL104R73X993Z
LU WWN Device Id: 5 000cca 316f723ca
Firmware Version: V5DOA73A
User Capacity:    250,059,350,016 bytes [250 GB]
Sector Size:      512 bytes logical/physical
Device is:        In smartctl database [for …
Run Code Online (Sandbox Code Playgroud)

badblocks hard-disk smartctl

9
推荐指数
1
解决办法
2万
查看次数

列出 NVMe 驱动器的功能(如非 NVME 的 hdparm -I)

使用非 NVMe 驱动器,我可以运行:

# hdparm -I /dev/whatever | grep TRIM
Data Set Management TRIM supported (limit 8 block)
Deterministic read data after TRIM
Run Code Online (Sandbox Code Playgroud)

使用三星 960 EVO 1TB NVMe 驱动器 (PCI Express),我得到:

# hdparm -I /dev/nvme0n1
/dev/nvme0n1:
 HDIO_DRIVE_CMD(identify) failed: Inappropriate ioctl for device
Run Code Online (Sandbox Code Playgroud)

我可以跑

# smartctl --all /dev/nvme0n1
Run Code Online (Sandbox Code Playgroud)

并获取有关驱动器的一些信息,但没有关于 TRIM 类型的信息。

我装了nvme-cli,跑nvme get-feature -f 0-f 0xe并从驱动器得到了一些功能,但没有对TRIM类型。

Linux 中有没有办法查询 NVME 设备,列出它支持的 TRIM 类型?

在 Linux 中是否有一种方法可以查询 NVMe 设备,以获取hdparm -I如果它不是 NVMe 时会显示的其他任何内容的列表,smartctl并且nvme …

smartctl hdparm nvme

7
推荐指数
1
解决办法
8604
查看次数

我在 smartctl 中看不到 SSD 自检结果

我想测试我的 SSD。似乎我可以用 smartctl 开始自检,但是当我尝试显示测试结果时,我看不到任何东西。

我的 SSD 型号是PNY CS3030 250GB SSD

$ lsblk -d -o name,model /dev/nvme0n1
NAME    MODEL
nvme0n1 PNY CS3030 250GB SSD
Run Code Online (Sandbox Code Playgroud)

我确保 SMART 已启用:

$ sudo smartctl -s on /dev/nvme0n1
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.0-121-generic] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

NVMe device successfully opened

Use 'smartctl -a' (or '-x') to print SMART (and more) information
Run Code Online (Sandbox Code Playgroud)

然后我开始测试:

$ sudo smartctl -t short /dev/nvme0n1
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.0-121-generic] (local build)
Copyright (C) …
Run Code Online (Sandbox Code Playgroud)

smartctl nvme

7
推荐指数
1
解决办法
3922
查看次数