참고로 인코딩된 내용을 보는 법은 Locale 명령어를 사용한다.
한글 인코딩 바꾸기
리눅스는 기본적으로 인코딩이 utf-8로 설정되어 있다. 이 설정대로 쓰게되면 pstree나 ntsysv같은 쉘 기반의 화면들이 마구 깨져나올 수 있다. 한글 인코딩을 euck로 바꿔줘야 한다. (참고: 자신의 웹페이지나 터미널 프로그램이 UTF-8 인코딩에 최적화 되어 있다면 아래 내용은 해당되지 않는다.)
i18n 을 아래와 같이 바꾸어 주고
LANG="ko_KR.eucKR"
SUPPORTED="en_US.iso885915:en_US:en:ko_KR.eucKR:ko_KR:ko"
SYSFONT="lat0-sun16"
SYSFONTACM="8859-15"
변경내용을 적용시켜준다.
# source /etc/sysconfig/i18n
# vi ~/.bashrc 에서 다음과 같이 입력하여 사용자 로케일 환경을 바꿔준다.
export LC_ALL=ko_KR.eucKR
export LANG=ko_KR.eucKR
x윈도우의 터미널을 쓴다면 그놈터미널에서 euc_kr 로 환경설정을 변경하면 된다.
한글 man page 깨지는 현상
# export LANG=ko_KR.eucKR (위 i18n 파일에서 바꿔놓았으면 생략 해도 좋다.)
/etc/man.config에서
:PAGER /usr/bin/less -is
를 아래와 같이 고친다.
:PAGER /usr/bin/less -isr
/etc/man.config 에서
KNROFF LANG=ko_KR.eucKR /usr/bin/nroff -Tkorean -mandoc
식으로 LANG 값을 앞에 넣어주면 깨지던 문제가 제대로 잘 나온다고 한다.
man-1.5m2 에서는 위와같이 할 경우, 한글로 나오긴 하지만,
man.config의 일부 내용이 출력되는 현상이 있다는...
윈도우에서 작성한 한글이 깨져보일 때
윈도우에서 작성한 문서를 페도라2에서 열어보면 한글이 다 깨져보이는 수가 있다. 이는 encoding 차이때문인데 윈도우에서 저장한 파일은 기본적으로 euckr로 인코딩된다. Fedora Core2는 utf-8방식을 사용하기 때문에 파일을 컨버전해야 한다. 방법은 2가지다
파일을 utf-8로 인코딩함
$ iconv -f euckr -t utf-8 file_euckr.txt > file_utf-8.txt
에디터 프로그램의 보기에서 encoding을 euckr로 바꿔준다. (vi는 지원함)
파일 형식의 변환
GNU 에서 배포하는 recode 라는 작은 프로그램이 있다.
(http://www.gnu.org/software/recode/recode.html)
사용방법은 매우 간단하다.
쉘에서 다음과 같이 입력하면된다.
recode -v <소스인코딩>...<출력인코딩> <파일명>
가장 마음에 드는 점은 와일드카드 (*) 를 지원해서 파일들을 한꺼번에 인코딩 변환이 가능하다는 것.
recode -v EUC-KR...UTF-8 *.php
recode -l 을 치면 지원하는 모든 charset 을 볼 수 있다.