源貼地址:http://www.blogjava.net/shaofan/archive/2006/12/25/89801.html
Ubuntu/Debian中的update-alternative用來對系統中不同版本的同個軟件進行管理。
比如,系統中可能裝有GNU的Java編譯器,和SUN的Java編譯器。可以用update-alternatives來設置當前使用它們中的哪一個。
它的原理是在/usr/bin中建立一個link,指向/etc/alternatives中的一個文件,而些文件又是一個link,指向當前使用的命令。比如java命令,查看如下:
/usr/bin/java
$?ls?-l?/usr/bin/java
lrwxrwxrwx?/usr/bin/java?->?/etc/alternatives/java
$?ls?-l?/etc/alternatives/java
lrwxrwxrwx?/etc/alternatives/java?->?/usr/lib/j2re1.5-sun/bin/java
$?ls?-l?/usr/lib/j2re1.5-sun/bin/java
-rwxr-xr-x?/usr/lib/j2re1.5-sun/bin/java
參數--display可以某個軟件的當前配置,如:
java?-?status?is?auto.
link?currently?points?to?/usr/lib/j2re1.5-sun/bin/java
/usr/lib/kaffe/bin/java?-?priority?300
slave?java.1.gz:?/usr/share/man/man1/java.kaffe.1.gz
/usr/lib/j2re1.5-sun/bin/java?-?priority?315
slave?java.1.gz:?/usr/lib/j2re1.5-sun/man/man1/java.1.gz
Current?`best'?version?is?/usr/lib/j2re1.5-sun/bin/java.
status有auto和manual兩種。一旦用戶更改了系統的默認設置,它就變為manual。在auto的狀態下,系統會根據幾套配置的priority來判斷當前應該使用哪套配置。
每 套配置可以設定多個link,它們被稱為slave。上面的例子中,有兩套java的配置。一套是/usr/lib/kafe/bin/java,另一套 是/usr/lib/j2re1.5-sun/bin/java,它們各有一個slave。在些例中這些slave設置的是java命令的 manual。當更改了配置時,用man命令查看的幫助也會相應更改。
參數--config可以用來更改當前的配置。
There?are?2?alternatives?which?provide?`java'.
Selection?Alternative
-----------------------------------------------
1?/usr/lib/kaffe/bin/java
*+?2?/usr/lib/j2re1.5-sun/bin/java
Press?enter?to?keep?the?default*,?or?type?selection?number:?1
Using?`/usr/lib/kaffe/bin/java'?to?provide?`java'.
參數--install用來設置一套新的配置。具體參見 http://blog.stevenkroon.com/2006/08/29/debian-update-alternatives/
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
