locale

세계 여러 다른 나라들은 각자만의 시간, 날짜, 언어 등을 가지고 있습니다. Locale 이란 이와 같이 모국어 환경의 명시적 모델이자 정의 입니다. Locale의 카테고리에는 LC_TIME, LC_MESSAGES, LC_NUMERIC, 등이 있습니다. 예를 들면 미국의 영어 사용자는 en_US.UTF-8 locale(미국 영어)을 선택할 수 있고, 영국의 영어 사용자는 en_GB.UTF-8 locale(영국 영어)을 선택할 수 있습니다.

Locale 확인

일단 자신의 Locale을 확인합니다.

$ locale
LANG=ko_KR.EUC-KR 
LANGUAGE=ko_KR: 
LC_CTYPE="ko_KR.EUC-KR" 
LC_NUMERIC="ko_KR.EUC-KR" 
LC_TIME="ko_KR.EUC-KR"
LC_COLLATE="ko_KR.EUC-KR" 
LC_MONETARY="ko_KR.EUC-KR"
LC_MESSAGES="ko_KR.EUC-KR"
LC_PAPER="ko_KR.EUC-KR"
LC_NAME="ko_KR.EUC-KR" 
LC_ADDRESS="ko_KR.EUC-KR"
LC_TELEPHONE="ko_KR.EUC-KR"
LC_MEASUREMENT="ko_KR.EUC-KR"
LC_IDENTIFICATION="ko_KR.EUC-KR"
LC_ALL

제가 우분투 설치 시 한글로 설정하였지만 깨졌던 이유는 옛날 방식인 EUC-KR에 있었네요.

한글 팩 설치

우선 한글이 없으신 분들은 한글 팩을 설치합니다.

$ sudo apt-get install language-pack-ko

참고로 위와같이 각 언어별로 language-pack-* 형태로 설치할 수 있습니다.

언어 변경

Locale을 설정하는 여러 방식이 있지만 경로로 찾아가 수정해 보겠습니다.

$ sudo vim /etc/default/locale

# File generated by update-locale
LANG="ko_KR.UTF-8"
LANGUAGE="ko_KR:ko"

위와 같이 수정후 SSH 재접속을 하거나 시스템을 재부팅하면 적용된 것을 확인할 수 있습니다.