[Linux] localectl 명령어

CentOS 7 버전부터 많은 명령어들이 통합되어 제공됩니다. 로케일 및 키보드 관련 부문은 localectl 명령어에서 제공합니다.

locale은 원래 지역이나 장소를 의미하지만, IT 환경에서는 언어 및 지역 설정을 지칭합니다.

리눅스에서는 문자 인코딩, 언어, 날짜/시간, 숫자 등의 지역화 설정을 locale 문자열로 정의합니다. 대부분의 유닉스 및 리눅스 배포판은 POSIX 기반이며, 이는 Red Hat 및 Debian 계열도 포함됩니다.

✅ locale 명령어

기본 명령어는 현재 시스템에 설정된 로케일 값을 보여 줍니다.

기본 명령어 입력 시 언어와 문자셋 관련 항목은 LANG 변수입니다.

 ~]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
항목설명
LANG전체 로케일의 기본값. 개별 LC_로 설정되지 않은 항목에 사용됨.
LC_CTYPE문자의 분류(알파벳, 숫자 등) 및 대소문자 변환 규칙을 정의함.
LC_NUMERIC숫자 표현 방식(소수점 기호, 천 단위 구분자 등)을 설정함.
LC_TIME날짜 및 시간의 형식(예: 월/일/연도 순서, 요일 이름 등)을 설정함.
LC_COLLATE문자열 정렬 순서를 정의함. (예: 사전순 정렬 방식)
LC_MONETARY통화 표시 형식(통화 기호 위치, 소수점 자리 등)을 설정함.
LC_MESSAGES시스템 메시지의 언어를 설정함. (예: 오류 메시지 등)
LC_PAPER용지 크기 설정 (예: A4, Letter 등)
LC_NAME사람 이름의 형식(예: 성, 이름 순서 등)을 설정함.
LC_ADDRESS주소 형식(예: 국가, 지역, 우편번호 순서 등)을 설정함.
LC_TELEPHONE전화번호 형식(예: 국가 코드, 지역번호 등)을 설정함.
LC_MEASUREMENT단위계 설정 (미터법/야드파운드법)
LC_IDENTIFICATION로케일 정보의 식별자 (로케일 이름, 작성자 등 메타 정보)
LC_ALL모든 LC_* 항목에 대한 일괄 설정값. 일반적으로 비워 두거나 수동 설정.
 ~]# echo $LANG
en_US.UTF-8

en은 언어, US는 국가(지역), UTF-8은 문자 인코딩을 의미합니다.

Linux Locale 의미

🔲 시스템에 설치 된 locale 보기: -a

시스템에 설치 된 모든 로케일 항목을 보여줍니다.

 ~]# locale -a
C
C.utf8
en_AG
en_AU
en_AU.utf8
en_BW
en_BW.utf8
...

✅ localectl 명령어: 시스템 Lacale 확인

localectl 명령어 실행 결과입니다. locaelctl status 실행 결과 역시 동일하게 나옵니다.

 ~]# localectl
System Locale: LANG=en_US.UTF-8   
    VC Keymap: (unset)         
   X11 Layout: (unset)         
 ~]# 

구분

설명

System Locale

현재 설정된 로케일

VC Keymap

가상 콘솔에서 사용하는 키보드 배열 설정

X11 Layout

Xwindows에서 사용되는 키보드 레이아웃

🔲 localectl 명령어 옵션

명령어

설명

status

현재 로케일 및 키보드 설정 확인

set-locale LANG=ko_KR.UTF-8

시스템 로케일 설정 변경

set-keymap us

콘솔 키보드 레이아웃 US로 설정

set-keymap ko

콘솔 키보드 레이아웃 KO로 설정

set-x11-keymap us

X11 키보드 레이아웃 US로 설정

set-x11-keymap kr

X11 키보드 레이아웃 KR로 설정

list-locales

설치된 로케일 목록 보기

list-keymaps

사용 가능한 키보드 맵 목록 보기

🔲 설정 가능한 로케일 출력

[Linux] localectl 명령어

🔲 로케일 설정

export LANG=ko_KR.UTF-8는 Shell 세션에만 임시 적용하는 설정입니다. 서버 시스템에 영구 설정 방법은 아래와 같습니다.

localectl set-locale LANG=ko_KR.UTF-8
Failed to issue method call: Locale ko_KR.UTF-8 not installed, refusing.

Alma Linux 9.4 서버에서 ko_KR.UTF-8 로케일이 설치되지 않았다는 메시지를 확인했습니다.

locale -a

ko_KR.UTF-8 로케일이 없다는 걸 재 확인 후

dnf install glibc-langpack-ko
glibc-langpack-ko 언어팩 설치
 ~]# locale -a | grep ko_KR
ko_KR.euckr
ko_KR.utf8
 ~]# localectl set-locale LANG=ko_KR.UTF-8
 ~]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
 ~]# localectl status
System Locale: LANG=ko_KR.UTF-8
    VC Keymap: (unset)         
   X11 Layout: (unset)         
 

시스템에서는 적용되어 있지만 SSH에서는 적용이 바로 안되어, SSH를 다시 접속하면 로케일이 적용된 걸 확인 했습니다. 바로 적용하려면 source 명령어를 실행합니다.

 ~]# cat /etc/locale.conf 
LANG=ko_KR.UTF-8
 ~]# source /etc/locale.conf # 또는 localectl set-locale로 locale.conf 반영

🔲 /etc/locale.conf

locale.conf는 눅스 시스템에서 시스템 전체의 로케일 설정 정보를 담고 있는 설정 파일입니다.

파일명

용도

/etc/locale.conf

시스템 전체 로케일 설정 파일

~/.bashrc, ~/.profile

쉘 환경 설정 파일(로그인 세션 시작 파일 위치)
EX) export LANG=ko_KR.UTF-8

Similar Posts

  • 리눅스 kill 명령어[kill -9 PID]

    리눅스 kill 명령어는 사용 중인 프로세스를 종료하는 명령어입니다. 터미널에서 프로세스에 시그널(Signal)을 보내서 프로세스를 종료합니다. 프로그램이 정지하거나 응답하지 않는 경우 일반적인 종료가 되지 않는 경우 등에 따라 명령어를 실행하게 됩니다. kill process는 사용 시 중요한 시스템 프로세스를 종료 시키면 시스템이 불안정해질 수 있기 때문에 주의해서 사용해야 합니다. 목차✅ locale 명령어🔲 시스템에 설치 된 locale…

  • echo 명령어: From 확장과 인용

    echo 명령어는 문자열을 그대로 출력해 주는 명령어이다. echo 명령어는 프롬프트에서 사용하는 일은 거의 없으며, 쉘 스크립트 작성 시에 자주 사용하는 명령어이다. 표준 출력 상에 해당 텍스트 인자를 표시한다. 목차✅ locale 명령어🔲 시스템에 설치 된 locale 보기: -a✅ localectl 명령어: 시스템 Lacale 확인🔲 localectl 명령어 옵션🔲 설정 가능한 로케일 출력🔲 로케일 설정🔲 /etc/locale.conf1. echo…

  • 리눅스 tee 명령어

    리눅스 tee 명령어는 배관시설에 비유해서 이름이 붙여진 명령어입니다. 파이프 모양과 똑같은 “T”에서 본따 tee 명령어이며 표준 출력으로 하나 이상의 다른 파일을 동시에 출력합니다. tee 명령어의 목적은 작업 진행 중 파이프라인(I)의 중간 내용을 알고 싶을 때 유용하게 사용할 수 있습니다. 목차✅ locale 명령어🔲 시스템에 설치 된 locale 보기: -a✅ localectl 명령어: 시스템 Lacale 확인🔲…

  • 리눅스 host 명령어 | DNS 조회 명령어

    host 명령어는 DNS(Domain Name System) 조회를 할 때 사용하는 명령어입니다. 호스트 이름에 해당하는 IP 주소를 찾거나, 반대로 IP 주소를 호스트 이름으로 변환하는 데 사용됩니다. 네트워크 연결 문제를 해결하거나 호스트 이름과 IP 주소 간의 매핑을 확인하는 데 유용합니다. 목차✅ locale 명령어🔲 시스템에 설치 된 locale 보기: -a✅ localectl 명령어: 시스템 Lacale 확인🔲 localectl 명령어…

  • Rsync 명령어: 옵션 | 사용 예시

    Rsync 명령어는 Remote sync의 줄임말로 원격에서 로컬, 로컬에서 로컬로의 파일 및 디렉토리를 복사하는 프로그램입니다. rsync에는 두 가지 접속 방법이 있는데 SSH를 통해 접속하는 방법과 rsync 데몬을 통해 접속하는 방법입니다. 목차✅ locale 명령어🔲 시스템에 설치 된 locale 보기: -a✅ localectl 명령어: 시스템 Lacale 확인🔲 localectl 명령어 옵션🔲 설정 가능한 로케일 출력🔲 로케일 설정🔲 /etc/locale.conf…

  • [Linux] 리눅스 vi 명령어 정리 | Vim 3가지 모드 및 비주얼 모드

    리눅스 터미널에서 ‘.txt’, ‘.conf’ 등의 ASCII 파일을 편집하기 위해 vi 편집기 명령어를 사용합니다. vi 편집기는 명령모드 입력모드와 저장 및 종료 후 치환하는 리눅스 vi 명령어는 익숙해지면 매우 빠른 작업이 가능하기 때문에 효율적인 업무를 진행할 수 있습니다. 목차✅ locale 명령어🔲 시스템에 설치 된 locale 보기: -a✅ localectl 명령어: 시스템 Lacale 확인🔲 localectl 명령어 옵션🔲…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 9   +   2   =