Назад | Перейти на главную страницу

Файловая система установлена ​​в режим только для чтения, какой диск неисправен?

Сегодня я проснулся и обнаружил, что файловая система моего сервера CentOS находится в режиме только для чтения. Я использую RAID 1 на этом сервере.

# mkdir test
mkdir: cannot create directory `test': Read-only file system

Я провел небольшое исследование и обнаружил, что это обычно вызвано аппаратной проблемой, то есть жесткий диск вот-вот выйдет из строя.

Как я могу точно узнать, что это проблема оборудования, а не программного обеспечения?

В случае, если это проблема с оборудованием: как мне узнать, какой из двух дисков неисправен и нуждается в замене? Smartctl показывает «ПРОЙДЕН» для обоих дисков, хотя один показывает 678 перераспределенных секторов, а другой - 33 перераспределенных сектора. (Опять же, я использую RAID 1)

вывод dmesg

ata2.00: exception Emask 0x0 SAct 0x4000000 SErr 0x0 action 0x0
ata2.00: irq_stat 0x40000008
ata2.00: failed command: READ FPDMA QUEUED
ata2.00: cmd 60/08:d0:58:11:38/00:00:01:00:00/40 tag 26 ncq 4096 in
         res 51/40:02:5e:11:38/00:00:01:00:00/40 Emask 0x409 (media error) <F>
ata2.00: status: { DRDY ERR }
ata2.00: error: { UNC }
ata2.00: configured for UDMA/133
sd 1:0:0:0: [sdb]
Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
sd 1:0:0:0: [sdb]
Sense Key : Medium Error [current] [descriptor]
Descriptor sense data with sense descriptors (in hex):
        72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00
        01 38 11 5e
sd 1:0:0:0: [sdb]
Add. Sense: Unrecovered read error - auto reallocate failed
sd 1:0:0:0: [sdb] CDB:
Read(16): 88 00 00 00 00 00 01 38 11 58 00 00 00 08 00 00
end_request: I/O error, dev sdb, sector 20451678
EXT3-fs error (device md2): ext3_get_inode_loc: unable to read inode block - inode=637820, block=2555947
ata2: EH complete
Aborting journal on device md2.
EXT3-fs (md2): error: ext3_journal_start_sb: Detected aborted journal
EXT3-fs (md2): error: remounting filesystem read-only
EXT3-fs (md2): error: remounting filesystem read-only
__journal_remove_journal_head: freeing b_committed_data
__journal_remove_journal_head: freeing b_frozen_data
__journal_remove_journal_head: freeing b_committed_data
ata2.00: exception Emask 0x0 SAct 0x1000006 SErr 0x0 action 0x0
ata2.00: irq_stat 0x40000008
ata2.00: failed command: READ FPDMA QUEUED
ata2.00: cmd 60/08:c0:58:11:38/00:00:01:00:00/40 tag 24 ncq 4096 in
         res 51/40:02:5e:11:38/00:00:01:00:00/40 Emask 0x409 (media error) <F>
ata2.00: status: { DRDY ERR }
ata2.00: error: { UNC }
ata2.00: configured for UDMA/133
sd 1:0:0:0: [sdb]
Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
sd 1:0:0:0: [sdb]
Sense Key : Medium Error [current] [descriptor]
Descriptor sense data with sense descriptors (in hex):
        72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00
        01 38 11 5e
sd 1:0:0:0: [sdb]
Add. Sense: Unrecovered read error - auto reallocate failed
sd 1:0:0:0: [sdb] CDB:
Read(16): 88 00 00 00 00 00 01 38 11 58 00 00 00 08 00 00
end_request: I/O error, dev sdb, sector 20451678
EXT3-fs error (device md2): ext3_get_inode_loc: unable to read inode block - inode=637807, block=2555947
ata2: EH complete

Ваш диск sdb умирает и Unrecovered read error - auto reallocate failed ошибка означает, что нет возможности перераспределить сбойные блоки, и диск может умереть в любой момент. В наших случаях диск с такими ошибками в dmesg умрет в ближайшее время (один, максимум два месяца). Также, если ваши диски выросли Reallocated_Sector_Ct в SMART, это означает, что ваш диск находится в аварийном состоянии, и вы должны предупредить о его замене.