Xmanager 게시판

HP-UX 11.23 에서 java를 찾지 못해요.

최종입력: 2009-02-24 18:44 - 넷사랑 | 답글: 3건

 
2009-02-24 11:02 - 김효규

HP-UX 11.23 에서 java를 찾지 못해요.

 
서버 OS는 HP-UX 11.23 입니다.
서버 모델은 ia64 hp server rx7640 이구요.

Xmanager를 이용하지 않고 테라텀과 같은 터미널 접속 프로그램으로 접속해서 java -version 이라고 치면 java 버젼을 보여줍니다.

$ java -version
java version "1.4.2.20"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2.20-080814-16:18)
Java HotSpot(TM) Server VM (build 1.4.2 1.4.2.20-080814-22:10-IA64N IA64, mixed mode)

.profile에 java path가 적용되어 있다는 거죠. 그런데 Xmanager를 통해서 터미널 접속하면 java path를 찾지 못합니다.

$ java -version
/usr/bin/ksh: java: not found


그래서 혹시나 해서 . ./.profile을 적용 시키면 path가 적용되다가 창을 닫고 다시 열면 java path를 못 찾았습니다.

참고로
한 개 서버에 2개 계정을 만들고 1번 계정은 jdk 1.4 를 2번 계정은 java 6 을 설치했습니다. java 6을 설치한 계정으로 접속하면 이상없이 java path가 잡혀져 있고 java1.4는 path를 찾지 못하고 있습니다.

제품명 : Xmanager 3.0
연결 방법 : XDMCP 접속
2009-02-24 17:09 - 넷사랑

Re: HP-UX 11.23 에서 java를 찾지 못해요.

 
안녕하십니까?
넷사랑컴퓨터 기술지원입니다.

Xmanager는 그래픽 디스플레이 서버로서 원격의 X응용프로그램을 PC 화면에 그려 주기 위한 OS적 성격의 서버 프로그램입니다. 그러므로 Xmanager를 통해서 구동되는 프로그램(이 경우에는 xterm 혹은 dtterm일 것입니다.)과 Xmanager 자체와는 구별이 있어야 합니다.

사용하시는 터미널 프로그램이 어떤 종류인지 모르나 Xmanager를 이용하여 구동 중인 터미널 에뮬레이터는 실행된 후 셸을 구동하게 됩니다. 이 때 셸을 로그인 셸(login shell)로서 구동하느냐 아니면 그냥 셸만 구동하느냐에 따라 사용자 환경 변수가 적재되는 데에 차이가 생기게 됩니다.

터미널 에뮬레이터가 구동 후 셸을 실행할 때 로그인 셸로 구동해야 .profile, .login 파일 등을 읽어 들입니다.

Xstart의 실행 명령에서 다음처럼 명령어 뒤에 '-ls'라는 옵션을 붙여 실행시켜 보십시오.

xterm -ls -display $DISPLAY
dtterm -ls -display $DISPLAY

그래도 문제가 계속될 경우에는 사용하시고자 하는 명령어와 사용 중인 셸에 대한 내용을 알려 주십시오.

감사합니다.
2009-02-24 18:02 - 김효규

Re: Re: HP-UX 11.23 에서 java를 찾지 못해요.(질문)

 
답변 감사합니다.
알려주신 방법으로 했더니 문제가 해결되었습니다.

기존에는 XDMCP를 이용했어요. Xstart를 이용하지 않고 XDMCP를 이용해서 서버에 접근했으면 하거든요.

X윈도우 환경에서 터미널을 들어가면 JAVA 경로를 못찾아요. 이 경우 X윈도우의 터미널은 별도의 셸의 실행하나요?
2009-02-24 18:44 - 넷사랑

Re: Re: Re: HP-UX 11.23 에서 java를 찾지 못해요.(질문)

 
CDE 환경에서 마우스 클릭으로 실행하는 터미널은 로그인 셸 옵션(-ls)이 없습니다. 그리고 로그인 셸이라는 것은 따로 있는 것은 아니고 csh, ksh, bash 등의 셸이 구동 시 로그인 셸로서 구동하느냐 그렇지 않느냐를 선택할 수 있다는 의미입니다.
콘솔에서 로그인할 때 구동되는 셸은 무조건 로그인 셸이 됩니다. 하지만 사용자가 따로 명령어를 입력함으로써 셸을 구동하거나 이처럼 그래픽 터미널 에뮬레이터가 구동하는 셸은 선택을 할 수 있습니다.

원하시는 결과를 얻기 위한 측면에서 말씀드리면 다음 어느 하나를 선택하시면 될 것 같습니다.

1. $HOME/.dtprofile에 다음처럼 원하는 PATH를 추가합니다.

PATH=$PATH:/usr/.../java/bin
export PATH

2. $HOME/.Xdefaults 파일에 다음 내용을 추가합니다. 해당 파일이 없으면 생성합니다. 이 내용은 모든 터미널로 하여금 실행 시의 명령행 인자와 상관없이 로그인 셸을 구동하라는 의미입니다. 이 경우 .profile에 원하는 PATH를 추가한 경우를 가정합니다.

*loginShell : true

위 1과 2는 다음 번 로그인할 때 반영됩니다.

감사합니다.