Categories
Node Tips

SSH로 접속했을 때 한글 깨짐 문제

SSH로 호스팅에 접속했습니다. vim으로 파일을 열였는데 한글이 깨져 보입니다. 회사 노트북에서 접속했을 때는 괜찮습니다. 왜 그럴까요?

한글 깨짐

역시나 구글링을 해서 해답을 알았습니다. 오늘은 이 구글링으로 얻은 지식을 메모리에 넣기 위해 이렇게 글을 씁니다.

그 해답은 ssh 클라이언트 설정파일과 환경변수에 있습니다.

ssh 클라이언트 설정파일은 /etc/ssh/ssh_config 입니다. “man ssh_config”로 설정파일에 대해 알아보면 SendEnv 항목에서 그 해답을 찾을 수 있습니다.

Specifies what variables from the local environ(7) should be sent to the server.

SendEnv는 로컬 환경변수를 서버에 보내는 설정입니다. 로컬 환경변수 중 로케일(Locale) 정보를 서버에 보내야 합니다.

이제 로케일 환경변수를 ~/. bashrc에 정의합니다.

export LANG='ko_KR.UTF-8'
export LC_ALL='ko_KR.UTF-8'

그리고 /etc/ssh/ssh_config에 서버로 넘길 로케일 환경변수를 정의합니다.

SendEnv LANG LANGUAGE
SendEnv LC_ALL

이렇게 모든 설정을 마친 후 세션 종료 후 다시 ssh로 접속합니다.

이제 정상적으로 한글이 출력됩니다.

만약 여러분도 SSH로 접속 후 한글이 깨져 보인다면 오늘 포스팅을 참고하기 바랍니다.