2012년 7월 6일 금요일

리눅스 SSH 접속 시 에러 발생


리눅스 SSH 접속 시 에러 발생

리눅스 ssh 접속 시 다음과 같은 에러가 발생한다.
suse 11.2 enterprise server 32bit 환경이며
기본 설치 후 얼마전 커널 kernel 업데이트를 해서
3.5.0-rc3-2-pae 버전이다.

에러 메시지는 ssh 로그인 후 커맨드 창 입력 전에 바로 나타난다.
/usr/bin/manpath: can't set the locale; make sure $LC_* and *LANG are correct

환경 구성에서 locale 문제인 것으로 보여 찾아보려고 했지만,
suse linux 에서는 locale-gen 등의 파일이 없다.

물론 관련된 프로그램 설치 패키지 역시 없다.

suse 에서 사용할 수 있는 명령어는
# localedef -i lang -f /usr/bin/locale/en_US.utf8/

실제로 다음 디렉토리는 없다.
/usr/bin/locale/en_US.utf8/

/usr/share/i18n/locales/
이하의 디렉토리에 locale 파일들이 압축되어 있는데 이 파일을 다시 해체하여 사용한다.

# localedef -i /usr/share/i18n/locales/en_US --charmap /tmp/UTF-8 /usr/lib/locale/en_US.utf8

위 명령어로 locale 파일을 압축해제 하여 사용할 수 있다.

하지만 ssh 로그인을 하던지, locale 등을 필요로한 다른 명령어를 사용하기에는 아직까지 힘들다.

다음 값을 /etc/environment 에 추가한다.
실제 suse linux 에서는 입력된 값이 하나도 없었다.

LC_CTYPE=en_US.UTF-8
LC_MESSAGES=en_US.UTF-8
LC_COLLATE=en_US.UTF-8
LC_ALL=en_US.UTF-8
LANG=C

다시 ssh 로그인을 할 때는 에러 메시지 없이 정상적으로 로그인이 됐다.

서버에 대한 전체적은 패키지 설치 및 업데이트를 진행한 적 없이
오로지 커널만 최신 패치를 suse 에서 제공해주는 zypper 을 통해서 진행했다.
패치가 적용되면서 유저가 컨트롤할 부분은 없는데
왜 이런 문제가 발생했는지 모르겠다.

어쨋든...에러 처리 완료.

댓글 없음:

댓글 쓰기