FastNetMon

Tuesday, 2 August 2011

Запуск arcconf на read only (ro) файловой системе

Итак, есть сервер с контроллером Adaptec, ФС которого перешла в RO. Очевидный вариант - проверить состояние массива утилитой arcconf, но она не срабатывает!

arcconf getconfig 1 ld
Could not open log file: /var/log/UcliEvt.log

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

umask(022) = 077
poll(0, 0, 50) = 0 (Timeout)
umask(077) = 022
open("/var/lock/.aac0lock", O_RDWR) = -1 EROFS (Read-only file system)
umask(022) = 077
poll(0, 0, 50) = 0 (Timeout)
umask(077) = 022
open("/var/lock/.aac0lock", O_RDWR) = -1 EROFS (Read-only file system)
umask(022) = 077
poll(0, 0, 50) = 0 (Timeout)
umask(077) = 022
open("/var/lock/.aac0lock", O_RDWR) = -1 EROFS (Read-only file system)
umask(022) = 077
poll(0, 0, 50) = 0 (Timeout)
umask(077) = 022
open("/var/lock/.aac0lock", O_RDWR) = -1 EROFS (Read-only file system)
umask(022) = 077
poll(0, 0, 50) = 0 (Timeout)
umask(077) = 022
open("/var/lock/.aac0lock", O_RDWR) = -1 EROFS (Read-only file system)
umask(022) = 077
poll(0, 0, 50) = -1 EINTR (Interrupted system call)

То есть, программа не могла создать лок-файл. Фиксится легко:
mount -t tmpfs none /var/lock

Все, после этого сработало на ура:
arcconf getconfig 1 ld
Could not open log file: /var/log/UcliEvt.log
Controllers found: 1
----------------------------------------------------------------------
Logical device information
----------------------------------------------------------------------
Logical device number 0
Logical device name : Device 0
RAID level : 10
Status of logical device : Optimal
Size : XXXXX MB
Stripe-unit size : 256 KB
Read-cache mode : Enabled
MaxIQ preferred cache setting : Enabled
MaxIQ cache setting : Disabled
Write-cache mode : Enabled (write-back)
Write-cache setting : Enabled (write-back)
Partitioned : Yes
Protected by Hot-Spare : No
Bootable : Yes
Failed stripes : No
Power settings : Disabled
--------------------------------------------------------
Logical device segment information
--------------------------------------------------------
Group 0, Segment 0 : Present (0,0) 6SJ0ET5R0000M124SKJU
Group 0, Segment 1 : Present (0,1) 6SJ0DRBM0000M125DK6G
Group 1, Segment 0 : Present (0,2) 6SJ0EET40000M125DNTK
Group 1, Segment 1 : Present (0,3) 6SJ0ERJZ0000M1214JZD



Command completed successfully.
Could not open log file: /var/log/UcliEvt.log

4 comments :

  1. А в чём была проблема разобрались, почему она ушла в ro ?

    ReplyDelete
  2. Таймаут контроллера, линукс его воспринял как отказ дискового устройства.

    ReplyDelete
  3. А как исправили? Просто у меня похожая ситуация периодически / переходит в ro.

    ReplyDelete
  4. В смысле? Ну значит сбоит контроллер / отказали диски, итд итп. arcconf / ld / pd / ad и там будет видно, кто виноват.

    ReplyDelete

Note: only a member of this blog may post a comment.