우분투에서 로케일(Locale) 및 문자셋 변경하는 방법(ko_KR.UTF-8)
우분투 서버나 데스크톱에서 한글 환경을 설정하려면 올바른 로케일(locale)과 문자셋(UTF-8) 설정이 필수입니다.
1. 현재 로케일 설정 확인
시스템 로케일 확인
localectl status
$ localectl status
System Locale: LANG=C.UTF-8
VC Keymap: n/a
X11 Layout: n/a
개별 로케일 변수 확인
locale
$ locale
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
- 현재 로케일이 C/POSIX로 되어 있어 한글 출력이 제한적입니다.
시스템에서 사용 가능한 모든 로케일 목록
localectl list-locales
$ localectl list-locales
C.UTF-8
시스템에 설치된 실제 locale 목록
locale -a
$ locale -a
C
C.utf8
POSIX
- 한국어 locale이 존재하지 않음을 확인할 수 있습니다.
2. 로케일 패키지 설치
한국어 로케일을 사용하려면 locales 및 language-pack-ko 패키지가 필요합니다.
locales 패키지 설치
sudo apt-get install -y locales
한국어 language-pack 검색
sudo apt-cache search language-pack-ko | grep -i korean
$ sudo apt-cache search language-pack-ko | grep -i korean
language-pack-ko - translation updates for language Korean
language-pack-ko-base - translations for language Korean
한국어 패지키 설치
sudo apt-get install -y language-pack-ko language-pack-ko-base
- ko_KR.UTF-8 로케일을 사용할 수 있게 됩니다.
더보기
더보기
---
로케일 설정 변경
로케일 설정은 locale-gen 명령을 사용하여 변경할 수 있습니다.
- ko_KR.UTF-8 로케일을 생성
sudo locale-gen ko_KR.UTF-8
$ sudo locale-gen ko_KR.UTF-8
Generating locales (this might take a while)...
ko_KR.UTF-8... done
Generation complete.
- 시스템의 기본 로케일을 ko_KR.UTF-8로 설정
sudo update-locale LANG=ko_KR.UTF-8
문자셋 설정 변경
기본적으로 UTF-8 문자셋을 사용하는 것이 좋습니다. 하지만 필요에 따라 다른 문자셋을 사용할 수도 있습니다. UTF-8 이외의 문자셋을 사용하려면 해당 문자셋을 로케일 설정과 함께 지정해야 합니다.
- ko_KR.EUC-KR 문자셋을 생성
sudo locale-gen ko_KR.EUC-KR
$ sudo locale-gen ko_KR.EUC-KR
Generating locales (this might take a while)...
ko_KR.EUC-KR... done
Generation complete.
- 시스템의 기본 로케일을 ko_KR.EUC-KR로 설정
sudo update-locale LANG=ko_KR.EUC-KR
---
3. 한국어 로케일 생성 및 적용
한국어 로케일 생성
sudo locale-gen ko_KR.UTF-8
시스템 기본 로케일 설정 우분투에서는 update-locale 명령을 사용하는 것이 공식적이고 안전한 방법입니다.
sudo update-locale LANG=ko_KR.UTF-8 LC_ALL=ko_KR.UTF-8
또는 최소 설정(권장)
sudo update-locale LANG=ko_KR.UTF-8
LC_ALL은 시스템 전체의 우선순위를 강제하는 변수이므로 가급적 LANG만 지정하고 LC_ALL은 비우는 것이 더 권장됩니다.
localectl로 로케일 적용(대안)
우분투 데스크톱 또는 systemd 환경에서 가장 깨끗한 방식
sudo localectl set-locale LANG=ko_KR.UTF-8
4. 현재 로케일 확인
locale
$ locale
LANG=
LANGUAGE=
LC_CTYPE="ko_KR.UTF-8"
LC_NUMERIC="ko_KR.UTF-8"
LC_TIME="ko_KR.UTF-8"
LC_COLLATE="ko_KR.UTF-8"
LC_MONETARY="ko_KR.UTF-8"
LC_MESSAGES="ko_KR.UTF-8"
LC_PAPER="ko_KR.UTF-8"
LC_NAME="ko_KR.UTF-8"
LC_ADDRESS="ko_KR.UTF-8"
LC_TELEPHONE="ko_KR.UTF-8"
LC_MEASUREMENT="ko_KR.UTF-8"
LC_IDENTIFICATION="ko_KR.UTF-8"
LC_ALL=ko_KR.UTF-8
- LC_ALL이 비어 있고 LANG이 ko_KR.UTF-8이면 정상 설정입니다.
5. 환경변수 방식 설정(세션 단위)
일시적(현재 세션만) 로케일 적용
export LC_ALL=ko_KR.UTF-8
다시 확인
locale
6. 재부팅(필요 시)
전체 시스템 로케일이 정상 적용되려면 로그아웃 또는 재부팅이 필요할 수 있습니다.
sudo reboot
locale 명령을 실행하여 변경된 로케일 및 문자셋을 확인할 수 있습니다. 설정이 올바르게 적용되면 변경된 로케일과 문자셋이 표시됩니다.
'리눅스' 카테고리의 다른 글
| [draft] mongodb(shard) - 2 (0) | 2025.12.07 |
|---|---|
| [draft] mongodb(config) - 1 (0) | 2025.12.07 |
| [draft] Docker Swarm 서비스를 확인하고 Docker Swarm 모드를 비활성화하는 방법 (0) | 2025.12.06 |
| [draft] Docker Swarm 클러스터에 서비스를 배포하고 업데이트하며 전역 스케일을 조절하는 방법 (0) | 2025.12.06 |
| [draft] Docker Swarm 클러스터에 서비스를 배포하는 방법 (0) | 2025.12.06 |