Linux的alternatives命令替換自帶軟體版本或選擇軟體版本
阿新 • • 發佈:2018-11-08
一、命令說明
alternatives是專門維護系統命令連結符的工具,其可以對某個工具的多個軟體版本進行管理,通過它可以很方便的設定系統預設使用哪個命令的哪個軟體版本
alternatives和update-alternatives其實一個命令,均指向alternatives
usage: alternatives --install <link> <name> <path> <priority> [--initscript <service>] [--slave <link> <name> <path>]* alternatives--remove <name> <path> alternatives --auto <name> alternatives --config <name> alternatives --display <name> alternatives --set <name> <path> common options: --verbose --test --help --usage --version --altdir <directory> --admindir <directory> 其中, install表示安裝 link是符號連結 name則是識別符號 path是執行檔案的路徑 priority則表示優先順序
二、java安裝示例
alternatives --install /usr/bin/java java /usr/java/default/bin/java 200 alternatives --set java /usr/java/default/bin/java alternatives --install /usr/bin/javac javac /usr/java/default/bin/javac 200 alternatives --set javac /usr/java/default/bin/javac
檢視連結
[[email protected] default]# ls -l /usr/bin/java lrwxrwxrwx.1 root root 22 Nov 8 08:23 /usr/bin/java -> /etc/alternatives/java [[email protected] default]# ls -l /etc/alternatives/java lrwxrwxrwx. 1 root root 26 Nov 8 08:23 /etc/alternatives/java -> /usr/java/default/bin/java
三、原理說明
系統路徑/usr/bin/<name>這個軟連結,指向了/etc/alternatives/<name>這個軟連結,該軟連結指向了該<name>命令的實際可執行檔案;
上面例子通過兩次軟連結,我們可以定位到實際的java檔案;
四、版本管理
alternatives版本的管理是通過改變/etc/alternatives/ --> /實際可執行檔案 的軟連結來進行的。
[[email protected] default]# alternatives --config java There is 1 program that provides 'java'. Selection Command ----------------------------------------------- *+ 1 /usr/java/default/bin/java Enter to keep the current selection[+], or type selection number:
輸入Selection下面的+號就可以實現版本的選擇了,由於只安裝了一個版本,所以選擇1就可以了,多版本時會有其他的序號。