회사 업무로 인하여 뜬금없이 MySQL을 설치를 해야하는 상황
그래서 한 번 집에서 소스설치에 대해서 미리 살펴보기로 했다.

mysql과 같은 경우 대중화(?)된 소프트웨어이기에 apt-get을 이용해서 설치를 해도 되겠지만,
나름 정식으로 사용하는 놈인데, 버전 관리를 위해서라도 소스코드를 이용해서 빌드 설치를 해보고자 한다.

   - http://www.mysql.com/

소스코드 빌드에 대한 설명은 다음에서 찾아볼 수 있다.

   - http://dev.mysql.com/doc/refman/5.6/en/installing-source-distribution.html

우리가 사용해도 되는 버전은 다음과 같다.

   - MySQL Community Edition (GPL)

다음의 주소에서 다운로드를 받을 수 있다.

   - http://dev.mysql.com/downloads/

Database Server를 구축하기 위해서는 다음 제품을 다운로드 받으면 된다.

   - MySQL Community Server (GPL)


▷ 테스트 환경 : Ubuntu 12.04 64bit LTS


이제 본격적으로 진행을 해보자.

1. 빌드를 진행하기 위해 필요한 패키지들을 설치하자.

$ sudo apt-get install -y cmake build-essential libtool libreadline6-dev libncurses5-dev libbison-dev libaio1 libaio-dev libssl-dev bison m4


2. 다운로드 받고 압축 풀기

$ cd /srv/install/mysql
$ wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.14.tar.gz
$ tar xvfz mysql-5.6.14.tar.gz
$ cd mysql-5.6.14


3. CMake 실행

   - 제일 뒤의 [ . ]을 포함해야 한다.

$ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.14 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.socket .

   - 만약 뭔가 에러가 발생해서 다시 cmake를 하고 싶다면...

$ rm -rf ./CMakeCache.txt

   - 지우고 다시 cmake 실행


4. make 실행 및 설치

$ make
$ sudo make install
$ sudo ln -s /usr/local/mysql-5.6.14 /usr/local/mysql

   - 만약 뭔가 에러가 발생해서 다시 make를 하고 싶다면...

$ make clean
$ make



5. MySQL이 사용할 계정 생성

$ sudo groupadd mysql
$ sudo useradd -M -d /usr/local/mysql -g mysql -s /usr/sbin/nologin mysql



6. 환경 설정

$ cd /usr/local/mysql
$ sudo cp ./support-files/my-default.cnf /etc/my.cnf
$ sudo nano /etc/my.cnf

...
character-set-server = utf8
collation-server = utf8_general_ci
character-set-client-handshake = false


7. 기본 DB 설치 및 파일 권한 설정

$ sudo chown root.mysql -R /usr/local/mysql
$ sudo chown root.mysql -R /usr/local/mysql-5.6.14
$ sudo chown mysql.mysql -R /usr/local/mysql/data
$ sudo chown mysql.mysql -R /usr/local/mysql-5.6.14/data

$ cd /usr/local/mysql
$ sudo /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data



8. 실행 및 패스워드 설정

$ cd /usr/local/mysql
$ sudo ./bin/mysqld_safe --user=mysql &

$ ./bin/mysqladmin -u root password "패스워드"


9. 자동 실행 설정

$ sudo cp ./support-files/mysql.server /etc/init.d/mysqld
$ sudo update-rc.d mysqld defaults


10. 경로 설정

$ sudo nano /etc/environment

PATH="......:/usr/local/mysql/bin"



생각보다 어렵지는 않다.

세밀한 환경 설정이나 기타 사용법에 대해서는 다음에 기회가 되면.... ^^
반응형

Subversion을 설치했다는 것은 형상관리를 하고자 한다는 말이고,
형상관리를 하겠다라는 것은 일반적으로 여러명과 공동 작업을 하겠다라는 말일 것이다.

여러 명이 접속하는 서버를 구성하기 위해서 가장 중요한 것은 어떤 프로토콜을 사용할 것인가 하는 점이다.

그러면, Subversion에서는 어떤 프로토콜을 사용할 수 있을까?

   - FileSystem
   - HTTP
   - SSH
   - SVN
   - SVN+SSH


1. Protocol - SVN

   - Subversion은 [ svnserve ]를 통해서 고유의 프로토콜을 사용할 수 있게 해준다.
   - 기본으로 사용하는 포트는 [ 3690 ] 이다.

   - 당연한 말이지만, Apache를 통해서 제공하는 HTTP 프로토콜 보다는 훨씬 빠르다.
   - SSH 프로토콜보다 빠른지는 한 번 테스트해봐야 알 수 있을 것 같다.

   - SVN 프로토콜을 사용하기 위해서는 [ svnserve ] 데몬을 실행해야하고, 그 방법은 정말 쉽다.

$ sudo svnserve -d -r /srv/repository/

   - 이것으로 끝이다. Subversion Server가 실행된 것이다.

$ cd /srv/workspace

$ svn checkout svn://127.0.0.1/svnrepo svnrepo

체크아웃된 리비전 0.

$ ls -al
합계 12
drwxr-xr-x 3 chani chani 4096  9월  7 00:20 .
drwxr-xr-x 5 root  root  4096  9월  6 23:55 ..
drwxrwxr-x 3 chani chani 4096  9월  7 00:20 svnrepo

   - SVN  프로토콜을 통해 repository를 받아올 수 있게 되었다.
   - 그런데, 방금 우리는 계정 정보 없이 그냥 막 받아왔다. 우리가 원하는 것은 계정을 통한 권한제어인데...

$ cd /srv/repository/

$ cd svnrepo/

$ ls -al
합계 32
drwxrwxr-x 6   chani chani 4096  9월  5 22:56  ./
drwxr-xr-x 3    chani chani 4096  9월  5 22:56  ../
-rw-rw-r-- 1    chani chani  246  9월  5 22:56  README.txt
drwxrwxr-x 2   chani chani 4096  9월  5 22:56  conf/
drwxrwsr-x 6   chani chani 4096  9월  5 22:56  db/
-r--r--r-- 1      chani chani     2  9월  5 22:56  format
drwxrwxr-x 2   chani chani 4096  9월  5 22:56  hooks/
drwxrwxr-x 2   chani chani 4096  9월  5 22:56  locks/

   - 서버에 생성한 repository를 살펴보자. 위치하고 있는 디렉토리를 주의깊게 살펴봐야 한다.

$ cd conf/

$ ls -al
합계 24
drwxrwxr-x 2  chani chani 4096  9월  5 22:56 .
drwxrwxr-x 6  chani chani 4096  9월  5 22:56 ..
-rw-rw-r-- 1   chani chani 1080  9월  5 22:56   authz
-rw-rw-r-- 1   chani chani  885  9월  5 22:56    hooks-env.tmpl
-rw-rw-r-- 1   chani chani  309  9월  5 22:56    passwd
-rw-rw-r-- 1   chani chani 4002  9월  5 22:56   svnserve.conf

   - 특히 우리가 관심을 가져야 할 곳은 conf/ 디렉토리이다.
   - 우선, 우리는 계정을 사용하겠다라는 설정부터 하자.

$ nano ./svnserve.conf

[general]
anon-access = none
auth-access = write
password-db = passwd

   - anonymous 접근은 막고, 인증받은 계정으로 읽기/쓰기를 하겠으며, 계정 정보는 passwd 파일로 하겠다라는 설정이다.

$ nano ./passwd

[users]
whatwant = 1234

   - 기본적으로 passwd 파일에서 설정은 [ 사용자계정 = 비밀번호 ] 형식이고, 암호화하지 않는다.

$ svn --username whatwant checkout svn://127.0.0.1/svnrepo svnrepo

인증 영역(realm): <svn://127.0.0.1:3690> b4595488-89ba-479b-b681-c8e86660c71c
'whatwant'의 암호: ****

'(null)'의 GNOME 키 링 암호: ****

체크아웃된 리비전 0.

   - ID / Passwd 방식으로 접근이 이루어지는 것을 볼 수 있다.

   - 중간에 보면 [ '(null)'의 GNOME 키 링 암호: **** ] 부분이 걸리적거리는데...

$ nano ~/.subversion/config

[auth]
password-stores =
store-passwords = yes

$ nano ~/.subversion/servers

[groups]
store-plaintext-passwords = no

   - 이제 기본적인 상황은 모두 점검을 했다.
   - 이제 필요한 것은 부팅할 때 자동으로 구동이 되도록 셋팅만 해주면 된다.

   - https://help.ubuntu.com/community/Subversion
   - 필자가 테스트하고 있는 환경이 우분투이기에 우분투 환경에서 사용할 수 있는 방법을 찾아보았다.

   - initd script for svnserve
   - http://odyniec.net/articles/ubuntu-subversion-server/svnserve

$ cd /etc/init.d/
$ sudo wget http://odyniec.net/articles/ubuntu-subversion-server/svnserve
$ sudo chmod +x ./svnserve
$ sudo nano ./svnserve

DAEMON=/usr/local/bin/$NAME
DAEMON_ARGS="-d -r /srv/repository"

$ sudo /etc/init.d/svnserve start

   - 이제 svnserve를 예쁘게 사용하자.


반응형

'SCM > Subversion' 카테고리의 다른 글

Subversion 설치 (Windows, Binary : VisualSVN)  (0) 2013.09.14
Subversion 설치 (Windows, BitNami)  (0) 2013.09.09
Subversion 설치 (Ubuntu, SourceCode)  (0) 2013.09.05

오늘 [ sudo apt-get update/upgrade ]를 실행하니, "whoopsie"라는 애가 업그레이드 되었다.

그런데, 대체 이 놈이 뭐하는 놈이지?!
심지어 이 놈이 내 귀중한 메모리도 잡아먹고 있다!!!

 PID    USER        PR  NI  VIRT   RES  SHR  S   %CPU  %MEM   TIME+    COMMAND                            
 2255   whoopsie  20   0   197m   5004  3684  S    0.0      0.5         0:00.00   whoopsie

뭐하는 놈이길래 귀중한 메모리까지 처묵처묵하고 있는 것인지...
거기에다가 이 놈이 계정까지도 가지고 있다.

$ cat /etc/passwd | grep whoopsie
whoopsie:x:105:114::/nonexistent:/bin/false




이 놈의 정체는 "Ubuntu error tracker"라고 한다.
이 작은 데몬은 우분투의 데스크탑 버전과 서버 버전 모두 기본으로 포함되어 있단다.


이 기능을 끄기 위해서는 "시스템 설정 - 사생활 설정 - 진단" 메뉴를 살펴보면 된다.


위와같이 오류보고도 보내지 않고, 활동 상황도 기록하지 않는다고 설정하면 해당 프로세스도 종료된다.


아예 깨끗하게 삭제를 해버리고 싶다면 다음과 같이 실행하면 된다.

$ sudo apt-get -s purge whoopsie
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다      
상태 정보를 읽는 중입니다... 완료
다음 패키지를 지울 것입니다:
  whoopsie*
0개 업그레이드, 0개 새로 설치, 1개 제거 및 0개 업그레이드 안 함.
Purg whoopsie [0.1.33]

$ sudo apt-get purge whoopsie
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다      
상태 정보를 읽는 중입니다... 완료
다음 패키지를 지울 것입니다:
  whoopsie*
0개 업그레이드, 0개 새로 설치, 1개 제거 및 0개 업그레이드 안 함.
이 작업 후 106 k바이트의 디스크 공간이 비워집니다.
계속 하시겠습니까 [Y/n]? y
(데이터베이스 읽는중 ...현재 235397개의 파일과 디렉터리가 설치되어 있습니다.)
whoopsie 패키지를 지우는 중입니다 ...
whoopsie의 설정 파일을 깨끗이 지우는 중입니다 ...
ureadahead에 대한 트리거를 처리하는 중입니다 ...
ureadahead will be reprofiled on next reboot

참고로 [ apt-get -s ] 옵션은 시뮬레이션 기능이다. 삭제해도 되는지 확인 차원에서...




사실 Ubuntu 의 발전을 위해서는 리포팅을 해주는 것이 좋고, 성능에 미치는 영향도 미미하기 때문에
이렇게 신경쓰고 굳이 삭제까지 하는 것은 불필요한 행위일 수도 있다.

하지만, 그냥 Ubuntu에 대해서 하나씩 알아가는 과정으로 잉여력을 발휘한 것이라 여겼으면 좋겠다 ^^
반응형

회사에서 EFL 관련 이야기를 듣다가 갑자기 필자도 한 번 사용해보고 싶어졌다.
손쉽고 예쁘게 경험해볼 수 있는 EFL이 무엇이 있을까 하다가 생각난.... 윈도우 매니저~ Enlightenment !!!

당연하게도 Ubuntu에서도 사용해볼 수 있다.
그리고 친절하게도 패키지(apt-get)를 이용해서 설치할 수 있다.

하지만, 개인적인 취향으로 소스코드를 통해서 Enlightenment를 설치해보도록 하겠다.
능력도 없지만 괜히 잘난 개발자가 된 기분이 좋아서 유난히 소스코드 설치를 좋아하는 것 같다.

솔직히 단순히 Enlightenment만 사용하고자 하는데 아래처럼 설치를 진행하는 것은 분명 오버이긴 하다 ^^


( 가장 많이 참조한 블로그 포스팅 : http://seoz.egloos.com/3855400  )


1. Enlightenment

   - http://www.enlightenment.org/
   - 단순한 윈도우 매니저가 아니라 아름다운 사용자 인터페이스를 만드는데 도움을 주는 모든 것을 제공해준다고 한다.
   - EFL의 시작은 윈도우 매니저인 Enlightenment이지만,
     지금은 윈도우 매니저를 개발하기 위한 라이브러리인 EFL이 더욱 더 덩치가 커져버렸다고 한다.



2. E17

   - 2004년도부터 개발되기 시작한 E17은 2013.04.30 현재까지도 계속 개발되고 있다.
   - 지속 배포 방식인 Rolling Release 방식으로 개발 & 배포되고 있다.
   - 2013.05.01 01:12 현재 최신 버전은 0.17.2.1 이다.



3. 필요 패키지

   - 앞으로 진행할 빌드 時 필요한 패키지는 아래와 같다. (Ubuntu 12.04 환경)

$ sudo apt-get install build-essential automake libtool ccache zlib1g-dev libfreetype6-dev libdbus-1-dev liblua5.1-0-dev g++ libxext-dev libxrender-dev libpng12-dev libxrandr-dev libfontconfig1-dev libxcb-shape0-dev libfribidi-dev libcurl4-openssl-dev libxcb-keysyms1-dev libjpeg-dev gettext autopoint libgif-dev libtiff4-dev libxp-dev libxtst-dev libgl1-mesa-dev libxinerama-dev libxdamage-dev libxcursor-dev libglib2.0-dev libxcomposite-dev libxss-dev libpulse-dev libsndfile-dev libudev-dev libblkid-dev libmount-dev libgstreamer0.10-dev check libgstreamer-plugins-base0.10-dev libvlc-dev

   - Ubuntu 12.10 환경에서는 아래와 같다고 한다.

$ sudo apt-get install build-essential automake libtool ccache zlib1g-dev libfreetype6-dev libdbus-1-dev liblua5.1-0-dev g++ libxext-dev libxrender-dev libpng12-dev libxrandr-dev libfontconfig1-dev libxcb-shape0-dev libfribidi-dev libcurl4-openssl-dev libxcb-keysyms1-dev libjpeg-dev gettext autopoint libgif-dev libtiff5-dev libxp-dev libxtst-dev libgl1-mesa-dev libxinerama-dev libxdamage-dev libxcursor-dev libglib2.0-dev libxcomposite-dev libxss-dev libpulse-dev libsndfile-dev libudev-dev libblkid-dev libmount-dev libgstreamer0.10-dev check libgstreamer-plugins-base0.10-dev libbullet-dev libvlc-dev



4. EFL 소스 코드 다운로드

   - EFL 버전 관리 시스템은 본래 SVN이었지만 최근 GIT으로 변경을 하였다.
   - 따라서 당연히 소스 코드 다운로드를 위해서는 GIT이 설치되어 있어야 한다.
   - 설치 경로는 개인적인 취향으로 [ /srv/install/ ] 밑에 위치시켰다.

$ cd /srv/install/efl/

$ git clone git://git.enlightenment.org/core/efl.git
$ git clone git://git.enlightenment.org/core/enlightenment.git
$ git clone git://git.enlightenment.org/core/elementary.git
$ git clone git://git.enlightenment.org/core/evas_generic_loaders.git
$ git clone git://git.enlightenment.org/core/emotion_generic_players.git

   - 용량 꽤 크다.



5. make

   - 이제 설치해보자.

$ cd /srv/install/efl/

$ ./efl/
$ ./autogen.sh --disable-physics
$ make
$ sudo make install
$ sudo ldconfig

$ cd ../elementary/
$ ./autogen.sh
$ make
$ sudo make install
$ sudo ldconfig

$ cd ../evas_generic_loaders/
$ ./autogen.sh
$ make
$ sudo make install
$ sudo ldconfig

$ cd ../emotion_generic_players/
$ ./autogen.sh
$ make
$ sudo make install
$ sudo ldconfig

$ cd ../enlightenment/
$ ./autogen.sh
$ make
$ sudo make install
$ sudo ldconfig



6. xsession

   - 데스크탑 세션으로 사용하기 위해서는 파일을 등록해야 한다.

$ sudo cp /usr/local/share/xsessions/enlightenment.desktop /usr/share/xsessions/

   - 이제 Enlightenment를 사용할 수 있다.


   - 로그아웃을 하고나서 나오는 화면에서 오른쪽 위에 있는 동그란 부분을 클릭해보자.


   - Enlightenment를 선택할 수 있다 !!!
   - 이렇게 하면... 초기 실행이기 때문에 환경 설정 화면이 나온다.


   - 당연히(?) 한국어를 선택하면 된다.


   - 키보드 설정에서도 Korean을 고를 수 있다 !!!


   - 터치스크린도 지원한다 !!! 하지만 표준은 그냥이라는거...


   - 제목 표시 크기를 선택하면 된다.


   - 마우스 올리기를 통해서 창 활성화를 할 수도 있긴 한데....


   - 당연히 설치를 해야한다...


   - 하드웨어 가속 설정을 하고 싶은데, 필자의 경우엔 아무 것도 선택이 안되었다.


   - 업데이트 활성화가 싫은 경우라면 모르겠지만...


   - 작업 표시줄도...


   - 드디어 Enlightenment 윈도우 매니저가 떴다.
   - 왼쪽 마우스 버튼 클릭으로 위 스크린샷과 같이 메뉴가 뜬다.


좀 다른 테마라는 느낌은 있지만 아직은 설치만 해서는 정확히 뭐가 어떻게 다른지 잘 모르겠다.
설정도 좀 바꿔보고 뭔가 좀 사용을 해봐야 Enlightenment의 매력을 알 수 있을 것 같다.

일단 이번에는 여기까지만~

반응형

개인적으로 무조건적인 사랑을 주고 싶은 리눅스
그 중에서도 가장 마음에 드는 Ubuntu

Ubuntu에서 Git을 설치해보고자 한다.



1. 패키지로 설치하기


Ubuntu가 11.10으로 업데이트가 되면서
아직 개인적으로도 낯설다.

애정을 가지고 적응을 해야겠지...


"우분투 소프트웨어 센터"에서 "git-core"로 검색을 해서
해당 패키지를 설치하면 바로 git을 사용할 수 있다.

가장 편한 방법이다.




2. 소스로 설치하기

 
Git을 소스로 설치하기 전에 필요한 패키지들을 미리 설치하자

$ sudo apt-get install make libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev asciidoc xmlto autoconf

 


엄청 빠른 버전업이 이루어지다가
1.8.x 버전대까지 와서야 조금은 천천히 업그레이드가 되고 있다.

[ Tarballs ] 부분을 클릭하면 다운로드 받을 수 있는 리스트를 확인할 수 있다.


여기에서 다운로드 받을 소스의 주소를 구하자.

$ pwd
/srv/install/git

$ wget http://git-core.googlecode.com/files/git-1.8.2.1.tar.gz

$ tar zxvf git-1.8.2.1.tar.gz

$ cd git-1.8.2.1/

 빌드가 어려울 것이라는 편견은 버리자.

$ make configure
$ ./configure --prefix=/usr/local
$ make all doc
$ sudo make install install-doc install-html

설치가 잘 되었는지 확인을 해보기 위해서 버전 확인을 해보자.

$ git --version


GIT 자동완성을 지원하기 위해서는...
http://whatwant.tistory.com/478


우리 모두 Git으로 행복한 형상관리를...
반응형

최근 들어 우분투와 관련하여 많은 변화가 보이고 있다.
아니 그냥 변화라고 표현하기 보다는 지금까지 해왔던 관습적인 부분에 대한 변경 사항이 자꾸 언급되고 있다.


1. 지원 기간 단축
     - http://www.webupd8.org/2013/03/ubuntu-technical-board-meeting.html
     - LTS 버전은 5년, 그 외 버전은 18개월간 지원을 해왔지만,
     - LTS 판이 아닌 경우 9개월만 지원을 하겠다고 3월에 발표를 했다.
     - 즉, LTS 판이 아닌 경우 9개월 안에 업그레이드를 해야 한다는 말이다. 당연히 많은 반발이.... ^^
     - 이 때 발표를 할 때에 13.04 버전부터 적용이 되어 13.04 버전은 9개월짜리 지원 버전일거라고 했었다 !!

2. WUBI 제외
     - http://www.omgubuntu.co.uk/2013/04/wubi-unlikely-to-be-in-ubuntu-13-04-windows-users-lose-out
     - 윈도우즈용 우분투 설치 프로그램인 WUBI가 13.04 버전부터는 제외가 될거라고 했다.
     - 하지만, 지금 개발중인 내역을 보면 아직 WUBI가 보이기는 하던데... 제대로 설치가 안될 수도 있겠지만...
     - 뭐 여하튼, Windows8 출시와 함께 더 이상은 지원하기가 버겨웠나보다.

3. 13.04 Release
     - https://wiki.ubuntu.com/RaringRingtail/ReleaseSchedule
     - 기존 릴리스 때에는 메인 홈페이지에서 계속 홍보를 해왔었던 것과 비교하면 상당히 다른 분위기다.
     - 기억에 원래 릴리스는 4월 18일이었던 것 같은데, 지금 확인해보니 4월 25일로 되어있다.
     - 릴리스 예정일자 찾는 것 조차도 엄청 힘들다. 12.10 판도 불안정하던데, 13.04 판도 버림받은 것일까?!

4. Rolling Release
     - http://www.omgubuntu.co.uk/2013/02/ubuntu-to-discuss-rolling-release-move-at-next-weeks-uds
     - "수시배포"라고 번역을 하면 되려나 ?
     - 필자 기억에는 2010년도부터 이야기 되어 온 이슈 같은데.... 13.04 이후에는 Rolling Release 하지 않을까 한다.
     - 최종적으로 어떻게 결론이 났는지는 아직 모르겠다.
     - 즉, 이젠 그냥 하나로 주우욱 간다는...


요즘에 다시 확인해보지 않아서 위에서 언급한 것들 중에서 결론이 난 부분도 있을 것 같기는 하지만,
최소한 대중매체에선 아직 뭔가 이야기 된 것은 없는 것 같으니... 그냥 최신 소식으로~ ^^

 

반응형

Ubuntu 환경에서 소프트웨어를 설치하다보면 종종 JDK를 요구하곤 한다.

예전에는 리눅스 패키지에 JDK가 포함되어 배포되어서 업데이트도 쉽고 다루기도 쉬웠는데,
라이선스의 이슈때문인지 최근에는 기본으로 포함되어있지는 않다.

물론 많은 수요가 있으니 편한 공급 방법을 제공해주고 있다.


하지만 여기에서는
그냥 정공법으로 공식 배포사이트에서 다운로드를 받아서 설치를 하는 과정을 살펴볼 것이다.


1. Download

     - 오라클의 JDK 공식 배포 사이트를 통해 다운로드 주소를 확인하자.
     - http://www.oracle.com/technetwork/java/javase/downloads/index.html

 


     - 물론 대부분의 상황은 JRE 만으로도 충분하지만, 개발자 마인드를 버리지못한 죄로... 무조건 JDK !!!
     - DOWNLOAD 버튼을 누르자.


     - Accept 해주고 OS에 맞는 다운로드 링크를 통해 저장하자.
     - 소프트웨어에 따라 요구하는 특정 버전의 JDK가 있다. 이 부분은 주의하자.


2. Install

     - JDK 버전에 따라 설치 방법이 살짝 다르다.
     - 여기에서는 가장 최신 버전을 기준으로 설명하겠다.


$ sudo -s tar zxvf jdk-7u5-linux-i586.tar.gz

     - 예전에는 위의 다운로드 링크 주소로 wget 을 통해 다운로드 할 수 있었는데, 요즘엔 안된다.
     - 예전에는 *.tar.gz 가 아니라 *.bin 파일로 다운로드가 되었었다.


$ sudo mkdir -p /usr/local/java
$ sudo -s mv ./jdk1.7.0_05 /usr/local/java/

     - 이전의 *.bin 방식은 그냥 파일에 실행 속성만 주고 실행하면 끝났는데... 이번에는 영~ 귀찮다.



$ sudo nano /etc/environment


PATH=...........:/usr/local/java/jdk1.7.0_05/bin
JAVA_HOME=/usr/local/java/jdk1.7.0_05

 

$ source /etc/environment


     - 환경 설정 (경로) 잡아주고,
     - alternative 관련 설정도 잡아주자.


$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.7.0_05/bin/java" 1
$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.7.0_05/bin/javac" 1
$ sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.7.0_05/bin/javaws" 1

$ sudo update-alternatives --set java /usr/local/java/jdk1.7.0_05/bin/java
$ sudo update-alternatives --set javac /usr/local/java/jdk1.7.0_05/bin/javac
$ sudo update-alternatives --set javaws /usr/local/java/jdk1.7.0_05/bin/javaws


     - 이렇게 하고 마지막으로 잘 되었는지 확인을 위해서 아래와 같이 버전을 확인해보자.

$ java -version



여기까지~

반응형

Ubuntu에서 부팅할 때에 자동으로 무엇인가를 실행하고 싶은 경우에는 어떻게 해야할까?
과거 DOS 시절에는 AUTOEXEC.BAT (일명: 오토익스큐트 배치파일?! ^^) 파일에 명령어를 입력했었는데...


Ubuntu(리눅스)에서 일반적으로 부팅 時에 무언가를 실행하기 위해서는,
실행을 위한 스크립트 파일들을 /etc/init.d/ 경로 밑에 넣어 놓고
runlevel에 따라 실행할 스크립트 파일을 등록을 해주는 방식을 취한다.

(제가 잘못알고 있다면, 친절하게 설명을 해주시길 바래요 ㅠㅠ)

Ubuntu에서 runlevel에 따라 등록된 내역을 확인 하기 위해서는 /etc/rc0.d/ , /etc/rc1.d/ , /etc/rc2.d/ ... 를 살펴보면 된다.


유저가 원하는 무엇인가를 자동 실행으로 등록하기 위해서는
/etc/init.d/ 경로 밑에 실행을 하기 위한 Script 파일을 만들어 놓고 [ chmod +x 스크립트 ] 명령으로 실행가능토록 해놓고
[ sudo update-rc.d 스크립트 defaults ] 명령을 실행하면 등록이 되어 이후 부팅 時 자동으로 실행을 시킬 수 있다.



이러한 과정이 번거로운 경우 일반적으로 많이 사용하는 것이 /etc/rc.local 파일을 이용하는 것이다.
runlevel과 무관하게 rc.d 실행을 모두 마친 후 수행이 된다는 점을 이용하는 것이다.

사용 방법은 간단하다.

/etc/rc.local 파일을 편집해서 실행하고픈 내용을 적어주면 된다.

이 때 주의할 점은,
/etc/rc.local 실행 권한이 root 라는 점이다.
혹시 특정 사용자 권한이 필요하다면 [ su -사용자 -c 실행파일 ]과 같이 명시해주면 된다.


그리고, 마지막으로 또 하나~!!
/etc/rc.local 파일에 실행파일을 적어줬는데 정상적으로 실행이 되지 않을 때가 있다.

이 때 체크 포인트 !!!
   - 일반적으로 환경 변수 셋팅이 되어 있지 않기 때문에 PATH는 절대 경로를 사용해야 한다.
   - /etc/rc.local 은 [ -e ] 옵션이 되어있다. 즉, 에러 발생하면 그냥 바로 종료다. 번거로우면 [ -e ] 옵션을 지우는... ^^



자동 실행과 관련하여 마지막 사항은... X-Window 프로그램들이다.
X-Window 프로그램을 위와 같이 명시하면 제대로 실행되지 않는 경우가 대부분이다.
문제는 실행 타이밍~ X-Window 관련된 것들이 전부 실행이 된 이후 실행이 되어야 하는데,
그 전에 실행을 하니... 에러....

X-Window 관련 프로그램의 자동 실행은 X-Window의 메뉴들을 보면 시작프로그램 등록하는 다이얼로그가 있다.
그것을 이용하자~!!


반응형

+ Recent posts