S.M.A.R.T.
Wszystkie cytaty w tym artykule pochodzą z Wikipedii, wolnej encyklopedii - pl.wikipedia.org
Co to jest?
"S.M.A.R.T. (ang. Self-Monitoring, Analysis and Reporting Technology) to system monitorowania i powiadamiania o błędach działania twardego dysku. Technologia ta została zaimplementowana w dyskach ATA-3, późniejszych ATA, ATAPI, IDE oraz SCSI-3 aby zwiększyć bezpieczeństwo składowanych danych. Dzięki niej dysk potrafi ocenić swój stan i jeżeli awaria jest wysoce prawdopodobna zaalarmować system operacyjny i użytkownika komputera."
AmigaOS 4 i S.M.A.R.T.
Oprogramowanie pozwalające skorzystać z możliwości S.M.A.R.T. nazywa się smartmontools: http://sourceforge.net/projects/smartmontools. W jego skład wchodzą dwa programy - smartctl (konfiguracja, uruchamianie testów i odczytywania informacji o stanie dysku) i smartd (monitorowanie dysku).
Stéphane Guillard przeportował dla AmigaOS 4 ten pierwszy program - smartctl: http://www.os4depot.net/share/utility/hardware/smartmontools.lha
Monitorowanie parametrów dysku
W mojej micro Amidze mam 80-cio GB dysk firmy Seagate. Zobaczmy więc co o nim "powie" nam smartctl:
AmigaOS:> smartctl a1ide.device:0 -i smartctl version 5.33 [Cygwin AmigaOS4 cross compiler] Copyright (C) 2002-4 Bruce Allen Home page is http://cvs.sourceforge.net/projects/smartmontools/ === START OF INFORMATION SECTION === Device Model: ST380011A Serial Number: 5JVHNGR0 Firmware Version: 8.01 User Capacity: 80,026,361,856 bytes Device is: In smartctl database [for details use: -P show] ATA Version is: 6 ATA Standard is: ATA/ATAPI-6 T13 1410D revision 2 Local Time is: Mon Sep 5 20:46:21 2005 GMT SMART support is: Available - device has SMART capability. SMART support is: Enabled
Jak widać SMART jest dla mojego dysku dostępny.
"S.M.A.R.T. monitoruje wiele parametrów dysku twardego co pozwala mu na bieżąco oceniać stan urządzenia. Monitorowanie obejmuje m.in.:
- ilość cykli start/stop (Start_Stop_Count)
- sumaryczny czas pracy dysku (Power_On_Hours)
- temperatura dysku (Temperature_Celsius)
- ilość naprawionych błędów ECC (Hardware_ECC_Recovered)
- ilość błędów transmisji w trybie Ultra DMA (UDMA_CRC_Error_Count)
- ilość błędów operacji seek (Seek_Error_Rate)"
SmartTempMon
Skrypt pozwalający na monitorowanie temperatury dysku
http://www.os4depot.net/share/utility/hardware/smarttempmon.lha
Instalacja
- kopiujemy smartctl i grep do C http://www.os4depot.net/share/utility/filetool/grepppc.lha
- skrypt SmartTempMon do S:Shell
- edytujemy skrypt SmartTempMon:
ilość dysków, które mają być monitorowane
; How many drives do you want to check? ; (This is the number of lines with "set STM_DeviceNumer?" below.) set STM_NumberOfDevices 1
adresy device
; What drives do you want to check? set STM_DeviceNumber1 "a1ide.device:0"
co ile sekund ma być sprawdzana temperatura
; With what interval do you want to check (seconds)? set STM_UpdateInterval 120
maksymalna tolerowana przez nas temperatura
; What is the maximum tolerated temperature (°C)? set STM_MaxTemp 55
Jeżeli maksymalna temperatura zostanie przekroczona pojawi się następujący komunikat:
- dopisujemy stosowną linijkę do user-startup:
Run <>NIL: S:Shell/SmartTempMon
- edytujemy belkę w preferencjach Workbencha:
HD: %e STM_DeviceTemp1 °C
Testy S.M.A.R.T.
"Poza monitorowaniem w czasie rzeczywistym dysk może przeprowadzić kilka typów testów. Testy te mogą być przeprowadzane w trybie captive, w którym rozpoczęcie testu powoduje wyłączenie dysku z użycia (elektronika dysku do czasu zakończenia testu nie realizuje żadnych poleceń kontrolera) lub mogą być przeprowadzane w czasie kiedy dysk nie realizuje żadnych operacji (idle) - co jest zachowaniem domyślnym. Dzięki temu testowanie dysku można przeprowadzić na dysku znajdującym się w użyciu. Wiąże się to niestety z czasowym obniżeniem wydajności dysku. Specyfikacja S.M.A.R.T. definiuje następujące rodzaje testów:
- offline - Immediate Offline Test (czas trwania poniżej pięciu minut) podstawowy test dysku, jest szybki i wykrywa najpoważniejsze problemy
- short - Short Self Test (zwykle trwa poniżej dziesięciu minut) krótki test wykrywający większość problemów
- long - Extended Self Test (trwa kilkadziesiąt minut) długi test wykrywa wszystkie problemy jakie podsystem S.M.A.R.T. danego dysku jest w stanie rozpoznać
- conveyance - Conveyance Self Test (od kilku do kilkunastu minut) ten test ma za zadanie wykryć uszkodzenia powstałe podczas transportu urządzenia (test nośnika magnetycznego)
- select - przeznaczony do testowania części dysku, dzięki niemu można wykonać test nośnika na części dysku (np. jednej partycjii)"
AmigaOS:> smartctl a1ide.device:0 -t offline smartctl version 5.33 [Cygwin AmigaOS4 cross compiler] Copyright (C) 2002-4 Bruce Allen Home page is http://cvs.sourceforge.net/projects/smartmontools/ === START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION === Sending command: "Execute SMART off-line routine immediately in off-line mode". Drive command "Execute SMART off-line routine immediately in off-line mode" successful. Testing has begun. Please wait 430 seconds for test to complete. Test will complete after Mon Sep 5 21:44:04 2005 Use smartctl -X to abort test.
Na zakończenie pozostaje mi życzyć Wam, abyście mieli jak najmniej problemów z dyskami twardymi. SMART może bowiem tylko te problemy wykryć, ale niestety już ich nie naprawi. O, temperatura mojego dysku podczas pisania tego artykułu spadła o 4 stopnie.
Szymon Tomzik