openmediavault s.m.a.r.t. w praktyce

Podłączanie zewnętrznego dysku USB do openmediavault

Konfiguracja openmediavault jako dysku nas i centrum składowania różnych danych w sieci – IT Admin (vblog.ovh)

Wykrywanie uszkodzonego dysku przez openmediavault

Podłączyłem w celu przekopiowania niektórych danych stary dysk zewnętrzny Seagate BarraCuda 3.5” 8TB (ST8000DM004). Po zamontowaniu w menu Storage – File System po chwili nowo podłączony dysk wyświetlił się na głównym ekranie na czerwono. Sprawdziłem co się dzieje i niestety dysk nie nadaje się już do dalszego wykorzystania do składowania na nim ważnych danych. S.M.A.R.T. zgłasza błędy typu Current_Pending_Sector i Reallocated_Sector_Ct. Po chwili przyszedł też email na podaną w konfiguracji openmediavault skrzynkę z obszerną informacją jaki błąd na jakim dysku został znaleziony.

Weryfikacja konfiguracji openmediavault narzędziem omv-confdbadm\

omv-confdbadm read --prettify "conf.service.smartmontools"


{
    "enable": true,
    "interval": 1800,
    "monitor": {
        "device": [
            {
                "devicefile": "/dev/disk/by-id/ata-ST12000NM001J-2TY113_ZV7090NN",
                "devicetype": "sat",
                "enable": true,
                "tempdiff": 0,
                "tempmax": 0,
                "uuid": "16d8ab2a-d6d3-4622-9464-b3faf75723fb"
            },
            {
                "devicefile": "/dev/disk/by-id/usb-JMicron_USB_to_SATA_bridge_201801237009-0:0",
                "devicetype": "sat",
                "enable": true,
                "tempdiff": 0,
                "tempmax": 0,
                "uuid": "cb16cb09-56a9-4b83-94e9-fa39be587cfc"
            }
        ]
    },
    "powermode": "never",
    "scheduledtests": {
        "job": [
            {
                "comment": "",
                "dayofmonth": "*",
                "dayofweek": "*",
                "devicefile": "/dev/disk/by-id/ata-ST12000NM001J-2TY113_ZV7090NN",
                "enable": true,
                "hour": "06",
                "month": "*",
                "type": "S",
                "uuid": "6fc955ee-bba8-4997-ae78-e543cc1ee399"
            }
        ]
    },
    "tempdiff": 15,
    "tempmax": 60
}

Weryfikacja konfiguracji openmediavault narzędziem udevadm 

udevadm info --query=property --name=/dev/sdb | grep -i serial

ID_SERIAL=ST12000NM001J-2TY113_ZV7090NN
ID_SERIAL_SHORT=ZV7090NN
ID_USB_SERIAL=Seagate_One_Touch_Hub_00000000NAC95S3D-0:0
ID_USB_SERIAL_SHORT=00000000NAC95S3D

Najważniejsze błędy S.M.A.R.T 

SMART 5 – Reallocated_Sector_Count.
SMART 187 – Reported_Uncorrectable_Errors.
SMART 188 – Command_Timeout.
SMART 197 – Current_Pending_Sector_Count.
SMART 198 – Offline_Uncorrectable.

Więcej informacji można znaleźć na stronie https://www.backblaze.com/blog/hard-drive-smart-stats/

Ręczne sprawdzanie kondycji dysku narzędziem smartctl

# sprawdzenie jakie mamy dostępne urządzenia blokowe w linux
lsblk

# sprawdzenie czy smart jest włączony dla dysku
root@nas:~# smartctl -i /dev/sdb
smartctl 7.2 2020-12-30 r5155 [x86_64-linux-6.1.0-0.deb11.7-amd64] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     ST12000NM001J-2TY113
Serial Number:    ZV7090NN
LU WWN Device Id: 5 000c50 0e4f8e700
Firmware Version: SS02
User Capacity:    12,000,138,625,024 bytes [12.0 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    7200 rpm
Form Factor:      3.5 inches
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ACS-4 (minor revision not indicated)
SATA Version is:  SATA 3.3, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Wed May 24 10:17:36 2023 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

# włączenie smart dla dysku
smartctl -s /dev/sdb

# uruchomienie szybkiego testu smart dysku
smartctl -t short /dev/sdb

# odczytanie parametrów smart dysku
smartctl -a /dev/sdb

Przydatne adresy

How to check an hard drive health from the command line using smartctl – Linux Tutorials
https://www.thomas-krenn.com/pl/wiki/Program_Smartctl
https://github.com/AnalogJ/scrutiny