热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

KaliLinux系统设置中文语言环境的步骤解析

文章出自个人博客https:knightyun.github.io20200415linux-chinese,转载请申明主流Linux系统安装之后,默认


文章出自个人博客https://knightyun.github.io/2020/04/15/linux-chinese,转载请申明



主流 Linux 系统安装之后,默认使用的语言环境基本都是英语,所以不管时图形桌面的菜单标题,还是终端的一些输出提示,都是展示的英文,对于觉得阅读英语不太友好的同胞们,第一件事可能就是设置一个友好的汉化环境,下面以 Kali Linux 这个发行版的系统为例,介绍一些设置中文语言环境的方法;


图形界面

如果安装的系统有图形界面,那么操作就简单了;一般系统在安装时就会提供语言选项,不过安装好后也能进行修改,一般可以在系统设置的区域与语言模块中找到相关的设置,例如下图:

至于其他 Linux 系统,路径应该类似,或者可以在设置里面搜索一下;修改成功需要重新登录生效,这个修改是永久性的;


终端命令

没有图形界面或者在设置里面没有找到的情况下,可以尝试使用终端命令进行修改;


安装中文环境包

切换中文环境之前,需要安装中文语言环境包,直接运行以下命令:

sudo dpkg-reconfigure locales# 上面的运行不成功可以尝试下面这条命令:
sudo dpkg-reconfigure --force locales

如果提示类似 locales 未找到这样的信息,那么就先运行 apt install locales 执行安装,然后再运行上面的命令,顺利的话会弹出一个对话框,选择需要安装的语言,因为中文包是 z 开头的,列表又是按字母顺序排列,所以使用方向箭头向下浏览到靠近底端位置,应该能看见这样一个选项:

[ ] zh_CN.UTF-8 UTF-8

然后把焦点移动到它上面,按下空格键选择,选中的话方括号中会出现星号,再按回车进入下一步,新的对话框会提示选择系统默认的语言设置,这时依然把焦点移动到和上面一样的选项上,最后按回车确认,代码运行完毕后如果没有报错,就安装完成了;


切换中文环境

接下来开始切换语言环境,先运行一下 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=

其实这些也都代表这当前系统的对应环境变量值,例如再运行 echo $LANG 就会得到输出 en_US.UTF-8,其他类似,所以我们修改的重点也是围绕其中的几个变量展开的;由于环境变量的特性,也可以再细分为两种方法;


临时性修改

直接在终端里输入以下命令的话,就能对当前语言的环境变量进行修改:

export LANG=zh_CN.UTF-8

注:这里只用修改 LANG 这个变量就行了,后面的其它以 LC 开头的变量值会自动改变;


然后再运行 locale 看一下效果:

LANG=zh_CN.UTF-8
LANGUAGE=
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=

确实修改成功了,不过这条命令是临时性的,关闭当前终端或重启后就失效了,而且也仅限于当前终端内输出指定的语言,只适用于临时查看某个语言的输出内容的场景;


永久性修改

要永久性的修改语言环境,其实也就是永久性的修改 LANG 这个环境变量的值,要实现它就直接在 ~/.bashrc 这个文件中末尾追加下面一行内容:

export LANG=zh_CN.UTF-8

这样就对当前用户设置了中文语言环境,如果需要应用到系统所有用户的话,就追加到 /etc/profile 这个文件中;最后重启一下就设置成功了;


其它修改方法

一些教程中会提到修改 /etc/default/locale 这个文件的内容,其实上面的安装中文环境这一节中,最后一步其实就是向这个文件中写入以下内容:

LANG=zh_CN.UTF-8

不过经测试,这样修改后重启并没有改变当前语言环境,不过要是替换成下面的内容就能修改成功:

LANGUAGE=zh_CN.UTF-8

另外下面任意一条命令都能实现设置 /etc/default/loale 这个文件的内容:

sudo localectl set-locale LANGUAGE=zh_CN.UTF-8
sudo update-lcoale LANGUAGE=zh_CN.UTF-8

修改后重启运行 locale 得到的输出是这样的:

LANG=en_US.UTF-8
LANGUAGE=zh_CN.UTF-8
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=

即最终只修改了 LANGUAGE 这一处的变量值,所以这个方法不怎么推荐;另外也有一些教程提到修改 /etc/sysconfig/i18n/etc/local.conf 这两个文件的内容,这应该是其它 Linux 发型版本中的,至少我在 Kali 系统里面没有找到这两个文件;


安装中文字体包

修改好中文环境重启后,还有可能出现的一种常见情况就是,终端或者菜单标题之类的地方出现乱码,也有可能出现先刚安装完系统后;其实原因也很简单,就是虽然环境被设置成了中文,但是当前系统中缺乏相应的中文字体,所以识别错误就用一些乱码来占位了;

解决方法就是安装一些中文字体包,比如可以运行:

sudo apt install fonts-wqy-microhei

安装完成后,按需重启,应该就能看见友好又熟悉的内容了 ^_^;




技术文章推送

手机、电脑实用软件分享



推荐阅读
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 本文介绍了在Android Studio中使用命令行build gradle的方法,并解决了一些常见问题,包括手动配置gradle环境变量和解决External Native Build Issues的方法。同时提供了相关参考文章链接。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 程序员如何选择机械键盘轴体?红轴和茶轴对比
    本文介绍了程序员如何选择机械键盘轴体,特别是红轴和茶轴的对比。同时还介绍了U盘安装Linux镜像的步骤,以及在Linux系统中安装软件的命令行操作。此外,还介绍了nodejs和npm的安装方法,以及在VSCode中安装和配置常用插件的方法。最后,还介绍了如何在GitHub上配置SSH密钥和git的基本配置。 ... [详细]
  • 其实之前也有下载过完整的android源码,但是从来没有对这个做过一些总结,在加上最近需要经常去看,索性就在从新下载,编译一下,其实这些东西官网上面都有。http:sou ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Linuxchmod目录权限命令图文详解在Linux文件系统模型中,每个文件都有一组9个权限位用来控制谁能够读写和执行该文件的内容。对于目录来说,执行位的作用是控制能否进入或者通过 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 本文介绍了Linux Shell中括号和整数扩展的使用方法,包括命令组、命令替换、初始化数组以及算术表达式和逻辑判断的相关内容。括号中的命令将会在新开的子shell中顺序执行,括号中的变量不能被脚本余下的部分使用。命令替换可以用于将命令的标准输出作为另一个命令的输入。括号中的运算符和表达式符合C语言运算规则,可以用在整数扩展中进行算术计算和逻辑判断。 ... [详细]
  • 解决github访问慢的问题的方法集锦
    本文总结了国内用户在访问github网站时可能遇到的加载慢的问题,并提供了解决方法,其中包括修改hosts文件来加速访问。 ... [详细]
  • 本文总结了Linux下多线程执行shell脚本的4种方法,包括切换到工作目录执行、使用绝对路径执行、直接使用bash或sh执行。同时介绍了为什么需要加上"./"来执行脚本的原因。 ... [详细]
  • PatchODAX8: ... [详细]
author-avatar
Emily嘿嘿
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有