1. 문제 상황 (Symptoms)

서버를 새로 구축하거나 해외 장비를 인수받았을 때, 터미널의 언어 설정(Locale)이 한국어가 아닌 중국어(zh_CN)나 영어로 설정되어 있어 로그 확인이 어려운 경우가 있습니다.

이번 포스팅에서는 CentOS 7.8 환경에서 기본 언어가 중국어(zh_CN.utf8)로 설정된 시스템을 **한국어(ko_KR.utf8)**로 변경하고, 재부팅 후에도 설정이 풀리지 않도록 영구 적용하는 방법을 정리합니다.


  •  
  • 테스트 환경(OS): CentOS 7.8

  •  
     
  • 현재 증상: date 명령어 입력 시 날짜가 중국어 한자로 출력됨

2. 현재 로케일 설정 확인 (Diagnosis)

먼저 현재 시스템에 적용된 언어셋을 확인합니다. locale 명령어를 입력하면 현재 설정된 환경 변수들을 볼 수 있습니다.

Bash
 
[root@InnerN-SV ~]# locale
LANG=zh_CN.utf8
LC_CTYPE="zh_CN.utf8"
LC_NUMERIC="zh_CN.utf8"
LC_TIME="zh_CN.utf8"
...

 

 

위와 같이 LANG 변수가 zh_CN.utf8로 되어 있어, date 명령어를 쳤을 때 아래처럼 중국어로 출력되는 상황입니다.

Bash
 
[root@InnerN-SV ~]# date
2022年03月04日 星期五 01:35:29 KST

 

 

3. 사용 가능한 언어 팩 확인

변경하려는 한국어 팩이 설치되어 있는지 먼저 확인해야 합니다. locale -a 명령어로 OS에서 사용할 수 있는 로케일 목록을 조회합니다.

Bash
 
locale -a | grep ko_KR

 

 
  • 만약 목록에 ko_KR.utf8이 없다면 언어 패키지 설치가 필요합니다. (글 하단 참고)

4. 로케일 변경 방법 (Resolution)

4-1. 현재 세션에서 즉시 변경 (임시 적용)

현재 접속 중인 터미널 세션에서만 언어를 변경하려면 localectl 명령어를 사용하거나 환경변수를 재설정합니다.

Bash
 
# 한국어(UTF-8)로 로케일 설정
[root@InnerN-SV ~]# localectl set-locale LANG=ko_KR.utf8

 

 

4-2. 재부팅 후에도 유지되도록 영구 설정 (Permanent Setting)

서버를 재부팅하면 다시 원래 언어로 돌아가는 것을 방지하기 위해 프로파일(profile)을 수정해야 합니다. /etc/profile 파일은 시스템 전역에 적용되는 환경 설정 파일입니다.

 
  1. /etc/profile 파일을 편집기로 엽니다.
  2. 파일의 맨 마지막 줄에 아래 내용을 추가합니다.
Bash
 
LANG=ko_KR.utf8

 

 
  1. 수정된 내용을 시스템에 즉시 반영하기 위해 source 명령어를 실행합니다.
Bash
 
source /etc/profile

 

 

이제 재부팅하거나 로그아웃 후 다시 접속해도 locale 명령어를 입력하면 한국어 설정이 유지되는 것을 확인할 수 있습니다.

 

5. 트러블슈팅: 한국어 패키지가 없는 경우

만약 locale -a 조회 시 한국어 팩이 없다면 설정이 불가능합니다. 이 경우 외부망이 연결되어 있다면 패키지 관리자를 통해 설치하거나, 폐쇄망인 경우 OS ISO 파일에서 패키지를 추출해 전송해야 합니다.

 
  • 외부망 연결 시: yum install glibc-langpack-ko (CentOS 8 이상) 또는 yum groupinstall "Korean Support" 등의 명령어 활용
  •  
  • 폐쇄망(Offline) 시: OS 설치 미디어(ISO) 내의 Packages 폴더에서 해당 언어 .rpm 파일을 찾아 서버로 전송 후 설치
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기