É possível verificar o valor atual do atributo do dispositivo no AIX 5.3?

2

No AIX, se eu quiser alterar o atributo do dispositivo, posso usar duas maneiras diferentes:

  1. Altere o atributo e reconfigure o dispositivo. O atributo será alterado imediatamente. Mas se dispositivos são usados (por exemplo, fs montados), este caminho não pode ser usado.

    # chdev -l hdisk6 -a hcheck_interval=20 Method error (/etc/methods/chgdisk): 0514-062 Cannot perform the requested function because the specified device is busy.

  2. Altere o atributo, mas não reconfigure o dispositivo. O atributo será alterado somente após a reconfiguração do dispositivo (geralmente após a reinicialização)

    # chdev -l hdisk6 -a hcheck_interval=20 -P hdisk6 changed

Portanto, deve haver um método para verificar a conformidade - "qual é o valor atual do atributo do dispositivo?"

No AIX 6.1 ou mais recente, posso verificá-lo pelo comando lsattr com as opções "-P" (diferentemente de "-E", que mostra o valor armazenado no ODM, que pode ser diferente do valor atual)

# for dev in $(lsdev | awk '/^hdisk/ { print $1; }'); do echo $dev $(lsattr -Pl $dev -a
 hcheck_interval ) $(lsattr -El $dev -a hcheck_interval);done
hdisk0 hcheck_interval 20 Health Check Interval True hcheck_interval 20 Health Check Interval True
[...]
hdisk3 hcheck_interval 20 Health Check Interval True hcheck_interval 20 Health Check Interval True
hdisk4 hcheck_interval 0 Health Check Interval True hcheck_interval 0 Health Check Interval True
hdisk6 hcheck_interval 0 Health Check Interval True hcheck_interval 20 Health Check Interval True

No exemplo acima, eu posso ver que hdisk4 e hdisk6 são executados com hcheck_interval = 0 (não compatível), mas hdisk6 após reconfigurar (após a reinicialização) será executado com hcheck_interval = 20 (compatível)

Mas no AIX 5.3 ou ancião não existe a opção "-P" no utilitário lsattr. É possível verificar o valor real do atributo do dispositivo no AIX 5.3?

atualização

no aix 6.1 ou mais recente eu também posso verificar o valor atual com kdb. Mas eu ainda não tenho como verificar o valor atual em aix 5.3

# kdb
[...]
(0)> adevq
NAME            ADDR               STATE      ACTIVE_IO  ST.MCHNE.
hdisk2          0xF1000100379CA800 0x1        0x0        0x0
hdisk1          0xF1000100379CA000 0x1        0x0        0x0
hdisk0          0xF100010037A0C800 0x1        0x0        0x0
hdisk7          0xF100010FECE89800 0x1        0x0        0x0
hdisk8          0xF100010FECF5A800 0x1        0x0        0x0
hdisk6          0xF100010FED079800 0x1        0x0        0x0

(0)> adevq 0xF100010FED079800
[...]
    hcheck_t &hcheck = 0xF100010FED079890
[...]
(0)> ahcheck 0xF100010FED079890
struct health_check {
    struct watchdog &watch = 0xED079890
    uint mode = 0x2
    uint interval = 0x0
    uint cmd = 0x0
    struct device_queue *dev_ptr = 0xF100010FED079800
}
    
por Oleg Korchagin 06.01.2015 / 16:33

0 respostas

Tags