Linux/Ubuntu2011. 12. 15. 01:21

grub2에서 boot menu 의 순서를 변경하는 방법을 알아보자.

#cd /boot/grub/grub.cfg 
#ls -l 
 

-rwxr-xr-x   1 root root  6698 2011-10-01 21:40 00_header*

-rwxr-xr-x   1 root root  5522 2011-04-21 22:20 05_debian_theme*

-rwxr-xr-x   1 root root  6933 2010-10-06 21:23 07_os-prober*

-rwxr-xr-x   1 root root  7269 2011-10-01 21:40 10_linux*

-rwxr-xr-x   1 root root  6344 2011-10-01 21:40 20_linux_xen*

-rwxr-xr-x   1 root root  1588 2010-09-25 02:14 20_memtest86+*

-rwxr-xr-x   1 root root  7545 2011-10-01 21:40 30_os-prober*

-rwxr-xr-x   1 root root   214 2010-10-06 21:23 40_custom*

-rwxr-xr-x   1 root root    95 2010-10-06 21:23 41_custom*


00_, 05_, 07_  와 같은숫자의 순서에 따라 /boot/grub/grub.cfg 파일에서 menuentry 등록 순서가 결정이 된다.
즉, 위의 파일들을 rename 하는 것으로서 부팅 menuentry 순서를 변경 할 수 있는 것이다.

예 를 들어 아래와 같이 변경하게 되면 linux 가 window보다 상위에 위치하게 된다. 
#mv 10_linux 06_linux

수정을 마쳤으면 변경된 순서를 적용하기 전에 grub.cfg 파일은 백업을 해두고,

#/usr/sbin/update-grub

update-grub 을 하면 새로운 grub.cfg 파일이 생성되고 reboot.

두번째 방법은 grub.cfg를 직접 수정하는 것이다.

#vi /boot/grub/grub.cfg

...
menuentry 'Ubuntu, with Linux 2.6.35-23-generic' --class ubuntu --class gnu-linux --class gnu --class os {
        recordfail
        insmod part_msdos
        insmod ext2
        set root='(hd0,msdos2)'
        search --no-floppy --fs-uuid --set 2742a9ed-e2ac-4411-ac63-53117647ac54
        linux   /boot/vmlinuz-2.6.35-23-generic root=UUID=2742a9ed-e2ac-4411-ac63-53117647ac54 ro   quiet splash
        initrd  /boot/initrd.img-2.6.35-23-generic
}
... 

 

menuentry의 위치를 변경 하는 것으로 grub menu에서 부팅 순서를 변경할 수 있다.
또는 
set default="0" 값을 변경 하면 됨.

 


 
Posted by ekwang
Linux/Ubuntu2011. 9. 30. 15:26

1. Download graphviz dot tool from below site
http://www.graphviz.org/pub/graphviz/ARCHIVE/graphviz-2.28.0.tar.gz

Make and Install
#tar xzvf graphviz-2.28.0.tar.gz
#./configure
#make && make install 

2. Download doxygen
http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc

Make and Install with configureation

#tar xzvf doxygen-1.7.5.1.src.tar.gz
#./configure
#./configure --with-doxywizard

doxywizard : Build the GUI frontend for doxygen. (QT 가 설치 되어 있어야 함. apt-get install libqt4_dev)

설정의 편의를 위해서 doxywizard 사용 권장.

text로 설정을 변경하고 싶을 경우

#doxygen -g <filename>
#vi <filename>
#doxygen <filename>



doxygen wizard 설정은 아래 블로그 참고.(window용 설정 임..)
http://blog.naver.com/khbrst?Redirect=Log&logNo=50112236741
Posted by ekwang
Linux/Ubuntu2011. 7. 25. 23:42
10.10 upgrade 후에 갑자기 네트워크 연결이 안된다.
무지하다 보니 알 수가 없다. 부끄럽다.
방치..
언 9개월이 지난후 갑자기 컴터를 켜서 좀 찾아보고 해결했다.

ifconfig -a 를 해봐도 eth0에 address가 없다. dhcp가 동작을 안한다.

~$sudo vi /etc/network/interfaces

auto lo

iface lo inet loopback


auto eth0

iface eth0 inet dhcp


eth0에 대한 내용이 없어서 추가 후
~$sudo /etc/init.d/networking restart

정상적으로 연결이 된다.

이제 다시 11.04로 업그레이드 하라네..

Posted by ekwang
Linux/Ubuntu2011. 3. 1. 19:47
eclipse의 바로 가기 메뉴를 생성해 보자.


$ sudo gedit /usr/share/applications/eclipse.desktop

gedit 가 열리면 아래 내용을 복사 후 저장.

[Desktop Entry]
Encoding=UTF-8
Name=Eclipse
Comment=Eclipse IDE
Exec=eclipse
Icon=/opt/eclipse/icon.xpm
Terminal=false
Type=Application
Categories=GNOME;Application;Development;
StartupNotify=true

프로그램 - 개발 - Eclipse 가 있음을 확인 할 수 있다.
Posted by ekwang
Linux/Ubuntu2009. 11. 23. 22:48

ubuntu 9.10 에서 android full source 빌드 해보자.
9.04에서와 별 다른게 없어야 하지만, java version때문에 약간의 문제가 발생하였다.

ubuntu 9.10 설치 후 아마 android sdk 사용을 위해서 sun-java6-jre, jdk package를 설치 하였나 보다.
아니면 java 1.5, 1.6 이 설치되어 있는 상태에서 9.10으로 업그레이드를 하면서, 
구패키지인 1.5가 자동으로 삭제가 되었거나..

************************************************************
You are attempting to build with the incorrect version
of java.
 
Your version is: java version "1.6.0_15".
The correct version is: 1.5.
 
Please follow the machine setup instructions at
    http://source.android.com/download
************************************************************
build/core/main.mk:111: *** stop.  멈춤.

android full src 컴파일 하기 위해서 make를 하게되면
위와 같이 ubuntu 9.10 에서 java 1.5 가 설치 되어야 한다는 경고 문구를 볼 수 있다.

java5 설치를 위해서 apt-cache search jre를 해보지만 ubuntu 9.10 저장소에서 java5 버젼의 검색이 안된다.
9.04에서는 저장소에 sun-java5-jre, jdk 버젼이 있었던것 같은데..
아무튼 java6 이하 버젼을 설치하기 위해서는 파일을 다운로드 받아서 설치하거나, 
jdk 구버젼이 존재하는 저장소를 추가하여야 한다.

참고로, jre1.5 (jre5) 를 설치하게 될 경우 emulator동작을 위한 파일은 설치가 되지만
build에 필요한 javac등이 설치되지 않으므로 jdk5를 설치해야 한다.

그럼 ubuntu에서 jdk1.5 (jdk5) 설치 하는 방법을 알아보자.

1. 저장소를 추가하는 방법
위의 글을 참고 하여 아래의 저장소를 추가 한 후 jdk5 설치 한다.(
source.list 파일은 백업)
deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiverse
deb 
http://us.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse

설치 완료 후에는 source.list 파일을 원복시키고 apt-get update 를 하여 karmic 주소로 다시 원복 시켜주어야 이후에 ubuntu사용에 혼란이 없을 것이다.
다음으로 아래와 같이 하여 java 1.5로의 환경 설정을 마칠 수 있다.
sudo apt-get update
$ sudo apt-get install sun-java5-jdk

$ sudo update-java-alternatives -s java-1.5.0-sun

위와 같이 하였으나 잘 되지 않으면(java, javac 등을 찾지 못할 경우)
본 글 아래의 update-alternatives 관련 내용을 참고하여
java 등 필요한 것들의 환경 설정을 변경하도록 한다.

2. 재미있게 jdk5를 직접 다운로드 받아서 설치하는 방법을 알아보자.

jre(java)만 설치하게 되면 javac, jar 등이 없으므로 아래의 jdk를 설치하자.


상기 링크를 통해 본인의 PC 환경에 맞는 파일을 선택하여 저장하도록 한다.

자동압축풀기설치를 위해서 rpm.bin 을 다운로드 받았다. rpm으로 설치를 하면 적절한 위치에 알아서 설치가 된다.
(jdk-1_5_0_22-linux-i586.bin 파일을 받았다면 설치할 폴더로(/usr/java/ 등..) 파일을 move 한 후 파일에 execute 모드를 주고 실행하면 된다.)

$chmod a+x jdk-1_5_0_22-linux-i586.rpm.bin
$sudo ./
jdk-1_5_0_22-linux-i586.rpm.bin

와 같이 실행하면 라이센스에 대한 문구가 출력이 된다.
space 키 입력하면서 모두 읽고나서 마지막으로 yes를 입력하여 확인 하고 나면
jdk-1_5_0_22-linux-i586.rpm 파일이 생성된다.

ubuntu에서는 rpm을 ubuntu용 설치 패키지 파일인 deb 포맷으로 변환해서 설치를 하여야 한다.

rpm to deb 로 변환을 위해서는 alien을 설치해야 한다.

$sudo apt-get install alien

alien 설치가 완료되었다면
deb로 변환해보자.

$sudo alien -c jdk-1_5_0_22-linux-i586.rpm

변환이 완료되면 jdk-1_5_0_22-linux-i586.deb 파일이 생성이 된다.

그럼 dpkg를 이용하여 최종 설치를 하면된다.

$ sudo dpkg -i jdk_1.5.0_22-1_i386.deb
전에 선택하지 않은 jre 패키지를 선택합니다.
(데이터베이스 읽는중 ...현재 129261개의 파일과 디렉토리가 설치되어 있습니다.)
jre 패키지를 푸는 중입니다 (jre_1.5.0_21-1_i386.deb에서) ...
jre (1.5.0_21-1) 설정하는 중입니다 ...
/usr/java/jdk1.5.0_22

위의 디렉토리로 패키지의 설치를 마쳤다.

마지막으로 java 1.5로 각 링크들을 변경하기 위해 아래와 같이 입력한다.
java 와 같이 기존에는 설치가 되어 있는 것들은 --config을 통해서 
selection을 변경해주어야 한다.

그 이외 javac, jar, javah 와 같이 jdk를 통해 새로 설치된 것들을 install

$sudo update-alternatives --install "/usr/bin/java" "java" "/usr/java/jdk1.5.0_22/jre/bin/java" 1
$sudo update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                  Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-6-sun/jre/bin/java   63        auto mode
* 1            /usr/java/jre1.5.0_21/bin/java         1         manual mode
  2            /usr/lib/jvm/java-6-sun/jre/bin/java   63        manual mode

Press enter to keep the current choice[*], or type selection number: 1

$sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/java/jdk1.5.0_22/bin/javac" 63
$sudo update-alternatives --install "/usr/bin/jar" "jar" "/usr/java/jdk1.5.0_22/bin/jar" 63
$sudo update-alternatives --install "/usr/bin/javah" "javah" "/usr/java/jdk1.5.0_22/bin/javah" 63
$sudo update-alternatives --install "/usr/bin/javadoc" "javadoc" "/usr/java/jdk1.5.0_22/bin/javadoc" 63

update-alternatives 명령을 이용해 java, javac 등 의 링크를 새로 설치한 것으로 수정했다.

참고로 update-alternatives의 help를 보면 아래와 같다.
  --install <link> <name> <path> <priority>
<priority> is an integer; options with higher numbers have higher priority in
  automatic mode.
위의 예에서는 4번째 파라메터에 1 값을 주었는데 만약 64값을 주게 되면 auto mode에서도 알아서 /usr/java/jdk1.5.0_22/jre/bin/java 
로 링크가 될 것 같다.


그리고 user home 에서 .bashrc 파일을 열어서 아래와 같이 JAVA_HOME을 설정하자.
*주의  =(equal) 앞뒤로 space는 허락하지 않는다.

$cd ~
$gedit .bashrc

# set PATH
export JAVA_HOME=/usr/java/jdk1.5.0_22/bin
export ANDROID_JAVA_HOME=$JAVA_HOME


파일 저장 후 편집한 bashrc를 아래와 같이 source를 이용하여 환경에 바로 적용하자.

$cd ~
$source .bashrc


설정한 JAVA_HOME이 적용되었는지 확인

$echo $JAVA_HOME
/usr/java/jdk1.5.0_22

마지막으로 모두 제대로 설정되었는지 확인.

$which java
/usr/bin/java
$java -version
java version "1.5.0_21"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_21-b01)
Java HotSpot(TM) Client VM (build 1.5.0_21-b01, mixed mode, sharing)
$which javac
/usr/bin/javac
$which jar
/usr/bin/jar
$which jar
/usr/bin/jar
$which javah
/usr/bin/javah

apt-get으로 설치 했을 경우에는 update-alternatives 를 사용할 필요가 없었는데,
dpkg -i deb로 설치를 하니 할일이 참 많다.
java, javac, jar, javah, javadoc 등이 모두 설치 되었음을 확실히 해야 한다.

여기까지 하였다면 다시 make를 하면 정상적으로 빌드가 시작된다.

비슷한 문제로 고민하는 이들이 있군요.
Posted by ekwang
Linux/Ubuntu2009. 11. 23. 22:08
출처 : http://ubuntu.or.kr/viewtopic.php?f=9&t=7454
deb 패키지 삭제 방법.  package 수동 삭제.

adobe-flashplugin 설치가 정상적으로 마무리 되지 않아서 
" ~ 아카이브를 찾을 수 없습니다." 라는 오류 문구와 함께
시냅틱 패키지 관리자, dpkg, apt-get 어느것 하나 정상 적으로 동작 하지 않는 문제가 발생하였다.


상기 링크에서 해결 방법을 찾았다.
dpkg 정보에 포함되어 있는 adobe-flashplugin관련 정보를 모두 삭제 후
apt-get install 하여 재 설치 하니 정상 동작 하였다.

$cd /var/lib/dpkg
$sudo gedit status

하여 adobe-flashplugin pakage 정보를 제거.

$sudo gedit available

한 후 마찬가지로 adobe-flashplugin pakage 정보를 제거.

출처 링크에 보면 이후 .list에 설치된 내용들도 삭제를 하라고 하고 있는데,
위에서 한 것 처럼 status, available 에서 package정보만 삭제 후
다시 install 하여도 정상적으로 잘 됨을 확인 하였다. 


Posted by ekwang
Linux/Ubuntu2009. 11. 21. 00:31
매번 폰트 설치 할 때 마다 찾아보게 되니 간단히 기록 하도록 하자.

1. user의 홈디렉토리에 .fonts 폴더를 생성한다. ($cd ~)
2. 설치할 ttf 폰트 파일을 .fonts에 copy한다.
(개인적으로 나눔고딕, 나눔코딩고딕 폰트가 깔끔하게 좋다.)
3. sudo fc-cache -r -fv
4. system font들이 anti aliasing이 제대로 안될 경우(글씨가 못나게 출력되는 경우)
     gksu rm /etc/fonts/conf.d/29-language-selector-ko-kr.conf 


Posted by ekwang
Linux/Ubuntu2009. 10. 12. 23:30

ubuntu에서는 특정 저장소를 통해서 소프트웨어를 배포한다.
apt-get 명령어를 이용하여 소프트웨어 패키지를 다운로드하게되는데
간혹 apt-get 명령어 실행시 다운로드 에러가 발생하는 경우가 있다.

기본저장소로 설정되어 있는 Kaist 서버가 죽은 경우인데,
소프트웨어 패키지를 읽어올 저장소의 위치를 Daum으로 변경하여 간단히 해결 할 수 있다.

http://kr.archive.ubuntu.com -> http://ftp.daum.net/ubuntu

/etc/apt/ sources.list 파일을 열어서 아래와 같이 주소를 수정하면 된다.

우선 Terminal을 열고 아래와 같이 입력 한다.

$sudo gedit /etc/apt/sources.list

gedit 가 열리면 아래와 같이 내용을 수정한다.

#deb cdrom:[Ubuntu 9.04 _Jaunty Jackalope_ - Release i386 (20090420.1)]/ jaunty main restricted
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.

deb http://ftp.daum.net/ubuntu/ jaunty main restricted
deb-src http://ftp.daum.net/ubuntu/ jaunty main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://ftp.daum.net/ubuntu/ jaunty-updates main restricted
deb-src http://ftp.daum.net/ubuntu/ jaunty-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://ftp.daum.net/ubuntu/ jaunty universe
deb-src http://ftp.daum.net/ubuntu/ jaunty universe
deb http://ftp.daum.net/ubuntu/ jaunty-updates universe
deb-src http://ftp.daum.net/ubuntu/ jaunty-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://ftp.daum.net/ubuntu/ jaunty multiverse
deb-src http://ftp.daum.net/ubuntu/ jaunty multiverse
deb http://ftp.daum.net/ubuntu/ jaunty-updates multiverse
deb-src http://ftp.daum.net/ubuntu/ jaunty-updates multiverse

## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
# deb http://kr.archive.ubuntu.com/ubuntu/ jaunty-backports main restricted universe multiverse
# deb-src http://kr.archive.ubuntu.com/ubuntu/ jaunty-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu jaunty partner
# deb-src http://archive.canonical.com/ubuntu jaunty partner

deb http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-src http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb http://security.ubuntu.com/ubuntu jaunty-security universe
deb-src http://security.ubuntu.com/ubuntu jaunty-security universe
deb http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-src http://security.ubuntu.com/ubuntu jaunty-security multiverse

ubuntu 버젼에 따라 상기 파일의 내용이 조금 달라진다.
(위의 예제는 9.04 jaunty 기준임)

파일 수정이 완료 되었으면 저장 후 gedit를 종료한다.

다시 터미널에서 아래와 같이 저장소를 update한 후 원하는 소프트웨어를 apt-get을 이용하여 다운로드 하면된다.
$sudo apt-get update
Posted by ekwang