Historie činnosti disku

Historie činnosti disku
« kdy: 28. 08. 2013, 21:13:29 »
Zdravím,
mám v domácím serveru připojený nový disk a chtěl bych u něj používat Bittorrent sync. Jenže chci, aby:
1) Disk se netočil 24/7. Dělá to rámus a žere to proud.
2) Neparkovaly se hlavičky zbytečně často. Opotřebovává to disk.

Jde pochopitelně o dva protichůdné požadavky, ale asi najdu kompromis. Trošku problém je v tom, že BT Sync má v záloze polling, ale ten by měl stačit nastavit na nějakou vysokou hodnotu.

Chtěl bych udělat nějaké měření, jak dlouho se disk točí za den, kolik udělá parkování apod. (Pokud máte nějaké další věci k měření, budu rád.)

Čím to mám ideálně udělat? Hledal jsem nástroje, ale nic, co by dělalo přesně toto, jsem nenašel. Asi by šlo něco vygrepovat z smartctl, ale až tak dobře tomu nerozumím. Navíc bych si asi musel ukládat minulé hodnoty a odečítat.

Není problém měření ukládat mimo disk, abych ukládáním dat neovlivňoval meření.

Ideálně bych dostal jednak graficky znázorněnou aktivitu za poslední, řekněme, den až týden, a k tomu nějaká čísla, ke kterým bych si mohl například napsat jednoduchý skript, který by varoval při vysokých hodnotách.

Říkám si, že něco takového už přece musel někdo napsat...
GraalVM Developer v Oracle Labs. Názory jsou moje vlastní, nemusejí se shodovat se stanoviskem mého zaměstnavatele.


JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:Historie činnosti disku
« Odpověď #1 kdy: 28. 08. 2013, 23:28:09 »
Zkuste progrepovat syslog. Ja tam mam hlasky o startu disku. Treba tam jsou i hlasky o tom, kdyz se disk uspava. Jinak by to mozna umel atop, protoze si tusim uklada jakousi historii toho, co se ve stroji deje a je tam i cosi o disku.

Re:Historie činnosti disku
« Odpověď #2 kdy: 29. 08. 2013, 12:35:59 »
V syslogu bohužel nic takového nevidím. Ani na notebooku s Ubuntu 12.04. (Ještě dodám, že zatímco na tom domácím serveru je disk připojenpřes USB, na notebooku je to asi nějaké SATA nebo co že se to tam používá.) Který daemon to tam píše?

BTW, přijde mi divné, že by se tam zapisovaly spindown'y. Protože to by v běžných případech (tzn. pokud je log přímo na disku) disk znovu probudilo. Ano, toto je jiný případ, ale asi celkem často by to byl problém.

U atopu jsem nic o spindownech nenašel, ale možná jsem jen zatím málo hledal.

Totiž, nejde mi o to, kolik se přenese dat. Jde mi zejména o to, jak dlouho se disk točí a jak často přepíná mezi stavy.
GraalVM Developer v Oracle Labs. Názory jsou moje vlastní, nemusejí se shodovat se stanoviskem mého zaměstnavatele.

Lol Phirae

Re:Historie činnosti disku
« Odpověď #3 kdy: 29. 08. 2013, 12:38:29 »
Viz Load Cycle Count ve SMART. Jinak, kup si SSD a neres kraviny s parkovanim.

JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:Historie činnosti disku
« Odpověď #4 kdy: 29. 08. 2013, 13:32:18 »
U atopu jsem nic o spindownech nenašel, ale možná jsem jen zatím málo hledal.

Tak to asi ne, ale mely by tam byt nejake statistiky a tak. Takze kdyz se na disk treba zapisovalo v 11.30, tak v tu dobu asi zrovna nespal.


Re:Historie činnosti disku
« Odpověď #5 kdy: 29. 08. 2013, 14:10:02 »
Chápu to dobře, že toto znamená, že disk byl roztočen šestadvacetkrát?
Kód: [Vybrat]
193 Load_Cycle_Count        0x0032   100   100   000    Old_age   Always       -       26
Jinak mám pocit, že jsem příkazem smartctl /dev/sdb -a právě roztočil disk. Což není úplně ideální na pravidelnou kontrolu :(

SSD by asi byl pro síťový disk zbytečněj luxus, navíc 2 TB by asi přesáhlo 20 000 CZK bez daně :D
GraalVM Developer v Oracle Labs. Názory jsou moje vlastní, nemusejí se shodovat se stanoviskem mého zaměstnavatele.

Palo M.

Re:Historie činnosti disku
« Odpověď #6 kdy: 30. 08. 2013, 10:19:30 »
Ja na monitoring (aj) diskov pouzivam munin (http://munin-monitoring.org/). Pocet parkovani to sice priamo nezobrazuje, ale ukazuje to napriklad iostat, takze mozes vidiet kedy a kolko sa cita/zapisuje. Zobrazuje to potom v grafoch (priklad tu).

Monitorovat mozes prakticky cokolvek (napriklad aj toho BT klienta), existuje na to vela pluginov a mozes si pripadne napisat aj vlastne.

BTW: IMHO nerobia ramus disky tociace sa naprazdno, ale hlavicky pri seeku, alebo disk pri rozbiehani sa.

Re:Historie činnosti disku
« Odpověď #7 kdy: 01. 09. 2013, 22:15:56 »
Ten munin vypadá zajímavě, možná jej i použiju, ale nevím, jestli dovede vyřešit toto. Problém je mj. v tom, že i nějaká minimální aktivita může ten disk roztočit. A nevím, jestli to uvidím v grafu.

S.M.A.R.T by mohlo napovědět, ale neumím číst tu jejich stupnici. Byl bych radši za raw value. A trošku se obávám, že munin udělá totéž, co hdparm, tedy roztočí disk.

Zkoušel jsem hdparm -C /dev/sdb, ale pokaždé (i pokud se netočí) píše drive state is:  active/idle. Tak z toho asi moc nevyčtu. Daemon smartd to ale prý nějak zvládá zjistit, jen nevím, co s tím.
GraalVM Developer v Oracle Labs. Názory jsou moje vlastní, nemusejí se shodovat se stanoviskem mého zaměstnavatele.

Re:Historie činnosti disku
« Odpověď #8 kdy: 02. 09. 2013, 11:00:11 »
Tak už to asi mám. Vyřeší to patrně smartd:
* Standardně polluje po půl hodině, dá se to ale přenastavit. Je na to potřeba dávat pozor, pokud chceme spinoff přes půl hodiny, protože pak disk nikdy neusne.
* Když disk spí, neptá se ho.
* Ve /var/log/syslog (příp. např. /var/log/messages) jsem se dozvěděl, že data ukládá do /var/lib/smartmontools/smartd.nějaký_identifikátor.ata.state
* Nástroj smartcrl říká, že Load_Cycle_Count má id 193. Ve smíněném souboru ve /var/lib/smartmontools je řádek ata-smart-attribute.15.id = 193. Takže mě asi budou zajímat řádky začínající na "ata-smart-attribute.15.".
* Takže tu hodnotu získám takto: grep ata-smart-attribute.15.raw | sed 's#^.*= \([0-9]\+\)$#\1#'
* Archivaci mohu řešit nástrojem jako je cron nebo ještě lépe incron, který reaguje na inotify.
GraalVM Developer v Oracle Labs. Názory jsou moje vlastní, nemusejí se shodovat se stanoviskem mého zaměstnavatele.

Re:Historie činnosti disku
« Odpověď #9 kdy: 02. 09. 2013, 16:14:53 »
Omlouvám se za monolog, ale mám novou informaci.

Tak smartd patrně kecá, nevím proč. Běží, ale ukazuje staré hodnoty (smartctl ukazuje 50, smartctl ukazuje stále ještě 42):

Kód: [Vybrat]
sudo smartctl -A /dev/sdb | grep 193 && cat /var/lib/smartmontools/smartd.*.ata.state  | grep ata-smart-attribute.15
193 Load_Cycle_Count        0x0032   100   100   000    Old_age   Always       -       50
ata-smart-attribute.15.id = 193
ata-smart-attribute.15.val = 100
ata-smart-attribute.15.worst = 100
ata-smart-attribute.15.raw = 42

Není možné, že by to bylo nečerstvostí, smartd by při pollingu po 30m a parkování po 10m neměl být pozadu více než o 3 parkování. Tady je pozadu o 8 parkování.

Restart smartd hodnoty opravil. Ale obávám se, že se nebudou dále aktualizovat.
GraalVM Developer v Oracle Labs. Názory jsou moje vlastní, nemusejí se shodovat se stanoviskem mého zaměstnavatele.

Mrkev

Re:Historie činnosti disku
« Odpověď #10 kdy: 02. 09. 2013, 19:38:43 »
Čau lidi. Můj interní 2,5 palcový disk Toshiba je vybaven pípátkem. Říká se že když pípá tak je signalizována vysoká teplota HDD. Teď mi to píplo, ale disk má jen teplotu 42°C. Jindy to nepípá ani při teplotě vyšší jak 50°C a S.M.A.R.T. nezobrazuje přírustek žádné ze sledované hodnot, což jsou všechny vyjma těch běžně měnících se - Power On Hours, Load Cycle Count,...

Nemá někdo tucha co tedy to pípátko má signalizovat? Můžná jen chyba senzoru, šlo jen o jedno ihned zadušené pípnutí.

JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:Historie činnosti disku
« Odpověď #11 kdy: 02. 09. 2013, 20:57:29 »
Nic, to akorat skripou loziska.