NASxDUAL에는 기본으로(?) java 1.7(JDK7)이 설치되어 있습니다. 만약 관리자 페이지의 Plug-in App에서 JAVA VM이 표시되지 않는다면 자바로 된 플러그인을 설치하면 자동으로 설치됩니다.

 

java 1.7 설치 위치: /mnt/HDDX/@plugin/system/bin/java

 

최근에 배포되는 자바로 만들어진 각종 프로그램들이 java 1.8(JDK8) 이상에서 실행되는 경우가 많아서 java 1.8(JDK8)을 설치하는 방법을 설명합니다(참고로 저는 NAS4dual을 사용 중입니다).

다운로드

 

먼저 아래 사이트에 접속하여 Java SE Embedded Version 8 중에서 ” ARMv5/ARMv6/ARMv7 Linux – SoftFP ABI, Little Endian 2“용으로 빌드된 파일을 다운로드합니다.

https://www.oracle.com/technetwork/java/embedded/embedded-se/downloads/index.html

글쓰는 현재 기준 파일명: ejdk-8u211-linux-arm-sflt.tar.gz

설치

 

먼저 텔넷 또는 ssh로 터미널에 접속한 후 아래 명령(localhost> 이후부터 입력, 경로는 각자 환경에 맞게 수정)으로 자바를 설치할 폴더를 생성합니다. 또는 관리 UI에서 생성해도 됩니다.

localhost> mkdir -p /mnt/HDD2/app/java

위 폴더에 다운로드한 ejdk-8u211-linux-arm-sflt.tar.gz을 넣어주시고,

생성된 폴더로 이동합니다.

localhost> cd /mnt/HDD2/app/java

아래 명령으로 압축을 풀어줍니다.

localhost> tar xvzf ejdk-8u211-linux-arm-sflt.tar.gz

설치가 완료되었습니다.

 

정상 동작되는지 확인하기 위해서 아래 명령을 입력합니다(NASxdual에서는 root 사용자만 java를 실행할 수 있습니다).

localhost> su –

localhost> /mnt/HDD2/app/java/ejdk1.8.0_211/linux_arm_sflt/jre/bin/java -version

 

아래와 같은 결과가 나오면 정상 동작하는 것입니다.

java version “1.8.0_211
Java(TM) SE Embedded Runtime Environment (build 1.8.0_211-b12, headless)
Java HotSpot(TM) Embedded Client VM (build 25.211-b12, mixed mode)

 

이제 다운로드한 파일을 삭제합니다.

localhost> rm -rf /mnt/HDD2/app/java/ejdk*.gz

 

자바로된 프로그램을 실행할 때는 환경변수 JAVA_HOME을 설정하거나 전체 경로를 입력하면 됩니다. (NASxdual에서는 root 사용자만 java를 실행할 수 있습니다.)

export JAVA_HOME=/mnt/HDD2/app/java/ejdk1.8.0_211/linux_arm_sflt/jre
export PATH=$JAVA_HOME/bin:$PATH
java -jar Server.jar

 

또는 아래처럼 직접 경로 입력해서 실행합니다.

localhost> /mnt/HDD2/app/java/ejdk1.8.0_211/linux_arm_sflt/jre/bin/java -jar Server.jar

 

위와 같이 자바를 설치하면 java 바이너리가 4개가 생성됩니다. 임베디드 버전이라서 그런지 4개마다 뭔가 조금씩 다른 것 같습니다. 자바로 된 프로그램을 실행하다가 혹시나 에러가 발생하면 4개 모두로 테스트해보세요.

  • /mnt/HDD2/app/java/ejdk1.8.0_211/linux_arm_sflt/jre/bin/java
  • /mnt/HDD2/app/java/ejdk1.8.0_211/linux_arm_sflt/compact1/bin/java
  • /mnt/HDD2/app/java/ejdk1.8.0_211/linux_arm_sflt/compact2/bin/java
  • /mnt/HDD2/app/java/ejdk1.8.0_211/linux_arm_sflt/compact3/bin/java