여러 버전의 JDK를 사용하고 싶은 경우 때문에 알게된 명령어가 바로 "update-alternatives" 이다.
기본적인 사항을 한 번 살펴보기 위해서 java를 살펴보자.
$ whereis java
java: /usr/bin/java /usr/bin/X11/java /usr/local/java /usr/share/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
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 수동 모드
기본 사항[*]을 사용하려면 엔터, 다른 것을 사용하려면 번호를 입력하십시오:
$
대체 항목 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 |