溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 服務器 > 
  • 覆蓋原先的PATH導致命令失效提示command not found的解決方法

覆蓋原先的PATH導致命令失效提示command not found的解決方法

發(fā)布時間:2020-09-11 16:41:25 來源:腳本之家 閱讀:188 作者:杰瑞26 欄目:服務器

一個同事找我?guī)退ㄎ唬瑸槭裁此腖INUX服務器很多的命令都使用不了,提示(command not found),而且更要命的是很多系統(tǒng)服務,腳本都跑不了。問了下,你之前做了些什么操作呢? 他說也做什么操作啊,只不過在/etc/profile文件里面增加了export PATH,又問,你怎么設置的呢? 得到的答案是:

[root@localhost ~]# vim /etc/profile 
export PATH=/usr/lib/jenkins/
[root@localhost ~]# source /etc/profile 

他說只不過添加了jenkins的默認工作目錄,然后用source讓配置文件生效。其實問題恰恰就出在這里!

PATH是系統(tǒng)環(huán)境路徑,系統(tǒng)的所有命令,腳本執(zhí)行都是按照PATH的路徑來搜索的。但是如果export PATH=/usr/lib/jenkins/,就拿之前系統(tǒng)設置的目錄,比如(/bin/; /sbin等存放系統(tǒng)命令的目錄)全部覆蓋了,變成了jenkins工作命令,而jenkins目錄下肯定是找不到ls, pwd, cd等系統(tǒng)命令的,結果造成所有的命令,腳本,服務都跑不了,這就是造成這起血案的主要原因!

真正系統(tǒng)PATH要如何設置呢? 

如果是短期設置的話:

export PATH=$PATH:/usr/lib/jenkins/

如果是長期設置的話:

[root@localhost ~]# vim /etc/profile 
export PATH=$PATH:/usr/lib/jenkins/
[root@localhost ~]# source /etc/profile

這樣的話,就是在原先的設置中添加新的搜索路徑,而不會覆蓋原先的PATH了。 

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。如果你想了解更多相關內容請查看下面相關鏈接

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI