Публичное пространство

Диагностика работы жесткого диска на кассе

Проверка файловой системы

Для диагностики жесткого диска на линукс-кассе можно использовать несколько методов. В первую очередь необходимо проверить файловую систему на ошибки.

По умолчанию система автоматически проверяет диск на ошибки при загрузке, если было зафиксировано некорректное выключение.

Лог проверки сохраняется в файл /var/log/checkfs:

tc@box:~$ cat /var/log/checkfs
Started at Mon Jul 26 15:46:08 UTC 2021
Filesystem to check: /dev/sda1
tce: recovering journal
tce: Clearing orphaned inode 2624897 (uid=1001, gid=50, mode=0100664, size=4276224)
tce: clean, 8467/3842048 files, 1088937/15361792 blocks
End at Mon Jul 26 15:46:08 UTC 2021

Проверка ошибок ввода-вывода

Проверка системного журнала на предмет ошибок ввода/вывода HDD.

В примере жесткий диск с названием sda. (Внимание! Наименование диска может быть также вида: sdb, sdc).

Посмотрите имя диска с помощью команды:

fdisk -l /dev/sd?

Отобразится имя диска.


Выполните команду:

dmesg | grep sda

Если с диском всё в порядке, тогда отобразится информация по нему.

tc@box:~$ dmesg | grep sda
sd 0:0:0:0: [sda] 125045424 512-byte logical blocks: (64.0 GB/59.6 GiB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
 sda: sda1 sda2 sda3
sd 0:0:0:0: [sda] Attached SCSI disk
Adding 204796k swap on /dev/sda2.  Priority:-3 extents:1 across:204796k SSFS
Adding 869696k swap on /dev/sda3.  Priority:-4 extents:1 across:869696k SSFS
EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
EXT4-fs (sda1): re-mounted. Opts: data=ordered,discard


Если есть ошибки вида I/O error, тогда это однозначный сигнал о том, что диск необходимо срочно заменить.

tc@box:~$ dmesg | grep sda 
[ 105.309670] sd 1:0:0:0: [sda] Add. Sense: Unrecovered read error - auto reallocate failed
[ 105.309678] end_request: I/O error, dev sda, sector 56544335

Badblocks (проверка битых секторов)

Для использования утилиты Badblocks (средство для поиска битых секторов) установите специальный пакет e2fsprogs, который отсутствует в составе образа кассы.

Если касса подключена к сети Интернет, выполните команду для загрузки:

tc@box:~$ tce-load -wi e2fsprogs
Downloading: e2fsprogs.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
e2fsprogs.tcz        100% |*******************************|   340k  0:00:00 ETA
e2fsprogs.tcz: OK

Если касса не имеет доступа к сети Интернет, тогда:

  1. Скачайте файлы: 
    1. e2fsprogs.tcz;
    2. e2fsprogs.tcz.md5.txt.
  2. Скопируйте файлы пакета в папку на кассе в каталог /mnt/sda1/tce/optional → выполните команду для установки:
tc@box:~$ tce-load -i e2fsprogs
e2fsprogs.tcz: OK


Приступите к поиску плохих блоков. При их наличии они будут выводиться на экран, но нужно учитывать, что в зависимости от объема диска, нужно дождаться выполнения команды.

Если есть наличие плохих "битых" блоков 5 bad blocks found, тогда замените жесткий диск.

tc@box:~$  badblocks -v /dev/sda
Checking blocks 0 to 8388607
2497220done, 7:44 elapsed                                            
2497221done, 7:58 elapsed                                            
2497222done, 8:11 elapsed                                            
2497223done, 8:24 elapsed                                            
2497224
done                                
Pass completed, 5 bad blocks found.

Smartctl (контроль и мониторинг жестких дисков)

Smartctl - утилита контроля и мониторинга жестких дисков, поддерживающих технологию SMART. 

  • На современных жесктих дисках использовать smartctl а, не badblocks так как  "умные диски", обнаружив ошибки чтения/записи, помечают такие сектора как "переназначенные" и переносят их данную в резервную область.
  • Атрибут Reallocated Sectors Count отвечает за мониторинг этого процесса.
    • Чем больше значение - тем хуже состояние поверхности диска.
    • Подробнее о критичных атрибутах SMART.
  • Утилита входит в состав дистрибутива кассы TinyCore8.

Проверьте, поддерживает ли ваш диск технологию SMART:

  • SMART support is: Available - device has SMART capability.
  • SMART support is: Enabled
tc@box:~$ sudo smartctl -i /dev/sda
smartctl 6.5 2016-05-07 r4318 [i686-linux-4.14.62-tinycore] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Barracuda 7200.12
Device Model:     ST3160318AS
Serial Number:    9VMVENME
LU WWN Device Id: 5 000c50 02d85aba7
Firmware Version: CC44
User Capacity:    160,041,885,696 bytes [160 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    7200 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS T13/1699-D revision 4
SATA Version is:  SATA 2.6, 3.0 Gb/s
Local Time is:    Thu Aug  5 11:38:19 2021 MSK

==> WARNING: A firmware update for this drive may be available,
see the following Seagate web pages:
http://knowledge.seagate.com/articles/en_US/FAQ/207931en
http://knowledge.seagate.com/articles/en_US/FAQ/213891en

SMART support is: Available - device has SMART capability.
SMART support is: Enabled


Если SMART технология отключена, тогда выполните команды:

  • SMART support is: Available - device has SMART capability.
  • SMART support is: Disabled
tc@box:~$ sudo smartctl -s on /dev/sda
smartctl 6.5 2016-05-07 r4318 [i686-linux-4.14.62-tinycore] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF ENABLE/DISABLE COMMANDS SECTION ===
SMART Enabled.


Проверьте жесткий диск на наличие ошибок за весь период его работы:

tc@box:~$ sudo smartctl -l error /dev/sda
smartctl 6.5 2016-05-07 r4318 [i686-linux-4.14.62-tinycore] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Error Log Version: 1
No Errors Logged


При подозрении на медленную работу чтения жесткого диска замерьте скорость с помощью утилиты hdparm:

tc@box:~$ sudo hdparm -Tt /dev/sda

/dev/sda:
Timing buffer-cache reads:   676 MB in 0.51 seconds = 1356437 kB/s
Timing buffered disk reads:  308 MB in 3.00 seconds = 104968 kB/s

Для получения все подробной информации выполните следующую команду:

tc@box:~$ sudo smartctl --all /dev/sda
smartctl 6.5 2016-05-07 r4318 [i686-linux-4.14.62-tinycore] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Barracuda 7200.12
Device Model:     ST3160318AS
Serial Number:    9VMVENME
LU WWN Device Id: 5 000c50 02d85aba7
Firmware Version: CC44
User Capacity:    160,041,885,696 bytes [160 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    7200 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS T13/1699-D revision 4
SATA Version is:  SATA 2.6, 3.0 Gb/s
Local Time is:    Thu Aug  5 11:42:42 2021 MSK

==> WARNING: A firmware update for this drive may be available,
see the following Seagate web pages:
http://knowledge.seagate.com/articles/en_US/FAQ/207931en
http://knowledge.seagate.com/articles/en_US/FAQ/213891en

SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x82) Offline data collection activity
                                        was completed without error.
                                        Auto Offline Data Collection: Enabled.
Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever
                                        been run.
Total time to complete Offline
data collection:                (  609) seconds.
Offline data collection
capabilities:                    (0x7b) SMART execute Offline immediate.
                                        Auto Offline data collection on/off support.
                                        Suspend Offline collection upon new
                                        command.
                                        Offline surface scan supported.
                                        Self-test supported.
                                        Conveyance Self-test supported.
                                        Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                                        power-saving mode.
                                        Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                                        General Purpose Logging supported.
Short self-test routine
recommended polling time:        (   1) minutes.
Extended self-test routine
recommended polling time:        (  34) minutes.
Conveyance self-test routine
recommended polling time:        (   2) minutes.
SCT capabilities:              (0x103f) SCT Status supported.
                                        SCT Error Recovery Control supported.
                                        SCT Feature Control supported.
                                        SCT Data Table supported.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   116   099   006    Pre-fail  Always       -       106975293
  3 Spin_Up_Time            0x0003   098   097   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       421
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   084   060   030    Pre-fail  Always       -       284196417
  9 Power_On_Hours          0x0032   015   015   000    Old_age   Always       -       74743
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       421
183 Runtime_Bad_Block       0x0000   100   100   000    Old_age   Offline      -       0
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
188 Command_Timeout         0x0032   100   088   000    Old_age   Always       -       544
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   067   060   045    Old_age   Always       -       33 (Min/Max 24/36)
194 Temperature_Celsius     0x0022   033   040   000    Old_age   Always       -       33 (0 17 0 0 0)
195 Hardware_ECC_Recovered  0x001a   035   029   000    Old_age   Always       -       106975293
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
240 Head_Flying_Hours       0x0000   100   253   000    Old_age   Offline      -       75679 (187 172 0)
241 Total_LBAs_Written      0x0000   100   253   000    Old_age   Offline      -       4274064206
242 Total_LBAs_Read         0x0000   100   253   000    Old_age   Offline      -       786603847

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

© 1994-2023, ООО «Кристалл Сервис Интеграция».
Все права защищены..

Политика обработки персональных данных