며칠 전 라즈베리 파이에 모니터를 연결한 김에 콘솔에서 한글도 써 보잔 생각이 들었다.

기본 콘솔 화면에서는 한글을 출력하면 폰트가 찍히지 않고 이런 식으로 사각형 모양만 출력된다.

한글 안 나오네

한글 출력 방법을 오랜만에 찾아 보니 관련 자료가 많니 나오진 않았다. 그냥 다 X-window용 터미널 에뮬레이터에서 한글 출력하는 방법만 나와 있지 않은가. 나도 마찬가지지만 요새 CLI를 쓰는 사람이 대부분 리눅스 서버에 원격 접속해서 쓰거나 GUI 환경(X-window)에서 터미널 에뮬레이터를 쓰기 때문에 콘솔에 한글을 찍을 필요성 자체를 못 느끼는 듯하다.

다행히 kldp.org에 한글 콘솔 관련 자료들이 남아 있었다. 관련 문서 여기 나와 있는 방법을 체크해 봤고 한글 콘솔 출력에 성공했다. 그 결과를 남겨 둔다. 누군가 저사양 시스템이나 옛날 추억 살리기 같은 특별한 경우가 있을 수 있지 않겠나.

테스트 환경: 라즈베리 파이 2 Model B / Raspbian Jessie(2015-11-21)

안 되는 방법

이 문서에 소개된 방법은 모두 오래 됐고 버려진 상태다. 이 중 대부분은 지금 적용하기가 거의 불가능하다.

  • fbcon: 커널 패치 방식이다. 10년 전이면 모를까 요즘 나오는 커널 버전과 당연히 맞지 않을 것이다.
  • unicon: 커널 패치 방식이다. 10년 전이면 모를까 요즘 나오는 커널 버전과 당연히 맞지 않을 것이다.
  • uterm: 프로젝트 사이트 접속 불가. Wayback Machine으로 찾아보면 옛날 문서가 캐시돼 있지만 소스코드나 바이너리는 캐시되어 있지 않다. 잘 찾아보면 구할 수 있을지도 모르지만, 난 못 구했다.
  • zhcon: 간단히 apt를 통해 설치할 수 있고, 잘 작동한다! 하지만 UTF-8을 지원하지 않는다. EUC-KR을 쓰는 서버에는 적용해도 되겠지만 요즘은 웬만해선 다 UTF-8 아닌가.

되는 유일한 방법: jfbterm

다른 걸 빼니 남은 선택지는 jfbterm 밖에 없었다. 다행히 이건 작동한다. 설치와 사용도 쉽다. 한가지 단점이 있는데 아래에 설명한다.

설치

간단히 apt로 설치 가능하다. 필요한 폰트가 들어 있는 xfonts-base 패키지가 의존성 설정은 안 돼 있고 권장 패키지로만 설정돼 있는데 같이 설치해 주는게 좋다.

$ sudo apt-get install jfbterm xfonts-base

실행

설치를 마쳤으면 jfbterm 명령으로 한글 출력이 되는 콘솔 세션에 접속할 수 있다.

$ jfbterm

이제 이렇게 한글이 잘 나온다.

한글 잘 나오네

폰트 바꾸기

/etc/jfbterm.conf 파일을 열어 옵션을 고칠 수 있다. 그런데 설정할 수 있는 옵션이 많지도 않고 굳이 건드려야 할 옵션도 없다.

다만 폰트를 바꾸는 건 고려해 볼 만 하다. 다른 폰트를 적용해 보고 싶다면 이 페이지에서 이야기 폰트를 다운로드할 수 있고 수정 방법도 나와 있으니 참고한다. 참고로 UTF-8 환경에선 +fontset: iso10646.1,pcf,U,폰트파일경로 옵션만 바꿔주면 적용된다.

이야기 폰트를 적용하면 이런 모양이 나온다.

이야기 폰트

나는 이야기 폰트보다는 기본 GNU 폰트가 더 마음에 든다.

문제점과 해결 방안

아쉽게도 jfbterm에는 한 가지 문제가 있다. 그건 … 바로 … 세션을 종료하면 화면이 멈춘다는 것이다. 이렇게 되면 리눅스 자체의 실행에는 문제가 없지만 콘솔 화면 출력이 멈춰 버려서 더이상 작업을 할 수 없다. 원격으로 작업하거나 Ctrl + Alt + Delete 키를 눌러 재부팅하는 수밖에 없다.

프로그램 버그이거나 환경 문제인 듯한데 이걸 해결하려면 가장 최신 소스로 컴파일해야 할 듯 하다. 그런데 가장 최신 소스의 의존성이 한~참 옛날 버전의 도구들을 요구하고 있기 때문에 컴파일 하는게 만만치 않아 보인다. 그래서 나는 그냥 쓰기로 했다. 내가 찾은 간단한 해결 방법은 이거다.

해결 방법: jfbterm 세션을 종료하지 않는다.

진정한 해결 방법은 아니지만 당장 갖고 노는 데는 무리 없으니 이걸로 만족한다.