· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
데비안한글설정문서

1.1. locales 패키지

locales 패키지를 설치하고
  # apt-get install locales
 

설치 하는 도중에 나오는 locales 설정 부분(아래 부분)에서 [1] ko_KR.EUC-KR EUC-KR 부분을 꼭 선택합니다.
만약 아래의 화면이 나오지 않거나 locales 가 이미 설치 되어 있다면
  # dpkg-reconfigure locales
 

위의 명령어를 치십시요..
                                                                               
  ┌─────────────────────────┤ locales 설정중 ├──────────────────────────┐
  │ Locale is a framework to switch between multiple languages for users                                                     │
  │ can select to use their language, country, characters, collation order,                                                  │
  │ etc.                                                                                                                     │
  │ Choose which locales to generate.  The selection will be saved                                                           │
  │ `/etc/locale.gen', which you can also edit manually (you need to run `locale-gen' afterwards).                           │
  │
  │ Select locales to be generated.
  │
  │    [ ] kl_GL.UTF-8 UTF-8
  │    [*] ko_KR.EUC-KR EUC-KR
  │    [ ] ko_KR.UTF-8 UTF-8
  │    [ ] kw_GB ISO-8859-1
  │
  │
  │                    <Ok>                        <Cancel>
  │
  └─────────────────────────────────────────────────────────────┘
                                                                                 
 

1.2. 한글 입력기 설치

XWindow를 설치하신다면 Ami 나 nabi 를 설치 하십시요.
  # apt-get install nabi         (혹은 apt-get install ami )
 

1.3. 환경 설정

1.3.1. language-env 패키지 설치

language-env 패키지를 설치 하세요.. 많은 부분의 한글 설정을 자동화 시켜줍니다.
  # apt-get install language-env
 

1.3.1.1. language-env 명령 실행
이제 language-env 패키지를 이용하여 한글을 설정하겠습니다. language-env 패키지를 사용하시려면 set-language-env 명령을 쓰십시요
  # set-language-env
 

만약 이 명령을 쳤는데 아래와 같은 메세지가 나오면
 Setting up users' native language environment
 by modifying their dot-files.
 Type "set-language-env -h" for help.
  
 The root user should not run set-language-env
 because this modifies your dot-files.
 If you surely want to run set-language-env,
 invoke with '-R' or '-E' option.
 

-R 을 추가로 넣어서 실행시켜 주세요.. (root 가 사용하면 이런 메세지가 나옵니다.)
  # set-language-env -R
 

  • root 가 -R 옵션을 사용할 경우 강제 설정하게 된다. 따라서 기존의 패스 설정이 무시되는데 이런 경우 잘 모르면 로그아웃 후 패키지 관리자를 실행하게 되면 패키지를 설치하지 못하게 되는 경우가 생긴다.
    따라서 .bash_profile 안에 source ~/.profile
    을 반드시 추가해줘야 한다.!!!!
1.3.1.2. 설정할 언어 선택 (LANG 설정)
set-language-env 화면은 언어 선택화면입니다. 당연히 한글(ko)을 선택해야죠?
 Setting up users' native language environment
 by modifying their dot-files.
 Type "set-language-env -h" for help.
  
 1 : be  (Bielaruskaja,Belarusian)
 2 : bg  (Bulgarian)
 3 : ca  (Catala,Catalan)
 4 : da  (Dansk,Danish)
 5 : de  (Deutsch,German)
 6 : es  (Espanol,Spanish)
 7 : fr  (Francais,French)
 8 : ja  (Nihongo,Japanese)
 9 : ko  (Hangul,Korean)
 10 : lt  (Lietuviu,Lithuanian)
 11 : mk  (Makedonski,Macedonian)
 12 : pl  (Polski,Polish)
 13 : ru  (Russkii,Russian)
 14 : sr  (Srpski,Serbian)
 15 : th  (Thai)
 16 : tr  (Turkce,Turkish)
 17 : uk  (Ukrajins'ka,Ukrainian)
 
 Input number > 9 "엔터"
 
 Does this terminal support Hangul?(이 글이 보입니까?)[y/N]
 

마지막 끝에 Does this termial support Hangul?(이 글이 보입니까?)y/N 메세지가 나오는데.."이글이 보이십니까?" 메세지가 보이면 Y 를 아니면 N을 눌러주세요.(보통 처음에는 안보이죠..)
1.3.1.3. 폰트 선택
이제 기본 폰트를 선택하게 됩니다.
 Now obtaining package list...
 Please select the default Korean font.
  
 1:-*-gulim-*-r-normal--*-*-*-*-*-*-ksc5601.1987-1
 2:-*-dotum-*-r-normal--*-*-*-*-*-*-ksc5601.1987-1
 3:-*-roundgothic-*-r-normal--*-*-*-*-*-*-ksc5601.1987-1
 4:-*-hyrgothic-*-r-normal--*-*-*-*-*-*-ksc5601.1987-1
  
  (1..4, [Enter]=1) 1 "1 입력후 엔터"
 

현재 가지고 있는 폰트를 선택하시기 바랍니다. gulim 과 dotum 은 "xfonts-baekmuk"를 설치하거나 설치 되어 있으면 이것을 선택하고 hyrgothic 은 아마도..xfonts-hanyang-ko를 설치하시면 될것입니다.
1.3.1.4. 두벌식 세벌식 선택
아시죠?
 Do you use 3bulsic keyboard? [y/N] 
 

1.3.1.5. 한글, 한자, 윈도우키 설정 (.Xmodmap)
 ------- /root/.Xmodmap --------
 Setting the Xmodmap.
  
 Do setting?  [Y/n]
 

1.3.1.6. 한텀, 이맥스 환경 설정 (.Xresources)
 ------- /root/.Xresources --------
 Setting for some programs in X Window System.
  
 Do setting?  [Y/n]
 


1.3.1.7. 터미널 (bash 셀) 환경 설정 (.bash_profile, .bashrc)
 ------- /root/.bash_profile --------
 This file is executed by bash for login shells.
  
 Do setting?  [Y/n]
 
 ------- /root/.bashrc --------
 This file is executed by .bash_profile file.
  
 Do setting?  [Y/n]
 
 
 

1.3.1.8. 그놈 한경 설정 (.gnomerc )
 ------- /root/.gnomerc --------
 Setting for GNOME Applications.
  
 Do setting?  [Y/n]
 Do setting...
  
 ------- /root/.gtkrc --------
 Setting for GTK+ Applications
  
 Do setting?  [Y/n]
 Do setting...
  
 

1.3.1.9. 기타 설정
 ------- /root/.inputrc --------
 For softwares which use readline library such as bash.
  
 Do setting?  [Y/n]
 Do setting...
 
 ------- /root/.muttrc --------
 Setting for Mutt e-mail client.
  
 Do setting?  [Y/n]
 Do setting...
  
 ------- /root/.sawfishrc --------
 Setting for Sawfish WindowManager.
  
 Do setting?  [Y/n] n
 Setting is not done.
  
 ------- /root/.vimrc --------
 Setting for VIM(Vi IMproved) editor.
  
 Do setting?  [Y/n] n
 Setting is not done.
  
 ------- /root/.xsession --------
 X Session file.
  
 Do setting?  [Y/n] n
 Setting is not done.
  
 ------- /root/.icewm/keys --------
 Setting for IceWM WindowManager.
  
 Do setting?  [Y/n] n
 
 ....
    Setting is now done.  To activate these settings,
 logout and login.
    Read each dotfile and confirm the modification.
 If you don't like the setting, modify directly or
 add overriding setting after 'language-env end' line.
    Read /usr/share/doc/language-env/README.* for detail.
  
 Install the following packages.
 manpages-ko, ami, hanterm, urlview, tcsh-kanji, doc-debian-ko, doc-linux-text-ko 
 Install the following locales.
 (Edit /etc/locale.gen and invoke locale-gen)
 ko_KR.eucKR ("ko_KR.EUC-KR EUC-KR" in /etc/locale.gen)
  
 Push [Enter] key to End.
 
 
 

1.3.2. 기본으로 설정된 환경 파일수정하기

1.3.2.1. .xsession 파일
Xwindow 시작시 윈도우 메니저등을 설정하는 파일이다. 그냥 속시원하게 다시 작성하자.
  # cd ~
  # mv .xsession xsession.bak
  # vi .xsession
 
 
 # ---- language-env DON'T MODIFY THIS LINE!
                                                                                 
 export LANG="ko_KR.eucKR"
 export LC_ALL="ko_KR.eucKR"
 export XMODIFIERS="@im=nabi"         # 만약 nabi 대신에 ami를 깔았다면 nabi 를 Ami 로 교체
 
 xmodmap ~/.Xmodmap
 
 xset -b
 xset m 50/9 4        # 마우스 감도 설정
 
 exec 윈도우 메니저 파일
 
 

이제 콘솔 모드로 나간 다음 startx 명령으로 XWindow을 실행시키자.. 부팅시 자동으로 XWindow로 들어간다면
Xwindow 상에서 Ctrl + Alt + F2 키로 콘솔로 들어간다음 /etc/init.d/gdm stop --> gnome 환경일때 /etc/init.d/kdm stop --> kde 환경일때 /etc/init.d/xdm stop ---> 기본만 깔렸을때.
명령을 실행시켜 종료시킨다음
startx 명령을 실행시킨다.

2. xwindow 설치 및 폰트, true 폰트 설치

XWindow 설치 위키 참고

3. gdm에서 한글 사용하기

:) 처음 설치한 gdm에서 xim 사용이 불가능한 이유는 시작 스크립트에 xim 설정변수를 초기화하는 줄이 포함되어 있지 않았기 때문이다. 따라서 Nabi / Ami 류의 한글 IM들을 사용하고자 한다면 아래처럼 필요한 변수를 설정해주면 된다. 이것들은 X를 시작할 때마다 최종적으로 실행되는 창관리자 / 데스크탑 환경과 동일한 쉘에서 우선적으로 선언되어야 한다. (gdm에만 한정된 것은 아니다. X를 시작하는데 있어서 필요한 세션 시작스크립트에는 모두 적용된다.)
이유: (일반적으로 특정 스크립트를 실행할 때 호출되는) 개별적으로 실행되는 쉘들은 다른 쉘의 세션을 간섭하지 않기 때문에 환경변수 또한 이전 세션에서 끝나버린다. 이것이 동일한 쉘에서 선언되어야 하는 이유이다.
:> 강조하지만, (스크립트의 메인테이너가 이런 내용을 스크립트에 지정하지 않는 한) 이것은 stable, testing, unstable 등의 배포본의 버전에는 전혀 구애받지 않는다.
<"구애"란 어휘는 원래 사랑을 얻는다는 뜻이다. 즉, 러브 콜이다. 사실 이런 기능은 DM 패키지들의 메인테이너들로부터 러브콜을 받아야 할 기능인데, 안타깝다. 입문자는 여러모로 고행을 겪어야 하기에...>

3.1. gdm 버전 확인하기

필자가 현재 sid환경을 주 환경으로 쓰고 있어서 sid에서 보는 관점으로 설명한다. 이 글을 쓰는 시점에서 gdm의 최신 버전은 2.4.4.7-1이다. 이것은 기존의 gdm환경에서 freedesktop.org의 명세를 맞추려는 의도때문에 디렉토리 구조가 조금 달라졌다. 원래의 /etc/gdm 디렉토리에도 Sessions (세션 지정 장소) / PreSessions (세션 시작전에 실행될 스크립트 지정장소) / PostSessions (세션이 끝난 후에 실행될 스크립트 지정장소)가 있지만, 진짜 세션은 /etc/dm/Sessions 에 들어있다.
이전 버전의 환경을 쓰고 있다면 여기를 보기 바란다.

3.2. freedesktop에 맞춘 gdm 설정

시스템을 업그레이드하다가 이상하게 꼬인 듯한 gdm을 만나서 지우고 싶은 충동을 느꼈다면 새 버전이 맞다. 아래를 따라가보자:
  # pwd
  /etc/dm/Sessions  (<- 작업 디렉토리)
 
  # ls
  default.desktop 
 (-> 가까운 미래에는 일정한 형식을 가진 ".속성" 형태의 파일을 자주 보게 될 것 같다. 
 freedesktop 명세에 지정된 XCursor의 테마파일은 ".theme" 유형을 가진다.
 시대가 데스크탑 환경 지향적으로 흘러가다보니 세션의 꼬리명이 ".desktop"로 되었다.)
 
  # more default.desktop
  [Desktop Entry]
  Encoding=UTF-8
  Name=Default System Session
  Name[ko]=시스템 기본 세션
  Name[ja]=시스테무기보누세숀!@#!@#@
  ..
  Comment=This is the default system session
  Comment[ko]=시스템 기본 세션입니다
  ..
  Exec=default
  # default는 기본세션이고 custom으로 지정하면 xsession을 참조하게 됩니다.
  Icon=
  Type=Application
  (-> 대충 이런 내용들이 들어있다. 원본은 그대로 두고 여기서 중요한 부분만 고친 복사본을 만들어 쓰자.)
 
  # cp default.desktop custom.desktop
  # vi custom.desktop
  [Desktop Entry]
  Encoding=EUC-KR (-> 인코딩을 결정하는 부분이다. UTF-8을 쓰고 있다면, 그대로 두어도 된다)
  Name=Custom System Session (-> gdm 세션 선택 메뉴에 나타날 세션이름이다. 영어로 적는다. 한글메뉴명은 "Name[ko]"에 적으면 된다)
  Comment=This is the custom system session  (-> 세션 정보를 보여주는 부분이다. 구름 도움말의 기능)
  Exec=custom 
  (-> 제일 중요한 부분이다. 이 부분을 잘못 적으면 gdm이 혼수상태에 빠지기도 한다. xsession을 참조하도록 하려면 "custom"으로 고친다)
  Icon= (-> 아마도 그래픽 greeter를 쓸 때, 유저목록이 지원되는 테마에서 사람머리 그림대신 띄울 아이콘 파일을 지정하는 곳 같다)
  Type=Application (-> 이 파일의 유형을 의미하는 것 같다. 그놈의 "바로가기" 유형)
  
 이렇게 하면 gdm 세션 메뉴에 custom이 보일 것이다. 나중에 한글 입력이 가능한 환경에서 작업하려면 이것을 선택하면 된다. 
 
 그전에 해줄 것이 있다. custom은 xsession을 참조하고, xsession은 유저의 홈디렉토리에 존재하는 .xsession 파일을 참조해서 실행하도록 되어 있다.
 결과적으로 ~/.xsession 파일에 로케일 변수와 XIM변수 그리고 그외 GTK 한글관련환경변수들을 선언해주어야 한다. 필자는 비상시에 실행하는 startx를 위해서 이미 준비해서 쓰고 있다.
 어쩌면, gdm에서 xsession을 참조하도록 한 정책이 스크립팅 유저들에게는 더 편안하게 다가왔는지도 모르겠다. 
 
 아래는 필자의 .xsession 내용이다:
 ---------------------------------
  export LANG=ko_KR.EUC-KR  <-- 한글을 쓰려면 반드시 지정해야 할 로케일 언어 변수이다.
  export LC_ALL=ko_KR.EUC-KR  <-- LANGUAGE가 지정되지 않았을 때, 모든 LC_변수들의 값을 통일한다
  export XMODIFIERS="@im=nabi"  <-- 요즘 XIM 추세는 나비이다. 아미도 좋은 프로그램이지만, 필자가 GTK2로 통일하는 것을 좋아한 나머지..
  export GTK_IM_MODULE=hangul2 <-- XIM을 안쓸 때, GTK2의 입력 모듈을 hangul2를 쓰도록 지정했다
  export G_BROKEN_FILENAMES=1  <-- 그놈의 기본 인코딩 방식인 UTF-8이 아닌, EUC-KR을 쓸 때 일부 한글파일명이 <잘못된 유니코드>로 인식되는 것을 막는다
  export GDK_USE_XFT=1  <-- 비록 기본값이 True이지만, GTK 또는 그놈에서 XFT를 사용하도록 완전히 못박았다
  gnome-session  <-- 그놈 세션을 관리하는 녀석이다.
  #pwm  <-- 이 녀석의 단순하고 탭 통합 기능이 필자의 넋을 앗아갔다. 그놈이 아플 때 쓰는 그녀이다.
 ---------------------------------
 


3.3. gdm 2.4 초기 버전일 경우

더 간단하다. /etc/gdm/Sessions/Gnome 파일에 위의 변수들을 적절히 넣어준다.
잘 보면 ## Shell Environment ## 라고 지정된 부분이 있다. 그 밑에 넣어주면 나중에 찾기도 쉽고 여러모로 깔끔하다. 그보다 아래쪽에는 스크립트의 함수들을 정의해놓은 부분이라서 스크립트만 봐도 어지러운 분들을 키보드에 토하게 만든다.

3.4. gdm을 한글 메뉴로 도배하려면

필자는 프레임버퍼 콘솔을 안쓰며, 더군다나 콘솔한글입력 프로그램들을 안쓰기에 콘솔에서 깨진 한글을 안보려고 시스템 기본 로케일을 C로 잡고 있다. 이렇게 하면 콘솔에서는 영어전용이며, 엑스환경에서만 위의 변수들을 통해 한글을 쓸 수 있게 된다. 그러나 gdm 메뉴화면에서는 여전히 한글은 커녕 영어메뉴가 뜬다. 왜냐하면, 위에서 설명한 부분들은 그놈세션을 시작하는 스크립트 내부환경을 지정한 것이기 때문이다. gdm 메뉴화면이 뜨는 시점은 세션 시작전이다. 즉, PreSessions/ 안의 시작스크립트에 LANG를 ko_KR로 설정해주면 될 법도 하다. 그러나 영어메뉴에서 그다지 불편함을 못느끼기 때문에 시도를 안하고 있다. 관심있으면 시도해보기 바란다. 혹시 UNICON이나 zhcon을 쓰고 있는 상황이면 시스템 기본 로케일을 ko_KR로 지정하는 편이 간단하고 빠르다. (현재 gdm 2.4.4.7-2 버전 이후로는 /etc/defaults/gdm 파일을 수정함으로써 gdm이 실행되는 로케일을 정할 수 있습니다.)

4. 글 갱신

2004 04 12 : 임채훈 처음 작성
2004 04 29 : startx 명령 실행시키기 추가.
2004 04 29 : gdm 에서 한글 사용하기 단락 추가. 정훈
2004 09 27 : gdm 메뉴 로케일 설정 변경사항 추가. 기안호



sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2018-01-12 06:10:28
Processing time 0.0029 sec