為什麽開源外圍包安裝指導都是按照到/usr/local/目錄下,/usr/local與/usr的區別
阿新 • • 發佈:2018-10-30
doc pre 為什麽 div cal sbin tor 很多 tar
很多應用都安裝在/usr/local下面,那麽,這些應用為什麽選擇這個目錄呢?Automake工具定義了下面的一組變量:
Directory variable Default value prefix /usr/local exec_prefix ${prefix} bindir ${exec_prefix}/bin libdir ${exec_prefix}/lib … includedir ${prefix}/include datarootdir ${prefix}/share datadir ${datarootdir} mandir ${datarootdir}/man infodir ${datarootdir}/info docdir ${datarootdir}/doc/${PACKAGE}
而GUN下面絕大部分應用的編譯系統都是用automake。所以很多很多應用都安裝在了/usr/local/目錄下。
另外,需要註意usr 指 Unix System Resource,而不是User。通常/usr/bin下面的都是系統預裝的可執行程序,會隨著系統升級而改變。/usr/local/bin目錄是給用戶放置自己的可執行程序的地方,推薦放在這裏,不會被系統升級而覆蓋同名文件。
如果兩個目錄下有相同的可執行程序,誰優先執行受到PATH環境變量的影響,比如我的一臺服務器的PATH變量為
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
這裏/usr/local/bin優先於/usr/bin。
為什麽開源外圍包安裝指導都是按照到/usr/local/目錄下,/usr/local與/usr的區別