Odkud HDD berou správné datum pro zápis do SMART/statistik

Hamparle

  • ****
  • 365
  • junior developer ucho
    • Zobrazit profil
    • E-mail
Prozkoumal jsem SMART funkci disku a i další rozšířené logy obsahující statistiku disku.
Citace
smartctl sdb -l scttemp
A taková otázka, jak disk zjistí správné datum? Když může třeba měsíc ležet v šuplíku bez napájení? Napadá mě synchronizace času po připojení disku? Jakým protokol to řeší? Jak se to bude chovat pokud na systému budu mít systémový čas jinak (jednou budoucnost, jednou minulost) - jak se to pak bude přidávat do logu a jestli log pak bude řazen lineárně (s časovými dírami a nesouvislostmi) a nebo se to řadí podle času?

A dál jsem zvědavý, co přesně znamenají vybrané 4 hodnoty  : - píšu k nim, co si myslím že znamenají
C0 power off Retract count - asi to souvisí s tvrdým vypnutím disku po výpadku napájení. Ale když jdu opravdu do hloubky, značí vypnutí disku a zastavení ploten jen když byly plotny na disku nebo na tom nezáleží?
C1 Load Unload cycles - to je počet přesunů hlaviček na disk/pryč
0C Power on counts/cycles - to je dle mě když se disk zapojí do portu a dojde k jeho spuštění. Hodnota nezohledňuje upsání (po idle time outu nebo na příkaz) nebo parkování hlaviček.
04 Start/stop counts  - Něco jako 0C výše - ale zohlednuje jakékoli roztočení ploten. (A oproti tomu výše počítá i zastavení, takže "teoreticky" by byla 2násobná)



A dále co znamená v smartctl -l directory nebo smartctl -l gplog příznak SCL a GP?


ByCzech

  • *****
  • 1 870
    • Zobrazit profil
    • E-mail
Re:Odkud HDD berou správné datum pro zápis do SMART/statistik
« Odpověď #1 kdy: 27. 08. 2020, 13:26:23 »
Proč si myslíte, že disk ví přesný čas a datum? Podle mě neví.

Re:Odkud HDD berou správné datum pro zápis do SMART/statistik
« Odpověď #2 kdy: 27. 08. 2020, 13:34:39 »
tento konkretny prikaz ti zbiera informacie o teplote zvoleneho disku prostrednictvom SMART Command Transport (SCT), ktore su sucastou ATA-8 Command Set.
Ako mas moznost vidiet z vystupu, tak je definovany Sampling period (napr. 1 min) a Sampling interval log (napr. 10min).
Cas: je systemovy cas hostu, ktory pouziva ATA CS.


Re:Odkud HDD berou správné datum pro zápis do SMART/statistik
« Odpověď #3 kdy: 27. 08. 2020, 16:50:37 »
"co znamená v smartctl -l directory nebo smartctl -l gplog příznak SCL a GP?"

citaj priamo zo zdroja:
https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in
----
k .. C0,C1,0C,04:
toto co hladas su SMART attributy, nie hodnoty. Kazdy disk ma pre taketo atributy definovane treshold hodnoty, definovane vyrobcom.
uviedol si len hexa koncovku ID atributu. Samotne ID sa spravne zapisuje takto:
XXX AxFF
kde FF je ten hexa kod
XXX je podstatne v ID ... tak sa vsade v skaratenom stave popisuju atributy

takze tvoj napr: Power-off Retract Count ma ID 192 0xC0

k SMART meranym atributom:
https://en.wikipedia.org/wiki/S.M.A.R.T.
ti pre zaciatok bude stacit

Odporucam si nastudovat konkretne atributy u konkretneho vyrobcu diskov. Niektore sa mozu lisit v popise, resp. dopade na zdravie disku. Samozrejme su stributy pre SSD a HDD.

Re:Odkud HDD berou správné datum pro zápis do SMART/statistik
« Odpověď #4 kdy: 27. 08. 2020, 18:59:49 »
Odpověď na původní otázku: host pošle ATA povel 0x77 SET DATE & TIME EXT jehož payload je unix time v milisekundách, 48 bitů takže to pár tisíc let vydrží :-)

http://t13.org/Documents/UploadedDocuments/docs2017/di529r18-ATAATAPI_Command_Set_-_4.pdf


Hamparle

  • ****
  • 365
  • junior developer ucho
    • Zobrazit profil
    • E-mail
Re:Odkud HDD berou správné datum pro zápis do SMART/statistik
« Odpověď #5 kdy: 27. 08. 2020, 23:11:53 »
Odpověď na původní otázku: host pošle ATA povel 0x77 SET DATE & TIME EXT jehož payload je unix time v milisekundách, 48 bitů takže to pár tisíc let vydrží :-)

http://t13.org/Documents/UploadedDocuments/docs2017/di529r18-ATAATAPI_Command_Set_-_4.pdf
Super, tak je to jasňačka.

BTW na mezidotaz pavla
Citace
Proč si myslíte, že disk ví přesný čas a datum? Podle mě neví.
Zajímá mě odkud se bere časová hodnota v tom výpisu.

Jasně že atributy nejsou hodnoty a že myslím hexadecimální ostatně(když uvádím číslo C0) ale přišlo mi, že nemůže dojít k mílce.A to vím, že SMART atributy jsou nestandardní ,ale zrovna tato čtveřice + Počet hodin v provozu je mívá identický význam a dokonce i jasný tvar(hex->dec).
Například teplota ne, u ni může být poslední bajt číslo aktuální teploty, zatímco 4.a3. bajt jsou nějaké číslo skrytého významu(například průměr teplot nebo nejvyšší dosažená teplota ever)