netch80: (Default)
netch80 ([personal profile] netch80) wrote2011-08-18 08:59 am

diskcheckd

Во FreeBSD5 одно время в базе был diskcheckd, потом убрали в порты. Я недавно посмотрел - ставится и работает.


# ps ax | grep disk
67114  ??  Ss     0:07.07 diskcheckd: ad6 2.05%, ad4 5.14% (diskcheckd)


В фоне читает все локальные диски на заданной скорости (можно делать ооочень медленно, чтобы не мешать обычной работе), если где-то плохо читается - будет громко жаловаться в syslog.
Эта деятельность "ортогональна" всяким smartmon, или помогает им (проверять блоки раньше, чем они реально потребовались).
ext_605364: geg MOPO4 (Default)

[identity profile] gegmopo4.livejournal.com 2011-08-18 06:42 am (UTC)(link)
И как оно с дисковым кешем?

[identity profile] netch80.livejournal.com 2011-08-18 06:54 am (UTC)(link)
1) оно старается работать с O_DIRECT
2) 64KB/s для современного кэша даже не копейки.

[identity profile] victor-sudakov.livejournal.com 2011-08-18 02:27 pm (UTC)(link)
Написал я ему в конфиге "* * * 128", гляжу на "iostat -w3 -d", а он как давай по 11 MB/s с каждого диска читать! Почему так?

[identity profile] tarantul7.livejournal.com 2011-09-01 08:10 pm (UTC)(link)
Ооо .. Недавно порт обновився ;)

atrax$ sudo portversion -v | grep diskcheckd
diskcheckd-20010823_5 < needs updating (port has 20110729)

[identity profile] victor-sudakov.livejournal.com 2011-09-02 02:50 am (UTC)(link)
И проблемка со скоростью вроде пропала после обновления до diskcheckd-20110729. По крайней мере при "* * * 128" скорость по iostat стала 0.12 MB/s

[identity profile] tarantul7.livejournal.com 2012-04-15 09:10 am (UTC)(link)
хмм ... почало срати в логи:

Apr 15 12:07:47 atrax diskcheckd[2310]: error reading 512 bytes from sector 507283324 on /dev/ad8
Apr 15 12:07:47 atrax diskcheckd[2310]: sector 507283324 on /dev/ad8 doesn't appear to be within any DOS slice
Apr 15 12:07:47 atrax diskcheckd[2310]: error reading 512 bytes from sector 507283325 on /dev/ad8
Apr 15 12:07:47 atrax diskcheckd[2310]: sector 507283325 on /dev/ad8 doesn't appear to be within any DOS slice
Apr 15 12:07:47 atrax diskcheckd[2310]: error reading 512 bytes from sector 507283326 on /dev/ad8

хоча

смарт нічого критичного не показує

1 Raw_Read_Error_Rate 0x000f 200 200 051 Pre-fail Always - 0
3 Spin_Up_Time 0x0003 168 165 021 Pre-fail Always - 2575
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 299
5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0
7 Seek_Error_Rate 0x000f 200 200 051 Pre-fail Always - 0
9 Power_On_Hours 0x0032 074 074 000 Old_age Always - 19419
10 Spin_Retry_Count 0x0013 100 100 051 Pre-fail Always - 0
11 Calibration_Retry_Count 0x0012 100 100 051 Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 298
194 Temperature_Celsius 0x0022 099 091 000 Old_age Always - 44
196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0
197 Current_Pending_Sector 0x0012 200 200 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0010 200 200 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0009 200 200 051 Pre-fail Offline - 0

fsck також пройшовся - все в нормі

але подумаю про заміну диску - так як системний

[identity profile] netch80.livejournal.com 2012-04-17 10:17 am (UTC)(link)
> fsck також пройшовся - все в нормі

и не покажет, если этот блок за пределами разделов (о чём подсказывают сообщения из лога)

> смарт нічого критичного не показує

если несколько раз подряд попробовать туда записать что-то, будет или успешная запись, или reallocate. В последнем случае raw value для reallocated_sector_count увеличится.