银河麒麟之语言设置和服务开机自启动设置

一、前言

  银河麒麟操作系统作为国产操作系统,是目前国产化、信创等项目场景的主流操作系统之一,但它本质上还是基于现有的开源操作系统上的二次开发,银河麒麟服务器版是基于centos的,银河麒麟桌面版是基于debain的。既然是国产化系统自然是需要支持中文的,如果系统安装的时候选择的默认语言是英文,我们可以再后期进行调整设置。又或者我们部署了系统服务,需要通过脚本或者命令启动服务,我们希望设置服务开机自启动该如何操作。在此博文可以找到答案,博文实验环境如下:

  • 操作系统:银河麒麟桌面版V10.1

wuhs@wuhs-pc:~$ cat /etc/os-release
NAME=“Kylin”
VERSION=“V10.1 (juniper)”
ID=kylin
ID_LIKE=debian
PRETTY_NAME=“Kylin V10.1”
VERSION_ID=“v10.1”
HOME_URL=“http://www.kylinos.cn/”
SUPPORT_URL=“http://www.kylinos.cn/service.aspx”
BUG_REPORT_URL=“http://www.kylinos.cn/”
PRIVACY_POLICY_URL=“http://www.kylinos.cn”
VERSION_CODENAME=juniper
UBUNTU_CODENAME=juniper

二、系统语言设置

  银河麒麟操作系统初始化安装的时候选择了English作为系统语言,后续如果想切换系统语言改如何操作呢?博文将介绍三种设置语言的方式,以修改英文为中文为例进行介绍。

1、图形化桌面修改设置

  依次点击: start按钮–》setting按钮–》System–》Datetime --》Area–》system language --》下拉框中选择Chinese,如下截图所示。设置完成后会弹窗提示需要注销用户后生效,我们点击注销loginout,重新登录后可以看到系统显示为了中文。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、使用dpkg-reconfigure命令设置

wuhs@wuhs-pc:~$ sudo dpkg-reconfigure locales

在这里插入图片描述
在这里插入图片描述

3、通过/etc/profile系统变量文件设置

  我们首先通过locale命令查看系统语言,也可以通过env命令查看。然后编辑/etc/profile文件,添加语言设置的环境变量,然后重启系统。这样系统语言就设置成为了中文,此方式为全局变量设置,此种方法设置了之后方法一修改语言设置后就失效了。

wuhs@wuhs-pc:~$ locale
LANG=en_US.UTF-8

wuhs@wuhs-pc:~$ sudo vim /etc/profile
[sudo] wuhs 的密码:

#system language
export LANG=zh_CN.UTF-8
export LANGUAGE=zh_CN

wuhs@wuhs-pc:~$ reboot

4、通过~/.bashrc设置用户的环境语言

  如果我们只是希望设置某个用户的环境语言为中文,其他用户保持系统默认的英文,我们可以修改~/.bashrc在文件末尾添加上,注销用户后重新登录就会发现语言设置为了中文。

sun@wuhs-pc:~$ cat ~/.bashrc
#system language
export LANG=zh_CN.UTF-8
export LANGUAGE=zh_CN

5、语言环境变量参数说明

  如下locale命令查看结果所示,locale把按照所涉及到的文化传统的各个方面分成12个大类,这12个大类分别是:
1、语言符号及其分类(LC_CTYPE)
2、数字(LC_NUMERIC)
3、比较和排序习惯(LC_COLLATE)
4、时间显示格式(LC_TIME)
5、货币单位(LC_MONETARY)
6、信息主要是提示信息,错误信息,状态信息,标题,标签,按钮和菜单等(LC_MESSAGES)
7、姓名书写方式(LC_NAME)
8、地址书写方式(LC_ADDRESS)
9、电话号码书写方式(LC_TELEPHONE)
10、度量衡表达方式 (LC_MEASUREMENT)
11、默认纸张尺寸大小(LC_PAPER)
12、对locale自身包含信息的概述(LC_IDENTIFICATION)。
  Locale是软件在运行时的语言环境, 它包括语言(Language), 地域 (Territory) 和字符集(Codeset)。一个locale的书写格式为: 语言[_地域[.字符集]]。完全的locale表达方式是 [语言[_地域][.字符集] [@修正值]。zh_CN.GB2312=中文_中华人民共和国+国标2312字符集。

sun@wuhs-pc:~$ 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=

  • LC_ALL和LANG优先级的关系:LC_ALL > LC_* >LANG
  • 如果需要一个纯中文的系统的话,设定LC_ALL= zh_CN.XXXX,或者LANG=zh_CN.XXXX都可以。
  • 如果只想要一个可以输入中文的环境,而保持菜单、标题,系统信息等等为英文界面,那么只需要设定 LC_CTYPE=zh_CN.XXXX,LANG=en_US.XXXX就可以了。
  • 假如什么也不做的话,也就是LC_ALL,LANG和LC_*均不指定特定值的话,系统将采用POSIX作为lcoale,也就是C locale。
  • LANG和LANGUAGE的区别:
    LANGUAGE是设置应用程序的界面语言。而LANG是优先级很低的一个变量,它指定所有与locale有关的变量的默认值

三、服务开机自启动设置

1、root用户在 /etc/ 目录下新增rc.local文件

  • 编辑创建rc.local文件

root@wuhs-pc:/etc# vim rc.local
#!/bin/bash
nohup /etc/openvpn/client/startvpn.sh &
exit 0

  • 添加执行权限

root@wuhs-pc:/etc# chmod u+x rc.local

  • 重启验证

wuhs@wuhs-pc:~$ cat /tmp/vpn.log
2023-03-14-15:07:05 已执行

2、在 /etc/init.d/目录下添加需要执行的.sh脚本

  • 编辑启动脚本
    编辑一个启动脚本.sh文件,文件头部可以参照目录下的现有文件,比如ssh,smbd等,头部文件必要严格按照样式填写。最后添加需要执行的实际命令或者脚本。

root@wuhs-pc:/etc/init.d# cat autovpn.sh
#! /bin/sh
### BEGIN INIT INFO
# Provides: openvpn
# Required-Start: $network $local_fs $remote_fs
# Required-Stop: $network $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: OpenBSD Secure Shell server
### END INIT INFO

nohup /etc/openvpn/client/startvpn.sh &
exit 0

  • 脚本添加执行权限

root@wuhs-pc:/etc/init.d# chmod +x autovpn.sh

  • 创建软连接
    最后添加软连接,/etc/rc.d/rc0.d/~/etc/rc.d/rc6.d/文件夹的含义不同,S开头代表是开启时处理的脚本,按照后面紧跟的数字进行按顺序启动,S99则是最后进行启动。

root@wuhs-pc:/etc/init.d# ln -s /etc/init.d/autovpn.sh /etc/rc2.d/S99autovpn

  • 重启验证
    系统重启后我们可以看到脚本已经完成了开机自动执行。

root@wuhs-pc:/etc/init.d# cat /tmp/vpn.log
2023-03-14-15:29:18 已执行

3、桌面添加开机自启动服务

  如上两种主要针对不依赖Xserver的服务,如果是需要依赖Xserver的桌面服务我们需要通过如下方式配置开机自启动。但是此方式需要在桌面完成登录后服务才会完成正式的启动。

  • 编辑服务器启动的配置文件
    编辑创建一个.desktop文件,最重要的是Exec指定需要执行的脚本,该文件的配置可以参照/usr/share/application目录下的其他文件。

root@wuhs-pc:/usr/share/applications# cat autovpn.desktop
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Name=autovpn
Comment=auto start openvpn
Exec=/etc/openvpn/client/startvpn.sh
StartupNotify=false
Terminal=false
Hidden=false

  • 添加执行权限

root@wuhs-pc:/usr/share/applications# chmod u+x autovpn.desktop

  • 在桌面添加开机自启动服务
    在这里插入图片描述
  • 重启验证
    重启后我们使用shell终端登录可以发现程序并没有执行,使用账户登录桌面后再次查看会发现vpn拨号成功。

root@wuhs-pc:/usr/share/applications# cat /tmp/vpn.log
2023-03-14-15:45:01 已执行

猜你喜欢

转载自blog.csdn.net/carefree2005/article/details/129498985