自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux常見系統(tǒng)故障:su切換用戶帶來的疑惑

系統(tǒng) Linux
由于在線業(yè)務(wù)的需要,客戶沒有考慮太多就直接重啟了服務(wù)器,系統(tǒng)重新啟動(dòng)后沒有出現(xiàn)問題,可是接下來,當(dāng)客戶準(zhǔn)備切換到oracle用戶下啟動(dòng)數(shù)據(jù)庫(kù)時(shí),怎么都無法進(jìn)行su切換,于是問題出現(xiàn)了。

[[286383]]

這是一個(gè)客戶的案例,客戶的一臺(tái)Oracle數(shù)據(jù)庫(kù)服務(wù)器突然宕機(jī)了,由于在線業(yè)務(wù)的需要,客戶沒有考慮太多就直接重啟了服務(wù)器,系統(tǒng)重新啟動(dòng)后沒有出現(xiàn)問題,可是接下來,當(dāng)客戶準(zhǔn)備切換到oracle用戶下啟動(dòng)數(shù)據(jù)庫(kù)時(shí),怎么都無法進(jìn)行su切換,于是問題出現(xiàn)了。

1、案例現(xiàn)象

在root用戶下,su切換到一個(gè)普通用戶oracle卻發(fā)生了錯(cuò)誤,如圖1所示。

圖1  su切換發(fā)生Permission denied錯(cuò)誤

于是,嘗試直接通過oracle用戶登錄系統(tǒng),發(fā)現(xiàn)此時(shí)的oracle用戶也無法登錄了,出現(xiàn)與上面同樣的錯(cuò)誤。

2、解決思路

從上面錯(cuò)誤提示可知是權(quán)限出現(xiàn)了問題,那么可以從權(quán)限入手進(jìn)行排查,基本思路如下:

● 用戶目錄/home/oracle權(quán)限問題。

● su程序執(zhí)行權(quán)限問題。

● 程序依賴的共享庫(kù)權(quán)限問題。

● SELinux問題導(dǎo)致。

● 系統(tǒng)根空間問題。

3、排查問題

根據(jù)上面的思路,逐一檢查,考慮到su在切換到oracle用戶時(shí)會(huì)讀取oracle目錄下的環(huán)境變量配置文件,因此,首先檢查/home/oracle目錄的權(quán)限是否存在問題: 

  1. [root@loaclhost home]# ls -al /home|grep oracle  
  2. drwx---- 4 oralce  oinstall 4096 01-31 10:45 oracle 

從輸出可知,/home/oracle目錄的屬主是oracle用戶,而oracle用戶對(duì)這個(gè)目錄具有“rwx”權(quán)限,因此,oracle用戶目錄的權(quán)限設(shè)置是正確的,可以排除這個(gè)問題。

接著檢查su執(zhí)行權(quán)限問題: 

  1. [root@loaclhost home]# 11 /bin/su  
  2. -rwsr-xr-x 1 root root 24120 2007-11-30 /bin/su 

可見su命令執(zhí)行權(quán)限也沒有問題,這個(gè)問題也排除了。

繼續(xù)檢查su依賴的共享庫(kù)權(quán)限,使用ldd命令檢查su命令依賴的共享庫(kù)文件,如圖2所示。

圖2  通過ldd命令檢查su命令依賴的共享庫(kù)文件

根據(jù)上面的操作,依次檢查su命令依賴的每個(gè)庫(kù)文件的權(quán)限,發(fā)現(xiàn)也都是正常的,都具有可執(zhí)行權(quán)限,因此,共享庫(kù)的問題也排除了。

根據(jù)上面的思路,繼續(xù)檢查SELinux的設(shè)置,執(zhí)行命令如圖3所示。

圖3  檢查SELinux的設(shè)置

由輸出可知,SELinux處于關(guān)閉狀態(tài),這個(gè)原因也排除了。

到目前為止,問題變得撲朔迷離,到底是哪里出現(xiàn)問題了呢?作為L(zhǎng)inux運(yùn)維人員,例行檢查系統(tǒng)根分區(qū)狀態(tài)是非常必要的,那么首先檢查一下根分區(qū)的磁盤空間大小,發(fā)現(xiàn)剩余空間還有很多,排除空間問題。既然報(bào)的錯(cuò)誤是權(quán)限有問題,那么只要以權(quán)限為線索,不偏離這個(gè)核心就沒錯(cuò),于是繼續(xù)嘗試檢查/home目錄下各個(gè)用戶的權(quán)限,執(zhí)行命令如圖4所示。

圖4  檢查/home目錄下各個(gè)用戶的權(quán)限

從輸出看每個(gè)用戶的目錄權(quán)限,都是“rwx------”,即“700”,完全沒有問題。仔細(xì)檢查思路,發(fā)現(xiàn)當(dāng)前的目光一直停留在用戶對(duì)應(yīng)的目錄上,而忽略了其他輸出信息,而問題就藏在之前沒有關(guān)注的信息中。在這個(gè)命令輸出的前兩行中,第一行權(quán)限對(duì)應(yīng)的目錄是“.”,代表當(dāng)前目錄,也就是/home目錄,權(quán)限為“rwxr-xr-x”,即“755”,第二行權(quán)限對(duì)應(yīng)的目錄是“..”,也就是根目錄,權(quán)限卻為“rw-rw-rw-”,即“666”,此時(shí),問題終于查找到了,原來是根目錄權(quán)限問題。

將根目錄權(quán)限設(shè)置為“rw-rw-rw-”,顯然是不正常的。在正常情況下根目錄的權(quán)限應(yīng)該是“755”,為何設(shè)置成了這樣,很大的可能是誤操作。通過ls命令查看根目錄的權(quán)限時(shí)展示不是很清楚,也容易被很多運(yùn)維人員忽略,其實(shí)我們可以通過另一個(gè)命令stat來詳細(xì)查看每個(gè)目錄的權(quán)限,如圖5所示。

圖5  通過stat命令查看根目錄權(quán)限

通過這個(gè)命令,可以很清晰地看到,根目錄的權(quán)限是“0666”,這才是導(dǎo)致su執(zhí)行失敗的根本原因。

4、解決問題

知道了問題產(chǎn)生的原因,解決問題就非常簡(jiǎn)單,執(zhí)行如下命令: 

  1. [root@localhost ~]# chmod 755 / 

然后就可順利執(zhí)行su切換命令。

最后,做個(gè)簡(jiǎn)單的總結(jié),這個(gè)問題主要是由于根目錄沒有可執(zhí)行權(quán)限,而Linux下所有的操作都是在根目錄下進(jìn)行的,進(jìn)而導(dǎo)致/home/oracle目錄沒有執(zhí)行權(quán)限。其實(shí)根目錄權(quán)限的丟失對(duì)于系統(tǒng)中運(yùn)行的每個(gè)用戶存在同樣的影響。因此,在權(quán)限出現(xiàn)問題時(shí),一定要注意根目錄的權(quán)限。 

 

責(zé)任編輯:龐桂玉 來源: 計(jì)算機(jī)與網(wǎng)絡(luò)安全
相關(guān)推薦

2010-04-22 18:17:29

Aix系統(tǒng)故障

2014-05-09 14:33:35

2009-12-25 10:24:14

2019-12-31 15:52:20

Linux文件命令

2013-04-10 13:52:23

2011-08-29 18:25:19

Ubuntu

2019-08-19 14:51:56

Linux 系統(tǒng) 數(shù)據(jù)

2022-10-18 14:52:36

2019-09-06 08:37:48

LinuxGRUBWindows

2010-11-02 09:53:57

2018-11-26 08:40:43

2011-05-05 17:03:19

硬盤故障

2013-08-26 09:49:10

系統(tǒng)故障

2011-04-26 15:12:58

Windows安全模式

2019-11-06 10:00:21

Linux 技巧操作系統(tǒng)

2013-05-16 09:11:15

系統(tǒng)故障故障排查

2012-12-07 10:25:29

Windows 7系統(tǒng)故障

2010-08-17 15:09:45

綜合布線系統(tǒng)故障

2009-02-01 11:44:00

2011-08-17 10:07:30

windows7故障
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)