SUSE Linux執行基本命令出現command-not-found

dayong2015發表於2015-05-31
今天遠端登入到系統上後,執行su、ls等命令出現如下錯誤提示:
hana:~ # su - hdbadm
If 'su' is not a typo you can run the following command to lookup the package that contains the binary:
    command-not-found su
-bash: su: command not found
hana:~ # ls
If 'ls' is not a typo you can run the following command to lookup the package that contains the binary:
    command-not-found ls
-bash: ls: command not found
奇了怪了,昨天還好好的,今天怎麼突然出現這個問題,有意思,哈哈。
查詢相關資料後,說是環境變數的問題,操作如下:
先用whereis或者which命令檢視一下有沒有這個命令具體執行
hana:~ # whereis ls
If 'whereis' is not a typo you can run the following command to lookup the package that contains the binary:
    command-not-found whereis
-bash: whereis: command not found
hana:~ # which ls
If 'which' is not a typo you can run the following command to lookup the package that contains the binary:
    command-not-found which
-bash: which: command not found
檢視當前系統的環境變數:
hana:~ # echo $PATH
/var/j2sdk1.4.2_19/bin
哪個小夥伴登入系統改我的環境變數了,讓我有機會接觸這個問題,當時配置好SAP HANA之後把相關資訊發給了測試人員,先謝謝了哈。
嘗試著重啟了一把系統,結果輸入正確的使用者名稱和密碼,伺服器端也進不去了,越來越有意思了,如下:

但是遠端依舊可以登入,還是你最可愛,看來只能遠端登入了,既然是環境變數的問題,就修改唄,如下:
hana:~ # export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
hana:~ # ls
.ICEauthority  .exrc            .gvfs        .pulse                Desktop
.bash_history  .gconf           .hdb         .pulse-cookie         Documents
.bash_profile  .gconfd          .kbd         .skel                 autoinst.xml
.config        .gnome2          .local       .viminfo              bin
.dbus          .gnome2_private  .mailcap     .xsession-errors      inst-sys
.dmrc          .gnupg           .mime.types  .xsession-errors.old
.esd_auth      .gstreamer-0.10  .nautilus    51049354
hana:~ # su - hdbadm
hana:/usr/sap/HDB/HDB00>
以上設定只是對當前會話有效,下面把它加入到配置檔案中,使其對所有會話有效
首先要找到為什麼PATH=/var/j2sdk1.4.2_19/bin/java,存在於哪個配置檔案中,然後將其註釋掉,如下:
hana:~ # vi .bash_profile
hana:~ # source .bash_profile
hana:~ # cat .bash_profile
export JAVA_HOME=/var/j2sdk1.4.2_19/bin/java
#export PATH=/var/j2sdk1.4.2_19/bin            
其實PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin 是在使用者家目錄下隱藏檔案.profile中指定的。

之後開啟其他會話視窗就OK了,伺服器端也能登入了,一系列連帶問題都受那個環境變數配置的影響,可謂是牽一髮而動全身,虛驚一場。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29634949/viewspace-1679768/,如需轉載,請註明出處,否則將追究法律責任。

相關文章