一般默認情況下,普通用戶的可執(zhí)行命令位于/bin, /usr/bin, /usr/local/bin, 系統(tǒng)管理員可執(zhí)行命令位于/sbin, /usr/sbin, /usr/local/sbin這幾個目錄,進去睢睢,一目了然.
創(chuàng)新互聯(lián)專注于青海企業(yè)網(wǎng)站建設,自適應網(wǎng)站建設,商城網(wǎng)站建設。青海網(wǎng)站建設公司,為青海等地區(qū)提供建站服務。全流程按需求定制設計,專業(yè)設計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務
是root用戶還是普通用戶
如果是root用戶下,檢查這些命令是否還在。一般在/usr/bin ? /usr/sbin。
在/root用戶下的.profile 文件中加上 ?path=/usr/bin;/usr/sbin ?,然后source ?.profile,使變量生效,然后測試命令是否可用
如果是普通用戶,需要在普通用戶的home目錄下設置.profile
命令不能用了主要是$PATH變量錯誤的關(guān)系。
方法一:
如果只是在shell下
export
命令改的名字的話
直接restart。
方法二:
更改配置文件,可以
/bin/vi
配置文件就行了,也就是要通過指定命令所在路徑來運行命令修復配置就行了。
一般可能是在更改$PATH時命令錯誤搞成的的這種情況,
比如想增加/b
進path
export
PATH=$PATH:/b
OR
export
PATH=/b:$PATH
單獨
export
PATH=/b
會使你其他PATH全部消失
只剩下
/b
$PATH:/b
和
export
PATH=/b:$PATH
區(qū)別是搜索順序不同。
在Linux中使用shell命令,不管是root用戶還是普通用戶,很多命令(如 ,fdisk ; ifconfig)等都會無效,系統(tǒng)出現(xiàn):"bash: .. command not found"。這些命令都有一個共同的特點:存在于 /sbin 這個目錄下。這時嘗試這樣做[linux@axws ~]$/sbin/ifconfig 我們發(fā)現(xiàn)命令能夠正常執(zhí)行,這說明不是安全限制,很可能是PATH出了問題。原因是/sbin的目錄路徑(系統(tǒng)用戶目錄)不在root的$PATH變量中造成的。
關(guān)鍵:PATH路徑設置問題。
首先切換到root,再試用一下命令,能用的話跳過下面這步直接修改用戶目錄下的這個文件就可以了。若還是不能用首先修改管理員的PATH,方法:
(1)進入到用戶主目錄:cd ~ ;
(2)編輯這個隱藏文件:vi .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
unset USERNAME
修改其中PATH=$PATH:$HOME/bin其后添加“:/sbin”冒號不算。
(3):wq保存退出;
(4)重啟系統(tǒng)或執(zhí)行source .bash_profile重置命令路徑。
接著執(zhí)行/sbin下命令,應該可以了,exit退出管理員身份,再執(zhí)行/sbin下命令,發(fā)現(xiàn)還是不能用,好,此時可以先用echo $PATH查看所在路徑,若沒有/sbin則修改用戶主目錄下的這個文件:
(1)cd ~;
(2)vi .bash_profile按照上面的做同樣的改動,保存退出:wq;
(3)重啟系統(tǒng)或執(zhí)行source .bash_profile。
然后就可以了。如果還不行,把這行export PATH=/sbin:$PATH 加入到.bash_profile文件的最后就好。
/sbin下的命令是給root使用的,對普通用戶一般沒什么用處,如果root用戶也用不了那就是路徑設置問題。