一、修改系统默认语言及中文乱码问题
记录系统默认使用语言的文件是/etc/sysconfig/i18n,如果默认安装的是中文的系统,i18n的内容如下: LANG="zh_CN.UTF-8" SYSFONT="latarcyrheb-sun16" SUPPORTED="zh_CN.UTF-8:zh_CN:zh" LINUXTYPE=targeted

LANG变量是language的简称,决定系统的默认语言的,即系统的菜单、程序的工具栏语言、输入法默认语言等。SYSFONT是system font的简称,决定系统默认用哪一种字体。SUPPORTED变量决
定系统支持的语言,即系统能够显示的语言。需要说明的是,由于计算机起源于英语国家,因此,不管你把这些变量设置成什么,英语总是默认支持的,而且不管用什么字体,英文字体总包含在其中。

临时调整终端乱码现象:# LANG="en_US.UTF-8" 即把系统的语言临时设置成英文,或者更简单一点,可以直接这样: # LANG="" 或export LANG=""
LANG变量被清空后,系统就默认用英语。这样设置后,在字符模式下输出的出错信息等就是全英文的了。但这种设置是临时的,只是临时改变了LANG这个bash变量而已。当退出重新登录或者切换到其他字符终端后就无效了。只要把i18n文件中的LANG变量设置成英文的”en_US.UTF-8”,就可以永久解决这个问题了。命令:vi etc/sysconfig/i18n
修改后的文件如下: #LANG="zh_CN.UTF-8" LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun16" SUPPORTED="zh_CN.UTF-8:zh_CN:zh" 
请不要把LANG变量简单的清空,因为这个变量不仅在字符模式下用到,在图形界面下也用到,简单清空在字符模式下确实不会有问题,但在图形界面下,却会造成中文无法正常显示的情况,在过去Redhat系列的版本中i18n文件中还有一个叫LANGUAGE的变量,专门控制图形界面下的语言设置,现在的FC系列中已经把这两个变量整合成一个变量了。 
二、locale

程序运行使用一套语言需要有字符集(数据)和字体(显示),Locale是根据计算机用户所使用的语言,所在国家或者地区,以及当地的文化传统所定义的一个软件运行时的语言环境。
locale常用操作
1、查看现有语言环境:
locale
2、可用语言环境:
locale -a
3、临时修改语言环境:
AIX:
export LANG=en_US
export LANG=zh_CN

Linux:
export LANG=en_US.UTF-8
export LANG=zh_CN.UTF-8
4、永久修改系统级字符集:
修改/etc/sysconfig/i18n
英文版系统:
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"

中文版系统:
LANG="zh_CN.UTF-8"或者LANG="zh_CN.gbk"
SYSFONT="latarcyrheb-sun16"

vi /.bash_profile

三、安装中文字符集

1、安装所有与中文支持相关的包
# yum -y groupinstall chinese-support

2、修改字符编码配置文件
# vi /etc/sysconfig/i18n
修改后内容如下:
LANG="zh_CN.UTF-8"
SUPPORTED="zh_CN:zh:en_US.UTF-8:en_US:en:zh_CN.GB18030"
SYSFONT="latarcyrheb-sun16"

locale详解
在 Linux 中通过 locale 来设置程序运行的不同语言环境,locale 由 ANSI C 提供支持。locale 的命名规则为:
<语言>_<地区>.<字符集编码>
如:
zh_CN.UTF-8,zh代表中文,CN代表大陆地区,UTF-8表示字符集。
在locale环境中,有一组变量,代表国际化环境中的不同设置:
1、LC_COLLATE
定义该环境的排序和比较规则
2、LC_CTYPE
用于字符分类和字符串处理,控制所有字符的处理方式,包括字符编码,字符是单字节还是多字节,如何打印等。是最重要的一个环境变量。
3、LC_MONETARY
货币格式
4、LC_NUMERIC
非货币的数字显示格式
5、LC_TIME
时间和日期格式
6、LC_MESSAGES
提示信息的语言。另外还有一个LANGUAGE参数,它与LC_MESSAGES相似,但如果该参数一旦设置,则LC_MESSAGES参数就会失效。LANGUAGE参数可同时设置多种语言信息,如
LANGUANE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"。
7、LANG
LC_*的默认值,是最低级别的设置,如果LC_*没有设置,则使用该值。类似于 LC_ALL。
8、LC_ALL
它是一个宏,如果该值设置了,则该值会覆盖所有LC_*的设置值。注意,LANG的值不受该宏影响。
一个例子:
设置前,使用默认locale:
# locale
LANG="POSIX"
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=
设置后,使用zh_CN.GBK中文locale:

# export LC_ALL=zh_CN.GBK
# locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.GBK"
LC_NUMERIC="zh_CN.GBK"
LC_TIME="zh_CN.GBK"
LC_COLLATE="zh_CN.GBK"
LC_MONETARY="zh_CN.GBK"
LC_MESSAGES="zh_CN.GBK"
LC_PAPER="zh_CN.GBK"
LC_NAME="zh_CN.GBK"
LC_ADDRESS="zh_CN.GBK"
LC_TELEPHONE="zh_CN.GBK"
LC_MEASUREMENT="zh_CN.GBK"
LC_IDENTIFICATION="zh_CN.GBK"
LC_ALL=zh_CN.GBK
"C"是系统默认的locale,"POSIX"是"C"的别名。所以当我们新安装完一个系统时,默认的locale就是C或POSIX。

LANG="zh_CN.UTF-8" SYSFONT="latarcyrheb-sun16" SUPPORTED="zh_CN.UTF-8:zh_CN:zh" LINUXTYPE=targeted

LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"

  

linux中文乱码问题及locale详解相关推荐

  1. js php 中文乱码怎么解决_探讨PHP JSON中文乱码的解决方法详解

    我们知道在使用Ajax技术与PHP后台交互时,中文乱码是常有的事,JSON作为与XML类似的数据交换格式,在PHP用来进行交互时也会出现中 文乱码的情况,解决PHP JSON中文乱码的方法思路其实与P ...

  2. linux mount命令参数及用法详解

    linux mount命令参数及用法详解 非原创,主要来自 http://www.360doc.com/content/13/0608/14/12600778_291501907.shtml. htt ...

  3. linux中whoami命令的作用是,linux whoami命令参数及用法详解(linux查看登陆用户名)

    linux whoami命令参数及用法详解(linux查看登陆用户名) 2019年05月31日 | 萬仟网科技 | 我要评论 whoami 命令显示登录名.与使用命令 who 并指定 am i 不同, ...

  4. linux 进程间通信 dbus-glib【实例】详解三 数据类型和dteeth(类型签名type域)(层级结构:服务Service --> Node(对象、object) 等 )(附代码)

    linux 进程间通信 dbus-glib[实例]详解一(附代码)(d-feet工具使用) linux 进程间通信 dbus-glib[实例]详解二(上) 消息和消息总线(附代码) linux 进程间 ...

  5. Linux下fdisk命令操作磁盘详解--添加、删除、转换分区

    linux下fdisk命令操作磁盘详解--添加.删除.转换分区等 fdisk 操作硬盘的命令格式如下: [root@localhost beinan]# fdisk 设备 比如我们通过 fdisk - ...

  6. linux 的文件软链接隐藏,Linux inode及硬链接软链接详解

    Linux inode及硬链接软链接详解 York • 2020 年 09 月 28 日 Loading... 操作系统的文件数据除了实际内容之外,通常含有非常多的属性,例如 `Linux`操作系统的 ...

  7. linux中fdisk的参数,Linux fdisk命令参数及用法详解--Linux磁盘分区管理命令fdisk

    fdisk 命令 linux磁盘分区管理 用途:观察硬盘之实体使用情形与分割硬盘用. 使用方法: 一.在 console 上输入 fdisk -l /dev/sda ,观察硬盘之实体使用情形. 二.在 ...

  8. linux php 中文乱码解决,Linux中文乱码如何解决

    刚开始使用Linux系统的时候,大家都会遇到一个问题,那就是终端输入命令回显的时候中文显示乱码.为什么会出现这样的问题呢?出现这样的问题,我们应该怎么去解决它好呢?有何解决方法?今天,小编就和大家说一 ...

  9. Linux中文乱码-word-pdf字体转换问题处理

    Linux中文乱码-word-pdf字体转换问题处理 Linux下安装黑体和宋体 问题原因:Linux缺少中文字体库 黑体(simhei.ttf) 宋体(simsun.ttc) 1.在windows目 ...

最新文章

  1. 自动创建阿里云抢占式实例
  2. 证明矩阵添加一列(行),则其秩或不变,或增加1
  3. MySQL 笔记3 -- SQL 语言
  4. Kafka消息投递语义-消息不丢失,不重复,不丢不重
  5. 重写AgileEAS.NET SOA 中间件平台账号密码的加密算法
  6. 第三次学JAVA再学不好就吃翔(part42)--内部类概述
  7. php文本文件操作,文本文件操作的php类
  8. Akka-Cluster(0)- 分布式应用开发的一些想法
  9. 服务器lsass系统错误,急急急开机出现lsass.exe系统错误系统资源不够无法完成AP? 爱问知识人...
  10. python程序设计课程设计二级减速器_二级减速器的课程设计
  11. python将PDF文件转化为图片
  12. 灰度测试或 AB 测试
  13. 星界边境联机服务器未响应,星界边境Starbound联机注意事项
  14. 关于汉字的部件部首和独体字
  15. 局域网怎么添加新的计算机用户,如何添加局域网
  16. 极大值,极小值算法以及α-β剪枝技术
  17. 2020.12.10丨cufflinks 简介及使用说明
  18. SCSI子系统基础学习笔记 (之UFS子系统) - 1.2 概述(软件部分)
  19. 电路中滤波电容和退耦电容_关于滤波电容、去耦电容、旁路电容作用及其原理...
  20. 密码学系列 - 国密算法

热门文章

  1. VMware助青年时报构建安全高效应用平台
  2. 管理云栈将会胜出吗?
  3. 【灌水】一些奇妙的图片(持续更新)
  4. Mac环境下Docker及Splash的安装运行教程
  5. 聊聊SwitchUserFilter的使用
  6. Java IO编程全解(五)——AIO编程
  7. 实现一个spring webservice服务端二:创建一个可以访问的webservice
  8. 如何查看 phtml文件 并有代码颜色提示
  9. springMVC整合shiro权限框架示例与实践
  10. springboot整合ElasticSearch出现的问题