여러 버전의 JDK를 사용하고 싶은 경우 때문에 알게된 명령어가 바로 "update-alternatives" 이다.

기본적인 사항을 한 번 살펴보기 위해서 java를 살펴보자.

$ whereis java
java: /usr/bin/java /usr/bin/X11/java /usr/local/java /usr/share/java

여기저기에 위치하고 있는 java 중에서 "/usr/bin/java"에 대해서 조금 더 자세히 살펴보면,

$ ls -al /usr/bin/java
lrwxrwxrwx 1 root root 22  6월  7 22:10 /usr/bin/java -> /etc/alternatives/java

잘 살펴보면, 일반적이지 않은 경로의 링크가 보인다. 바로 "alternatives" 경로가 바로 그것이다.
이러한 설정을 알아보기 위해서 "--config" 옵션을 사용해보면 전체 목록을 보면서 설정도 해볼 수 있다.

$ update-alternatives --config java
대체 항목 java에 대해 (/usr/bin/java 제공) 2개 선택이 있습니다.

  선택       경로                                            우선순위    상태
------------------------------------------------------------
  0            /usr/local/java/jdk1.7.0_60/bin/java   1         자동 모드
* 1            /usr/local/java/jdk1.7.0_60/bin/java   1         수동 모드
  2            /usr/local/java/jdk1.8.0_05/bin/java   2         수동 모드

기본 사항[*]을 사용하려면 엔터, 다른 것을 사용하려면 번호를 입력하십시오:

$

위의 화면을 보면, 설정에 대해서 전반적으로 살펴볼 수 있다.
사실 정보만 보기 위해서는 "--display" 옵션이 맞는 것이지만, 예쁘게 보여주는 것은 "--config" 옵션인 것 같다.



[ 등록하기 ]

특정 패키지를 설치한 후 다음과 같은 명령어로 등록을 할 수 있다.

sudo update-alternatives --install <link> <name> <path> <priority>

각 항목에 대한 설명은 다음과 같다.

옵션 설명
<link>   실행파일 이름으로 /etc/alternatives/<name> 을 가리킨다.
 (예: /usr/bin/pager) 
<name>   해당 링크 그룹의 대표 이름으로, 여러 가지 버전의 패키지들을 대표하는 이름으로 보면 될 것 같다.
 (예: pager)
<path>   alternatives 로 실제 연결할 실행파일 이름으로, 시스템에 설치한 패키지의 실행파일 이름이다.
 (예: /usr/bin/less)
<priority>   automatic 모드에서 어떤 것을 자동으로 선택해서 사용할지 결정할 때 사용되는 우선순위로, 높은 수가 더 높은 우선순위이다.



[ 삭제하기 ]

설정한 내역을 지워버리고 싶을 때에는 다음과 같이 하자.

sudo update-alternatives --remove <name> <path>




[ 설정하기 ]

등록한 내역을 설정하기 위해서는 다음과 같이 하면 된다.

sudo update-alternatives --set <name> <path>



반응형

'OS > Ubuntu' 카테고리의 다른 글

BASH Shell Script  (0) 2015.10.10
Apache2 error(?) - domain name...ServerName  (0) 2015.09.29
리눅스 배포판 인기 순위  (0) 2014.08.17
hostname 확인/변경 하기 (Ubuntu 12.04 / 14.04)  (0) 2014.08.16
fcitx : 한글 입력기 (Ubuntu 14.04)  (2) 2014.08.11

+ Recent posts