linux服务器默认使用中文字符集zh_CN.UTF-8

一.问题描述和相关概念

linux服务器的字符集设置可能影响到网站页面出现 “???” 等问号乱码,还有可能导致文件中的汉字部分出现乱码。

locales设置:语言设置选项
   linux真的是一个非常强大的系统,windows如果要更改语言系统,必须要重新安装软件, 这就是windows存在多国语言版 的原因。而linux非常方便,我们可以通过locales设置,将linux从英文版更改为中文版,下面我们来看看如何更改语言设置。

二.原因

简单的说是因为服务器没有安装zh_CN.UTF-8 字符集,导致不支持中文!

locale   //执行这个命令,查看和语言编码有关的环境变量

显示如下:

LANG=

LANGUAGE=en_US:en

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=

可以看到大多数都默认为POSIX 类型的,这时可以改服务器的默认字符集为zh_CN.UTF-8(我测试过改了没问题哦,可以解决汉字乱码问题。如果能通过设置SecureCrt等终端可以解决的话,就没必要改了)

三.解决办法

环境:Ubuntu 12.04.5 LTS \n \l

1.安装基本的软件包(第2步安装 zh_CN 中文字符集时要用到)

sudo apt-get update     //ubuntu系统更新软件包列表

sudo apt-get install  -y language-pack-zh-hans

sudo apt-get install -y language-pack-zh-hant

2.

cd /usr/share/locales

sudo ./install-language-pack zh_CN   //开始安装zh_CN中文字符集

3.  编辑 sudo vim /etc/environment     //环境变量配置文件

添加下面zh_CN.UTF-8有关的环境变量,添加完就变成默认的了哦:

LANG=zh_CN.UTF-8

LANGUAGE=en_US:en

LC_CTYPE="zh_CN.UTF-8"

LC_NUMERIC="zh_CN.UTF-8"

LC_TIME="zh_CN.UTF-8"

LC_COLLATE="zh_CN.UTF-8"

LC_MONETARY="zh_CN.UTF-8"

LC_MESSAGES="zh_CN.UTF-8"

LC_PAPER="zh_CN.UTF-8"

LC_NAME="zh_CN.UTF-8"

LC_ADDRESS="zh_CN.UTF-8"

LC_TELEPHONE="zh_CN.UTF-8"

LC_MEASUREMENT="zh_CN.UTF-8"

LC_IDENTIFICATION="zh_CN.UTF-8"

LC_ALL=zh_CN.UTF-8

4.重新登录一次shell

source /etc/environment   //使刚才添加的环境变量生效。如果不重新登录shell的话,执行此命令可能会报错哦,我试过了!

四.简单看下成果

1.locale 命令看下输出结果吧!

2.也可以进入  /var/lib/locales/supported.d

cat local

显示:

en_US.UTF-8 UTF-8

zh_CN.UTF-8 UTF-8

而没有安装中文之前只显示:

en_US.UTF-8 UTF-8

注:locale -a 可以查看操作系统支持的字符集。

linux服务器默认使用中文字符集zh_CN.UTF-8的更多相关文章

  1. 使linux服务器默认使用中文字符集zh_CN.UTF-8

    一.问题描述和相关概念 linux服务器的字符集设置可能影响到网站页面出现 “???” 等问号乱码,还有可能导致文件中的汉字部分出现乱码. locales设置:语言设置选项   linux真的是一个非 ...

  2. springboot项目打包成jar包在Linux服务器默认80端口运行

    springboot项目端口设置 在application.properties文件 server.port=80 在application.yml文件 server: port: 80 然后在ide ...

  3. 制作中文字符集zh_CN.utf8的centos7系统

    以下是Dockerfile文件 ===================================== FROM centos:7ENV LANG=zh_CN.UTF-8 \ LANGUAGE=z ...

  4. linux服务器默认连接数配置

    vi /etc/security/limits.d/90-nproc.conf * - nofile 65536* - nproc 65536root soft nproc unlimited vi ...

  5. Linux服务器评测脚本 中文IO脚本简单易懂

    中文版: wget -N --no-check-certificate https://raw.githubusercontent.com/FunctionClub/ZBench/master/ZBe ...

  6. linux mysql5.7设置中文字符集

    ubuntu16.04已测试 注意版本,好像从5.6根5.5就不一样,配置文件更深了一层. 1.用vim或nano编辑   /etc/mysql/mysql.conf.d/mysqld.cnf 2.[ ...

  7. CentOS7及Docker配置中文字符集问题

    说明 Linux系统默认使用英文字符集,不会安装中文字符集等其他字符. 查看当前字符集 $ 安装字符集 使用locale命令看看当前系统所使用的字符集 $ locale LANG=en_US.UTF- ...

  8. ubuntu中文乱码--添加中文字符集

    在Ubuntu支持中文后(方法见上篇文章),默认是UTF-8编码,而Windows中文版默认是GBK编码.为了一致性,通常要把Ubuntu的默认 编码改为GBK.当然你也可以不改,但这会导致我们在两个 ...

  9. 使用ssh公钥密钥自动登陆linux服务器

    转自:http://7056824.blog.51cto.com/69854/403669 作为一名 linux 管理员,在多台 Linux 服务器上登陆进行远程操作是每天工作的一部分.但随着服务器的 ...

随机推荐

  1. 什么是一致性hash?

    一致性hash 前言 说出来大家可能不相信,我昨天做梦梦到自己在面试,然后面试官问了我这个问题哈哈~然后我就打算按照自己的理解写一写.如果有写的不对的欢迎大家指正! 直接开始 普通hash算法 普通h ...

  2. 微信小程序getUserProfile适配方案

    清明节放假前一天 群里突然炸锅,说小程序所有用的昵称全部变成了微信昵称 当时我就 特么不是说好13号吗??? 吓得我赶紧爬起来翻文档(需要代码直接往后翻) wx.getUserProfile(Obje ...

  3. C#中protobuf-net的编码结构及使用方法

    目录 protobuf-net简介 ProtoBuf编码原理 编码结构 解析一个编码结果 使用方法 参考资料 protobuf-net简介 Protocol Buffer(简称Protobuf) 是 ...

  4. 运行ASP.NET程序(4)

    运行ASP.NET程序有两种方式: 直接点击如图标志的按钮可直接运行,还可以选择浏览器 第二种:F5 两者没区别,看个人习惯

  5. navcat卸载

    https://www.cnblogs.com/mysterious-killer/p/10416739.html

  6. 刚转行1年测试新手:学习Python编程经验实战分享

    一.开头说两句 作为一名零基础转行刚一年的测试新手来说,深知自己在技术经验方面落后太多,难免会有急于求成的心态,这也就导致自己在学习新知识时似懂非懂,刚开始学完那会还胸有成竹,一段时间之后却又忘的一干 ...

  7. Day16_94_IO_读取文件字节流read()方法(三)

    读取文件字节流read()方法(三) int read(byte[] bytes) 返回值为int类型, 该int类型数据表示每一次读取到的有效字节数,也就是读取到了几个字节, 一个都没读取到返回-1 ...

  8. 日志功能 - 使用 conf 配置文件

    配置文件:Logger.conf 工具类:LogUtil.py 测试类:testDemo.py 执行效果 配置文件:Logger.conf 定义日志的类型.级别.格式等信息. [loggers] # ...

  9. kubernetes之pod拓扑分布约束

    在日常使用 kubernetes 的过程中中,很多时候我们并没有过多的关心 pod 的到底调度在哪里,只是通过多副本的测试,来提高的我们的业务的可用性,但是当多个相同业务 pod 在分布在相同节点时, ...

  10. Python 元编程 - 装饰器

    Python 中提供了一个叫装饰器的特性,用于在不改变原始对象的情况下,增加新功能或行为. 这也属于 Python "元编程" 的一部分,在编译时一个对象去试图修改另一个对象的信息 ...