Quando executo logadm
minha máquina Solaris 10, recebo a extensão exe status - 1
.
Meu objetivo é executar o comando comexe status - 0
O que preciso fazer para executar o meu logadm
com êxito e obter o exe status – 0
?
star1a:/ ROOT > /usr/sbin/logadm -rv hw-alarms_2
# loading /etc/logadm.conf
# processing logname: hw-alarms_2
# /etc/logadm.conf unchanged
star1a:/ ROOT > echo $?
1
Responder1
Se hw-alarms_2
não for um nome de log definido, você não poderá obter um status de saída 0 com o comando que está usando.
Seu comando
logadm -rv hw-alarms_2
está solicitando que as entradas correspondentes ao nome do log hw-alarms_2
sejam removidas do arquivo /etc/logadm.conf.
O status de saída 1
informa que ocorreu um erro. A saída detalhada diz que /etc/logadm.conf unchanged
isso provavelmente ocorre porque você não tem um nome de log hw-alarms_2
definido.
Você percebe que a -r
opção logadm remove o nome de log especificado de logadm.conf, não é?
-r
Remova todas as entradas correspondentes ao nome de log especificado do /etc/logadm.conf.
Portanto, depois de executar o comando com êxito, ele não será executado novamente, a menos que você altere o nome do log para remover ou colocar o original novamente.
por exemplo, adicione uma entrada ao logadm.conf
logadm -C2 -w mylog /my/really/long/log/file/name
delete isso
logadm -rv mylog
# loading /etc/logadm.conf
# processing logname: mylog
# writing changes to /etc/logadm.conf
echo $?
0
Agora tente excluí-lo novamente
logadm -rv mylog
# loading /etc/logadm.conf
# processing logname: mylog
# /etc/logadm.conf unchanged
echo $?
1
Não podemos porque já o excluímos. Então vamos adicioná-lo novamente
logadm -C2 -w mylog /my/really/long/log/file/name
e exclua-o novamente
logadm -rv mylog
# loading /etc/logadm.conf
# processing logname: mylog
# writing changes to /etc/logadm.conf
echo $?
0
Bingo!