嵌入式linux无法显示超过utf-8个字符

时间:2017-05-11 09:34:28

标签: encoding utf-8 locale embedded-linux beagleboneblack

我有一个带嵌入式Linux的beaglebone黑色。当我插入一个包含非UTF-8字符的文件夹或文件的usb-stick(如äöü或学习中文)时,这些字符将无法正确显示。我正在使用午夜指挥官与文件系统相处。

locale命令返回此输出:

root@beaglebone:~# locale                         
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=

我已禁用本地SendEnv LANG LC_*文件中的/etc/ssh/ssh_config以查看非继承的值。

如果修改本地/etc/profile文件并添加

等行,我可以手动设置它们
export LANGUAGE=en-US
# and/or
export LC_CTYPE="en-US.UTF-8"
# ..so on
# but nothing really changes doing this.

我尝试运行dpkg-reconfigure localeslocale-gen并勾选en_US.UTF-8作为默认值。在LANGUAGE="en_US.UTF-8"中添加行/etc/environment没有改变任何内容。在LANGUAGE="en_US.UTF-8"中设置/etc/rc.confLANG="en_US.UTF-8"设置/etc/locale.conf并不是很成功,因为之前没有*.conf个文件(我添加了它们,这不是很聪明[我知道]但谁知道呢。

像这样安装language-pack-en-base但不起作用:

root@beaglebone:~# apt-get install language-pack-en-base
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package language-pack-en-base

还尝试dist-upgrade我的设备,但(再次)没有变化。

我还是一个linux-noob。

0 个答案:

没有答案