제가 사용하는 2011년도산 삼성 노트북에는 i7 쿼드코어(Quad core)에 Intel 기본 그래픽 카드에 Nvidia 그래픽카드도 탑재되어 있습니다. 이 노트북은 그 당시에 제일 잘나가던 사양으로 만든 노트북입니다.

이 노트북은 아직도 현역으로 잘 굴릴 만큼, 아직도 성능이 나쁘지 않습니다.

(그 이유는 제가 엄청나게 개조를 했기 때문이죠. 램(RAM)을 4GB에서 16GB로, 하드디스크를 SSD로 교체 등등)

그러나, 오픈수세(openSUSE)를 설치한 제 노트북에 딥러닝을 위한 GPU를 사용하려니 Nvidia드라이버가 활성화가 안되어 있더군요.

이를 계기로, 저는 오픈수세(openSUSE)에서 노트북에 있는 Nvidia 드라이버를 활성화 시켜보겠습니다.

우선 아래 링크의 글을 보고 따라했습니다.

openSUSE Wiki: NVIDIA Drivers

 

SDB:NVIDIA drivers - openSUSE Wiki

Warning: If you plan to replace your card with a more recent one, it's recommended that you uninstall the driver (reverting back to nouveau) before upgrading your hardware. Situation Installing the official NVIDIA drivers using ZYpp (YaST, YaST2, or Zypper

en.opensuse.org

일단 루트(Root)권한으로 들어갑니다.

첫번째로, Nvidia 드라이버 저장소를 오픈수세(openSUSE) 리눅스에 추가합니다.

# zypper addrepo --refresh https://download.nvidia.com/opensuse/tumbleweed NVIDIA
'NVIDIA' 리포지토리 추가 중 ...................................................................................................................................[완료]
'NVIDIA' 리포지토리가 추가되었습니다.

URI            : https://download.nvidia.com/opensuse/tumbleweed
활성화됨       : 예
GPG 확인       : 예
자동 새로 고침 : 예
우선순위       : 99 (기본 우선순위)

저장소는 우선순위가 없습니다. 모든 저장소는 같은 우선순위를 공유합니다.

이후, 설치된 하드웨어의 정보를 다음의 명령어 lspcilscpu로 확인합니다.

비디오카드 정보 확인은 다음의 명렁어 lspci로 확인합니다.

# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)

CPU아키텍처 정보 확인은 다음의 명령어 lscpu로 확인합니다.

# lscpu | grep Arch   
Architecture:                    x86_64

그리고, 명령어 lspcilscpu를 다음의 명령어 hwinfo로 대체할 수 있습니다.

비디오카드 정보 확인은 다음의 명령으로 확인합니다.

# hwinfo --gfxcard | grep Model
  Model: "nVidia GF119M [GeForce GT 520MX]"
  Model: "Intel 2nd Generation Core Processor Family Integrated Graphics Controller"

CPU아키텍처 정보 확인은 다음의 명령으로 확인합니다.

# hwinfo --arch
Arch: X86_64/grub                                               

정보를 확인하고, 적당한 Nvidia 드라이버 패키지를 찾습니다.

# zypper se x11-video-nvidiaG0*
Retrieving repository 'NVIDIA' metadata --------------------------------------------------------------------------------------------------------------------------[|]

New repository or package signing key received:

  Repository:       NVIDIA
  Key Name:         NVIDIA Corporation <linux-bugs@nvidia.com>
  Key Fingerprint:  9B763D49 D8A5C892 FC178BAC F5113243 C66B6EAE
  Key Created:      Fri Jun 16 01:13:18 2006
  Key Expires:      (does not expire)
  Subkey:           F016EEAA03224CDD 2006-06-16 [does not expire]
  Rpm Name:         gpg-pubkey-c66b6eae-4491871e


Do you want to reject the key, trust temporarily, or trust always? [r/t/a/?] (r): a
Retrieving repository 'NVIDIA' metadata .......................................................................................................................[done]
Building repository 'NVIDIA' cache ............................................................................................................................[done]
Loading repository data...
Reading installed packages...

S | Name                | Summary                                                 | Type
--+---------------------+---------------------------------------------------------+--------
  | x11-video-nvidiaG04 | NVIDIA graphics driver for GeForce 400 series and newer | package
  | x11-video-nvidiaG05 | NVIDIA graphics driver for GeForce 600 series and newer | package

이제, Nvidia 드라이버 패키지를 설치합니다.

# zypper in x11-video-nvidiaG04
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following 13 NEW packages are going to be installed:
  Mesa-libGLESv1_CM1 Mesa-libGLESv2-2 libX11-6-32bit libXau6-32bit libXext6-32bit libglvnd-32bit libxcb1-32bit nvidia-computeG04 nvidia-gfxG04-kmp-default
  nvidia-glG04 plasma5-applet-suse-prime suse-prime x11-video-nvidiaG04

The following 4 recommended packages were automatically selected:
  Mesa-libGLESv1_CM1 Mesa-libGLESv2-2 nvidia-glG04 x11-video-nvidiaG04

13 new packages to install.
Overall download size: 79.2 MiB. Already cached: 0 B. After the operation, additional 366.0 MiB will be used.
Continue? [y/n/v/...? shows all options] (y): y
Do you agree with the terms of the license? [yes/no] (no): yes

설치가 완료되었으면 재부팅 합니다.

재부팅 후에도 Intel 그래픽카드로 사용되는걸 확인할 수 있습니다.
openSUSE에서 Nvidia 그래픽카드 사용 활성화를 하려면 아래의 명령어로 활성화합니다

$ sudo prime-select nvidia
Logout to switch graphics

위의 내용처럼 로그아웃을 하고 난 후 새로 로그인 하면 변경되는 걸 확인할 수 있습니다.

ps. 이제 이 노트북으로 Nvidia GPU를 이용한 AI연산, 딥러닝을 사용할수 있다.

Buy me a coffeeBuy me a coffee

2020년 5월 30일 토요일, 리브레오피스(LibreOffice)의 저장소(Repository)를 다운로드 받아 빌드 설정을 하려니 Java 버전 오류가 아래와 같이 발생하였습니다.

./autogen.sh --with-locales="ko" --with-vendor="me" --disable-werror --with-build-version="Built by me" --with-lang="ko" --enable-dbgutil


위의 이미지 설명: 맥운영체제(MacOSX)빌드시 Java버전 최소9이상이어야 하여 빌드 설정 실패

그래서, MacOSX에 openJDK9이상을 설치하도록 진행을 해보았습니다. 이제는 Oracle이 Java JDK를 유료화해버려서, 혹시나 모를 라이선스 문제로 openJDK로 Java버전을 업그레이드 하려고 합니다.

Oracle이 Java를 유료화하면서, 자유오픈소스 프로젝트인 리브레오피스(LibreOffice)에 Java를 사용하기 위해 자유오픈소스로 된 Java구현인 openJDK를 Mac에서 설치해보겠습니다.

openJDK 홈페이지

맥운영체제(MacOSX)에서 openJDK를 쉽게 설치하려면 brew를 이용하여 설치하는 것이 쉽습니다.

AdoptOpenJDK는 JDK를 쉽게 설치할수 있게 사전에 미리 빌드한(prebuild) java binaries를 제공하는 커뮤니티 그룹입니다.

AdoptOpenJDK

이 그룹에서는 MacOSX, Linux, Windows용 JDK바이너리를 제공하고 있습니다.

여기서 제공하는 것을 직접 빌드하기엔 제가 시간이 없으므로 (주말에만 활동하는 자유오픈소스 개발자), brew에서 올라온 AdoptOpenJDK빌드를 사용하여 JDK를 설치했습니다.

아래는 AdoptOpenJDK의 homebrew패키지용 Github 링크입니다.
AdoptOpenJDK/homebrew-openjdk

위의 Github내용에 따라 brew로 'OpenJDK14 with OpenJ9 JVM'을 설치하였습니다.
brew tap AdoptOpenJDK/openjdk
brew cask install adoptopenjdk14-openj9

이후에 openJDK14가 설치가 제대로 되었는지 확인해봅니다

% java --version
openjdk 14.0.1 2020-04-14
OpenJDK Runtime Environment AdoptOpenJDK (build 14.0.1+7)
Eclipse OpenJ9 VM AdoptOpenJDK (build openj9-0.20.0, JRE 14 Mac OS X amd64-64-Bit Compressed References 20200427_53 (JIT enabled, AOT enabled)
OpenJ9   - 05fa2d361
OMR      - d4365f371
JCL      - 5757187cae based on jdk-14.0.1+7)

openJDK14설치후, 다시 빌드 설정을 하니 성공하였습니다.

Buy me a coffeeBuy me a coffee

Welcome to Ubuntu 11.04  'Natty Narwahl' alpha release!


두근두근, 드디어 Ubuntu 10.10 'Maverick Meerkat'에서 Ubuntu 11.04 'Natty Narwahl'로 업그레이드 시작입니다. ~_~


Buy me a coffeeBuy me a coffee


문서화 작업의 일환으로 포스팅을 하게 되었습니다.
JSP를 쓰기 위해서 많이 쓰는 Tomcat을 모르는 이들이 워낙에 많은 관계로 -_-;;

Tomcat을 깔기전에 Sun사에서 나온 JAVA package가 있는지 알아봅니다. 혹시나 java를 치면 gij로 나오면 gcc-java package가 깔렸으므로 지우는 것이 속편합니다.

JAVA JDK6을 다운로드 받아서 설치합니다. 설치할때에 /usr/local/src 에 설치를 하는 것이 속편합니다.
# chmod +x jdk-6u2-linux-i586-rpm.bin
# ./jdk-6u2-linux-i586-rpm.bin
이렇게 하면 rpm 파일이 나옵니다. rpm파일이 나오면 설치를 합니다. 설치하면 /usr/java란 경로가 생깁니다.
rpm -Uvh jdk-6u2-linux-i586.rpm
설치를 하면 환경변수를 설정합니다.
# vi /etc/profile
실행한 후에 파일 끝에 아래 내용을 추가한 후 종료합니다.
export JAVA_HOME="/usr/local/java"
export CATALINA_HOME="/usr/local/tomcat"
export PATH=$PATH
추가를 했으면 환경설정파일을 다시 불러들립니다.
# source /etc/profile

JAVA Package가 설치가 되었으면 Tomcat을 설치를 해야할 것입니다.
일단 이 사이트에 찾아 갑니다.
Apache Tomcat [링크]

전 여기서 Tomcat 6.X 를 다운로드 받았습니다.
다운로드 받을때에는 KAIST 서버가 좀 속도가 빠를 것이라고 체감을 하더군요. 그래서 KAIST서버로 체크 :D

서버에 이렇게 다운로드 받습니다. (다운로드 받을 폴더는 /usr/local/src )
# wget http://ftp.kaist.ac.kr/pub/Apache/tomcat/tomcat-6/v6.0.13/bin/apache-tomcat-6.0.13.tar.gz

다운로드를 받았으면 압축을 풀어줘야 합니다.
tar xvfz apache-tomcat-6.0.13.tar.gz

압축이 풀어주면 Tomcat 설치를 다한 것이라고 생각합니다.
Tomcat를 설치했으면 /usr/local에 심볼릭 링크를 걸어줍니다.
[root@pcrc local]# ln -s /usr/local/src/apache-tomcat-6.0.13 tomcat
심볼릭 링크를 걸어주면 /usr/local에 tomcat이라는 폴더가 생겼음을 알게 될 것입니다. :D

Tomcat은 다운로드 받아서 압축만 풀면 설치가 완료된 것이다. 따로 설치를 위한 설정은 필요없다.

/usr/local/tomcat/conf에서 tomcat 설정을 한다.
기본설정은 다 되어 있으므로 따로 설정할 필요 없다면
/usr/local/tomcat/bin에 가서 startup.sh를 통해 Tomcat을 구동한다.

Tomcat을 정상적으로 구동하면 http://pcrc.hongik.ac.kr:8080 으로 접속해본다.
아래그림은 접속한 결과이다.
이런 화면이 나오면 설치가 잘 되었다는 것이다.

설치가 끝난 뒤 할 일은 서버를 부팅할 때 tomcat을 자동으로 시작하도록 설정하는 것입니다.
부팅시 자동으로 실행하기 위해 스크립트를 직접 작성해야 합니다.
웹 서핑 결과 다음의 것이 가장 흔했습니다.

다음 스크립트를 /etc/rc.d/init.d/ 폴더에 tomcat이라는 이름으로 작성했습니다.

#!/bin/sh
#
#Startup script for Tomcat, the Apache Servlet Engine
#
# chkconfig: - 85 15
# description: Start Tomcat
#
# processname: tomcat
#
# Source function library.
. /etc/rc.d/init.d/functions
export JAVA_HOME=/usr/local/java
export CATALINA_HOME=/usr/local/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
# See how we were called.
case "$1" in
  start)
  echo -n "Starting tomcat: "
  daemon $CATALINA_HOME/bin/catalina.sh start
  touch /var/lock/subsys/tomcat
  echo
  ;;
  stop)
  echo -n "Shutting down tomcat: "
  daemon $CATALINA_HOME/bin/catalina.sh stop
  rm -f /var/lock/subsys/tomcat
  echo
  ;;
  restart)
  $0 stop
  sleep 2
  $0 start
  ;;
  *)
  echo "Usage: $0 {start|stop|restart}"
  exit 1
esac
exit 0

위에서 굵은 줄 두 부분만 이전에 설치한 java와 tomcat 홈 디렉토리로 변경해주면 됩니다.

스크립트를 작성한 다음에 service에 등록합니다.
cd /etc/rc.d/init.d/
chmod 755 tomcat
chkconfig --add tomcat
chkconfig --level 3 tomcat on
chkconfig --level 4 tomcat on
chkconfig --level 5 tomcat on

부팅 레빌 3, 4, 5번 일 때 가동 되도록 설정했습니다.

'컴퓨터 > Linux' 카테고리의 다른 글

2007 JCO 오픈소스 컨퍼런스에 갑니다  (2) 2007.10.07
Happy 10th Birthday GNOME!  (0) 2007.08.22
Apache Tomcat 설치기  (3) 2007.08.09
컴퓨터가 츤데레였어!  (9) 2007.08.03
Ubuntu CD 도착 :D  (4) 2007.07.27
GNOME 지우기  (3) 2007.07.17
Buy me a coffeeBuy me a coffee
  1. Favicon of http://cloudree.egloos.com BlogIcon 클랴 2007.08.09 08:57

    unix 잘 배우고 있구먼.. 화이팅

  2. Favicon of http://joo8111.egloos.com BlogIcon Joo8111 2007.08.09 11:21

    제가 톰캣은 잘 몰라서 그러는데..
    톰캣이 개인 홈페이지에서 사용가능한가요?

    안되는 거라면... PCRC 홈페이지를 jsp 기반으로?^^

  3. Favicon of http://daybreaker.info BlogIcon daybreaker 2007.08.09 12:02

    ...그 ftp.kaist.ac.kr 이전 작업을 이번 주말에 해야 되는데 골아파 죽겠습니다(...);; 그 서버가 있는 건물이 리모델링 공사 중이라서 네트워크 장비들 다 이전해야 된다는...
    서비스 관리는 다른 사람들이 하는데, 서버 자체의 관리는 저도 같이 하고 있죠;

+ Recent posts