ssh 会话中不显示重音字符

ssh 会话中不显示重音字符

我在桌面上使用 kubuntu 20.04,全新安装后,当我连接到所有服务器时出现了奇怪的行为:带有重音字符的文件内容不会显示。

例如,单词““ 被展示 ”普罗文西亚",用两个空格代替重音符号)。

在我左边 50 厘米处我的笔记本电脑也使用 kubuntu 20.04,我没有这个问题。

以下是区域命令信息....

桌面(未按预期显示字符)...

$ locale
LANG=ca_ES.UTF-8
LANGUAGE=
LC_CTYPE="ca_ES.UTF-8"
LC_NUMERIC=ca_ES.UTF-8
LC_TIME=ca_ES.UTF-8
LC_COLLATE="ca_ES.UTF-8"
LC_MONETARY=ca_ES.UTF-8
LC_MESSAGES="ca_ES.UTF-8"
LC_PAPER=ca_ES.UTF-8
LC_NAME=ca_ES.UTF-8
LC_ADDRESS=ca_ES.UTF-8
LC_TELEPHONE=ca_ES.UTF-8
LC_MEASUREMENT=ca_ES.UTF-8
LC_IDENTIFICATION=ca_ES.UTF-8
LC_ALL=

$ locale -a
C
ca_AD.utf8
ca_ES.utf8
ca_ES.utf8@valencia
ca_FR.utf8
ca_IT.utf8
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IL
en_IL.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX

笔记本电脑(运行正常)......

$ locale
LANG=ca_ES.UTF-8
LANGUAGE=
LC_CTYPE="ca_ES.UTF-8"
LC_NUMERIC="ca_ES.UTF-8"
LC_TIME="ca_ES.UTF-8"
LC_COLLATE="ca_ES.UTF-8"
LC_MONETARY="ca_ES.UTF-8"
LC_MESSAGES="ca_ES.UTF-8"
LC_PAPER="ca_ES.UTF-8"
LC_NAME="ca_ES.UTF-8"
LC_ADDRESS="ca_ES.UTF-8"
LC_TELEPHONE="ca_ES.UTF-8"
LC_MEASUREMENT="ca_ES.UTF-8"
LC_IDENTIFICATION="ca_ES.UTF-8"
LC_ALL=

$ locale -a
C
ca_AD.utf8
ca_ES.utf8
ca_ES.utf8@valencia
ca_FR.utf8
ca_IT.utf8
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IL
en_IL.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX

从我的桌面连接到我的一台服务器...

# locale
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=ca_ES.UTF-8
LC_TIME=ca_ES.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=ca_ES.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=ca_ES.UTF-8
LC_NAME=ca_ES.UTF-8
LC_ADDRESS=ca_ES.UTF-8
LC_TELEPHONE=ca_ES.UTF-8
LC_MEASUREMENT=ca_ES.UTF-8
LC_IDENTIFICATION=ca_ES.UTF-8
LC_ALL=

# locale -a
C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX

从我的笔记本电脑连接到我的一台服务器...

# locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

# locale -a
C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf

我看到的唯一区别是从我的桌面连接时的消息locale: Cannot set LC_ALL to default locale: No such file or directory。但我不知道从哪里开始解决这个问题。

我确定这不是与 plasma、konsole 或 kubuntu 相关的问题,因为如果我不启动桌面(如果我在控制台中登录到我的桌面)我也会遇到同样的问题。

我已经尝试发表评论SendEnv LANG LC_*/etc/ssh/ssh_config我的笔记本电脑上没有评论)

笔记本电脑和台式机都有相同的 SSH 版本...

OpenSSH_8.2p1 Ubuntu-4ubuntu0.1, OpenSSL 1.1.1f  31 Mar 2020

答案1

我已经解决了这个问题,感谢本文

以下步骤如下:

$ export LC_ALL="ca_ES.UTF-8"
$ export LC_CTYPE="ca_ES.UTF-8"
$ sudo dpkg-reconfigure locales

然后我选择并ca_ES.UTF-8继续en_US.UTF-8(我尝试选择并且也有效)。Locales to be generated pageca_ES.UTF-8Default locale for the system environmenten_US.UTF-8

相关内容