본문 바로가기
개발 이야기/Server & OS

[Linux] CentOS 7 한글깨짐 해결

by 강한페페 2020. 2. 10.
반응형

기존 구버전에서는 euc-kr charset을 많이 사용했지만 CentOS 7은 UTF-8 사용.

 

[리눅스 문자셋 확인]

1. echo $LANG

2. locale

3. cat /etc/sysconfig/i18n -> 구버전

 

[서버 UTF-8 지원 확인]

 

[서버 문자셋 UTF-8로 변경]

1) localedef -c -i ko_KR -f UTF-8 ko_KR.UTF-8
2) localectl set-locale LANG=ko_KR.UTF-8

명령 실행 후 재부팅 or 로그아웃/재로그인

 

**서버 문자셋을 UTF-8로 설정했지만 구 서버에서 옮긴 파일들의 한글이 깨지는 경우

서버 문자셋이 EUC-KR로 설정된 서버에서 파일이나 디렉토리의 한글이 생성될 때 EUC-KR로 설정되어 발생하는 문제이기 때문에 파일을 구서버에서 옮겨왔을 경우 따로 문자셋 변경이 필요하다. convmv 명령어를 사용해서 옮겨온 파일들의 문자셋을 UTF-8로 변경해준다.

 

convmv 명령어는 파일의 문자셋을 변환해준다.

1) yum list | grep conv //설치유무 파악
2) yum install convmv //convmv 설치
3) convmv -f euc-kr -t ko_KR.UTF-8 --notest * //모든 euc-kr 파일을 UTF-8 인코딩으로 변환
   -f : 파일 원본의 인코딩 지정
   -t : 변경될 파일의 인코딩 지정
   -r : 하위 디렉토리를 포함
   --notest : notest 옵션이 포함되지 않으면 테스트만 실행되고 실제 적용되지 않음

 

반응형