科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道RedHat 9.0控制台显示英文具体步骤

RedHat 9.0控制台显示英文具体步骤

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

RedHat 9.0控制台(又叫字符界面、console)默认情况下回显乱码,例如输入mc或chmod之类的命令,输出的总是乱码,因为它企图显示中文,但是又没有装zhcon,显示结果就是这样。

作者:wanyang 来源:赛迪网技术社区 2007年10月16日

关键字: Linux 操作系统 步骤 控制台 Red hat

  • 评论
  • 分享微博
  • 分享邮件
 

RedHat 9.0控制台(又叫字符界面、console)默认情况下回显乱码,例如输入mc或chmod之类的命令,输出的总是乱码,因为它企图显示中文,但是又没有装zhcon,显示结果就是这样。

解决这个问题有两种方法,第一是直接安装zhcon,第二在~/.bashrc里加入export LANG=en_US的字样。这两种方法有缺点。zhcon是外挂,并不能随系统启动一起运行,而且显示中文字体偏大,export LANG的结果就是在X的一般terminal里显示不了中文(据说是这样的。刚才验证了,在~/.bashrc里加入export LANGUAGE=en,好样,进入桌面后,界面全变成英文的了!估计提供这种方法的人还不知道~/.i18n的用途)。

在/etc/sysconfig/i18n里查看,既然有了CONSOLE_NOT_LOCALIZED=yes这样一条定义,为什么console还是试图显示中文呢?根据mandrake的经验比较两种发行版在系统语言上也就是/etc/profile.d/lang.sh的规定,发现了问题。mandrake的10lang.sh里有这么几行:

if [ -n "$DISPLAY" ]; then
[ "$X11_NOT_LOCALIZED" = "yes" ] && LANGUAGE=C
elif [ -z "$DESKTOP" ]; then
[ "$CONSOLE_NOT_LOCALIZED" = "yes" ] && LANGUAGE=C
fi
[ -n "$LANGUAGE" ] && export LANGUAGE

不懂脚本和语言,不过有一点英文基础,猜得出这其中的意思:如果定义了X11_NOT_LOCALIZED" = "yes",那么display的本地语言化就会失效,如果定义了CONSOLE_NOT_LOCALIZED" = "yes" ,那么desktop(?)的本地语言化就会失效。也就是说,没有这么几行,/etc/sysconfig/i18n或~/.i18n的CONSOLE_NOT_LOCALIZED=yes定义就不起作用。依样画芦,在/etc/profile.d/lang.sh补上这几行试试,果然,console只显示英文,X环境是中文。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章