歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux下的多版本管理工具—alternatives

Linux下的多版本管理工具—alternatives

日期:2017/2/28 13:43:56   编辑:Linux教程

alternatives是Unix下重要的版本管理工具,它最早是在debain的系統中出現,因為它強大實用性使得它在各個Unix環境中大量的移植使用,而我們在平時的時候可能最經常使用的是java的openjdk工具包的版本轉換,而在alternatives實現多版本是使用替換系統中命令的link指向來實現版本的轉換,它默認的多版本link文件都是放在/etc/alternatives路徑下,在實際生產中可以用他來管理系統中不同軟件的版本問題。

在這裡就用openjdk工具包做例子,openjdk工具包下的java虛擬機在平時大量的模擬java的環境時都會被使用到,在這裡我們可以看下用yum安裝的rpm包java的系統文件

[root@localhost ~]# ll $(which java)
lrwxrwxrwx. 1 root root 22 12月 31 12:02 /usr/bin/java -> /etc/alternatives/java

可以看出來系統中java的路徑其實是一個link文件,它所指向的就是系統中的/etc/alternatives下的java,現在去/etc/alternatives路徑下看下都有什麼東西

[root@localhost ~]# cd /etc/alternatives
[root@localhost alternatives]# ll java
lrwxrwxrwx. 1 root root 46 12月 31 12:02 java -> /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java

在這裡就可以看出系統中的java指令是被指向openjdk1.6版本下,而我們需要切換java的版本也很簡單:

[root@localhost alternatives]# alternatives --config java

共有 2 個程序提供“java”。

選擇 命令
-----------------------------------------------
* 1 /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
+ 2 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java

按 Enter 來保存當前選擇[+],或鍵入選擇號碼:2,在這裡說明一下alternatives的參數選項

--install link name path priority:
用於添加替代系統指令下的文件,就是安裝替換系統中的文件成link文件
--remove name path:
移除用alternatives管理的關系
--set name path
手動添加鏈接的從屬關系,這個在原debian中是沒有的參數
--config name
對alternatives控制的軟件進行版本修改,用於手動指定軟件版本
--auto name
對alternatives控制的軟件進行自動選項版本,這裡一般是選項系統中最新的版本
--display name
用於顯示alternatives控制的軟件如何替換,替換了那些配置文件、版本等等

總之來說alternatives版本控制器是比較重要的版本管理工具,使用它可以快速管理系統中的軟件版本,以減少去修改大量的環境變量的時間。

Copyright © Linux教程網 All Rights Reserved