콘솔에서 국가 문자 대신 물음표 사용

콘솔에서 국가 문자 대신 물음표 사용

나는 가지고있다넷기어 STOW MS2000(수정된 Red Hat 버전 사용) SSH를 통해 연결할 때 이상한 글꼴 문제가 발생합니다. 이는 sshWindows에서 PuTTY를 통해 연결할 때와 Mac 콘솔에서 실행할 때 모두 발생합니다.

일부 폴란드 문자와 유형을 사용하면 ls두 개의 물음표로 표시됩니다. 그러나 파일 이름을 자동 완성하려고 하면 올바르게 표시됩니다. 아래 그림과 같이:

콘솔 예시

변수를 다른 값 TERM으로 변경해 보았지만 운이 없었습니다.LANG

mc또한 동일한 문제와 관련이 있을 수도 있고 아닐 수도 있는 디스플레이 오류도 발견했습니다 .

MC

바꿔야 할 아이디어가 있나요?

화면은 PuTTY로 제작되었지만 Mac 터미널에서도 동일하게 보입니다.

편집하다

locale의견의 질문에 답하기 위해 , alias ls및 의 출력 은 다음과 같습니다 echo młodość | od -t x1.

-bash-3.2$ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=pl_PL.UTF-8
LC_CTYPE="pl_PL.UTF-8"
LC_NUMERIC="pl_PL.UTF-8"
LC_TIME="pl_PL.UTF-8"
LC_COLLATE="pl_PL.UTF-8"
LC_MONETARY="pl_PL.UTF-8"
LC_MESSAGES="pl_PL.UTF-8"
LC_PAPER="pl_PL.UTF-8"
LC_NAME="pl_PL.UTF-8"
LC_ADDRESS="pl_PL.UTF-8"
LC_TELEPHONE="pl_PL.UTF-8"
LC_MEASUREMENT="pl_PL.UTF-8"
LC_IDENTIFICATION="pl_PL.UTF-8"
LC_ALL=
-bash-3.2$ alias ls
alias ls='ls --color=tty'
-bash-3.2$ echo młodość | od -t x1
0000000 6d c5 82 6f 64 6f c5 9b c4 87 0a
0000013
-bash-3.2$

답변1

Giles의 의견을 바탕으로 문제를 해결했습니다. 문제는 pl_PL 로케일이 누락되었다는 것입니다. 나는에 대해 알아냈다PC 로딩 편지 블로그:

cd ~/sometemp
wget http://sourceforge.net/projects/dsgpl/files/DSM%203.1%20Tool%20Chains/Marvell%2088F628x%20Linux%202.6.32/gcc421_glibc25_88f628x.tgz
tar xvfz gcc421_glibc25_88f628x.tgz
cd arm-none-linux-gnueabi/arm-none-linux-gnueabi/libc/usr/bin
cp locale /opt/bin
cp localedef /opt/bin
cp -R arm-none-linux-gnueabi/arm-none-linux-gnueabi/libc/usr/share/i18n /usr/share
#-----keep another copy safe in case DSM is reinstalled later
cp -R arm-none-linux-gnueabi/arm-none-linux-gnueabi/libc/usr/share/i18n /opt/share
mkdir /usr/lib/locale

그런 다음 다음을 입력하십시오.

localedef -c -f UTF-8 -i pl_PL pl_PL.utf8

다시 로그인하면 모든 것이 잘 작동합니다.

관련 정보