歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux主機root切換用戶獲取$?結果異常案例

1. 問題描述

首先是NBU備份I2000數據庫時,監控頁面查看到總是失敗,但事實上,rman備份操作已經完成,只是最後取$?時異常導致而已。

其次,在一次業務升級中,ideploy工具自動升級之前做的環境檢查,各個部件都檢查不通過,無法自動升級,最後手工做的升級,幾百塊單板,真是悲劇。

2. 問題現象

NDMC21:~ # su - sshusr -c "ls";echo $? 
bin breeze check.sh Documents ideploy_file_history nohup.out public_html 
1

可以看到,正常來說,最後取$?時,應該返回0才對的。

3. 問題分析

針對這個問題,特地向SuSE原廠提了個case,也收集了各方面日志,甚至是strace的日志,問題一直無法定位。

我覺得這個問題以前不存在,最近才出現,應該是與近期的安全加固有極大的關系,於是讓做安全加固的兄弟對OS層面的所有操作都整理出來。

結果為:主要是由於/etc/security目錄權限被修改了,/etc/security -- 原來權限:755,做了安全加固後,權限被修改為:600。

我在幾台主機上測試,都是OK的:

NDMC21:~ # ls -ld /etc/security/ 
drw------- 2 root root 368 Jul 12 00:24 /etc/security/
NDMC21:~ # su - sshusr -c "ls";echo $? 
bin breeze check.sh Documents ideploy_file_history nohup.out public_html 
1
NDMC21:~ # chmod 755 /etc/security 
NDMC21:~ # su - sshusr -c "ls";echo $? 
bin breeze check.sh Documents ideploy_file_history nohup.out public_html 
0

blog地址:http://blog.csdn.net/hw_libo/article/details/38979791
-- Bosco QQ:375612082
版權所有,文章允許轉載,但必須以鏈接方式注明源地址,否則追究法律責任!

Copyright © Linux教程網 All Rights Reserved