ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • LINUX Locale 언어 변경하는 방법
    System of Infra/LINUX 2021. 7. 23. 00:06
    반응형

    LINUX로고이미지

     

    LINUX Locale 언어 변경하는 방법

    [root@test_svr01 /]# locale
    LANG=ko_KR.UTF-8
    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=

    -> 현재 시스템의 locale(언어)의 설정을 확인합니다. LANG=ko_KR.UTF-8가 default로 설정된 것을 확인할 수 있습니다.

    [root@test_svr01 /]# echo $LANG
    ko_KR.UTF-8

    -> env의 환경변수에서도 LANG=ko_KR.UTF-8로 설정이 되어 있는 것을 확인할 수 있습니다.

    [root@test_svr01 /]# chkconfig --list
    알림: ì�´ ì¶œë ¥ ê²°ê³¼ì—�서는 SysV 서비스만ì�„ 보여주며 기존ì�˜ systemd 서비스는
    í�¬í•¨ë�˜ì–´ 있지 않습니다. SysV ì„¤ì • ë�°ì�´í„°ëŠ” 기존ì�˜ systemd ì„¤ì •ì—� ì�˜í•´
    �어쓰여질 수 있습니다.
    
    'systemctl list-unit-files'를 사용하여 systemd 서비스를 나열하실 수 있습니다.
    íŠ¹ì • 대ìƒ�ì—� 활성화ë�œ 서비스를 확ì�¸í•˜ë ¤ë©´
    'systemctl list-dependencies [target]'� 사용하십시오.
    
    netconsole 0:í•´ì œ 1:í•´ì œ 2:í•´ì œ 3:í•´ì œ 4:í•´ì œ 5:í•´ì œ 6:í•´ì œ
    network 0:í•´ì œ 1:í•´ì œ 2:활성 3:활성 4:활성 5:활성 6:í•´ì œ

    -> 현재의 언어상태를 체크하기 위해서 chkconfig --list를 통해서 글씨의 깨짐 또는 적용되었는지에 대한 여부를 확인할 수 있습니다. 현재 한국어로 locale이 지정되면서 깨짐 현상이 보이는 것을 확인할 수 있습니다.

    [root@test_svr01 /]# LANG=C

    -> 현재 locale(언어)를 기존의 LANG=ko_KR.UTF-8에서 LANG=C로 설정을 변경합니다.

    [root@test_svr01 /]# locale
    LANG=C
    LC_CTYPE="C"
    LC_NUMERIC="C"
    LC_TIME="C"
    LC_COLLATE="C"
    LC_MONETARY="C"
    LC_MESSAGES="C"
    LC_PAPER="C"
    LC_NAME="C"
    LC_ADDRESS="C"
    LC_TELEPHONE="C"
    LC_MEASUREMENT="C"
    LC_IDENTIFICATION="C"
    LC_ALL=

    -> 환경변수 언어가 C로 변경된 것을 확인 할 수 있습니다.

    [root@test_svr01 /]# chkconfig --list
    Note: This output shows SysV services only and does not include native
    systemd services. SysV configuration data might be overridden by native
    systemd configuration.
    
    If you want to list systemd services use 'systemctl list-unit-files'.
    To see services enabled on particular target use
    'systemctl list-dependencies [target]'.
    
    netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off
    network 0:off 1:off 2:on 3:on 4:on 5:on 6:off

    -> 설정을 C로 변경한 뒤에 Linux의 운영체제 시스템에서 깨지는 현상이 발생할 수도 있는데, chkconfig --list를 통해서 기존의 한국어 깨짐 현상에서 깨지지 않고 명령어에 의해서 호출이 되는 모습을 확인할 수 있습니다.

    [root@test_svr01 /]#echo $LANG
    LANG=ko_KR.UTF-8

    -> 세션 재접속 이후에는 기존의 언어(한국어)로 원복이 되어 있는것을 확인할 수 있습니다. 세션이 끊긴 뒤에도 변경 값을 유지하기 위해 다음과 같은 설정을 진행하도록 합니다.

    [root@test_svr01 /etc/sysconfig]# vi i18n
    LANG="C"

    -> 하지만 Prompt의 창이 닫히거나 또는 접속이 끊길 경우 재접속을 하게 되면 기존의 locale로 원복이 되기 때문에 /etc/sysconfig 디렉터리 아래 i18n 디렉터리를 생성한 뒤 LANG="C"를 설정합니다.

    [root@test_svr01 /etc/sysconfig]# ls -ltr | grep -i i18n
    -rw-r--r--. 1 root root 19 7ì›” 22 14:22 i18n
    [root@test_svr01 /etc/sysconfig]# cat i18n
    LANG="C"

    -> /etc/sysconfig/i18n의 파일에 vi편집기를 통해서 설정 값이 제대로 작성되어 있는지 확인합니다.

    [root@test_svr01 /etc/sysconfig]#source /etc/sysconfig/i18n

    -> source /etc/sysconfig/i18n을 통해서 덮어 씌우기 작업을 진행합니다.

    [root@test_svr01 /etc/sysconfig]#echo $LANG
    C

    -> 세션 재접속 후에 변경된 값으로 유지되는 것을 확인할 수 있습니다.

     

    PS. 포스팅의 내용은 제 기준으로 작성한 것이기 때문에 참고해서 보시면 감사하겠습니다.

    포스팅 과정의 오류 및 오타 그리고 궁금한 점에 대해서는 댓글 남겨주세요.

    반응형

    댓글

Designed by Tistory.