当我logadm
在 Solaris 10 机器上运行时,我得到了exe status - 1
。
我的目标是使用以下命令运行命令exe status - 0
为了logadm
成功运行并获得,我需要做什么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
答案1
如果hw-alarms_2
不是定义的日志名,则无法使用所使用的命令获得退出状态 0。
您的命令
logadm -rv hw-alarms_2
要求hw-alarms_2
从 /etc/logadm.conf 文件中删除与日志名称相对应的条目。
退出状态1
告诉您发生了错误。详细输出显示/etc/logadm.conf unchanged
,这很可能是因为您没有hw-alarms_2
定义日志名称。
您是否意识到-r
logadm 选项会从 logadm.conf 中删除指定的日志名?
-r
从 /etc/logadm.conf 中删除与指定日志名称相对应的所有条目。
因此,一旦您成功运行了一次命令,它就不会再次执行此操作,除非您更改日志名称以删除或放回原始日志名称。
例如,向 logadm.conf 添加一个条目
logadm -C2 -w mylog /my/really/long/log/file/name
删除它
logadm -rv mylog
# loading /etc/logadm.conf
# processing logname: mylog
# writing changes to /etc/logadm.conf
echo $?
0
现在尝试再次删除它
logadm -rv mylog
# loading /etc/logadm.conf
# processing logname: mylog
# /etc/logadm.conf unchanged
echo $?
1
我们不能,因为我们之前删除了它。所以让我们重新添加它
logadm -C2 -w mylog /my/really/long/log/file/name
然后再次删除
logadm -rv mylog
# loading /etc/logadm.conf
# processing logname: mylog
# writing changes to /etc/logadm.conf
echo $?
0
答对了 !