![데비안 서버는 LANG이 아닌 SSH를 통해서만 LC_* 변수를 허용합니다.](https://linux55.com/image/212891/%EB%8D%B0%EB%B9%84%EC%95%88%20%EC%84%9C%EB%B2%84%EB%8A%94%20LANG%EC%9D%B4%20%EC%95%84%EB%8B%8C%20SSH%EB%A5%BC%20%ED%86%B5%ED%95%B4%EC%84%9C%EB%A7%8C%20LC_*%20%EB%B3%80%EC%88%98%EB%A5%BC%20%ED%97%88%EC%9A%A9%ED%95%A9%EB%8B%88%EB%8B%A4..png)
현지에서 갖고 /etc/ssh/ssh_config
있어요
SendEnv LANG LC_*
서버 /etc/ssh/ssh_config
측은
AcceptEnv LANG LC_*
그러나 Debian 서버에 SSH로 접속하면 $LC_*
제품군이 서버 측으로 전달되지만 $LANG
서버를 통해서는 여전히 en_US.UTF-8
사용되지 않는 것을 알 수 있습니다. 내 고객을 존중하게 하려면 어떻게 해야 합니까 $LANG
?
혹시라도 Debian 11(Bullseye)을 사용하고 있습니다.
답변1
이는 데비안에만 해당될 수 있습니다. 실행 dpkg-reconfigure locales
하고 선택 해야 함전혀기본 로캘로 사용합니다( en_US.UTF-8
이전에 설정한 곳). ~에서데비안 위키:
선택한 기본 로케일이 아닌 경우전혀위에서는 ssh에서 제공하는 변수를
/etc/default/locale
무시하고 재정의 합니다 .LANG
(이것을 "기본" 로케일이라고 부르는 것은 폴백처럼 작동하지 않고 명시적인 선택을 무시하기 때문에 오해의 소지가 있다고 생각합니다. "강제 로케일"에 더 가깝습니다.)