杂项1 - Linux 字符界面和图形界面的切换

切换字符界面和图形界面:

  1. 使用systemctl(需要重启):

    $systemctl set-default multi-user.target #切换到字符界面
    $systemctl set-default graphical.target #切换到图形界面
    
  2. 使用init(临时切换,不需要重启):

    $init 1 #单用户字符界面
    $init 3 #多用户字符界面
    $init 5 #图形界面
    

    init命令 是Linux下的进程初始化工具,init进程是所有Linux进程的父进程,它的进程号为1。init命令是Linux操作系统中不可缺少的程序之一,init进程是Linux内核引导运行的,是系统中的第一个进程。

    那么,又有哪些运行级别呢?各自又有什么含义呢?请看下表

    运行级别层次说明
    #0停机(千万不能把initdefault 设置为0)
    #1单用户模式,并且只能使用root用户进行控制
    #2多用户,没有 NFS(和级别3相似,会停止部分服务)
    #3完全多用户模式(标准运行级别)
    #4安全模式
    #5x11(Xwindow),即图形界面
    #6重新启动(千万不要把initdefault 设置为6)

    init 也是一些版本的Linux在控制开机启动(包括自制脚本开机启动)所不能忽略的问题,比如在Kali2019,/etc文件夹下有rc0.d到rc6.d以及单独一个rcS.d(单用户模式启动脚本)这七个文件夹,一些需要自启动的脚本就按照对应运行级别存放在这些文件夹中。当然,这些文件夹中的脚本是直接链接到/etc/init.d中的,你也可以把自制脚本放到这里,并配制好权限。稍后会有专门板块细讲开机自启的问题。

  3. 字符界面的汉字显示问题:

    在切换到字符界面后,会出现汉字显示异常(不论是虚拟机还是物理机,但在Xshell中不会)。所有汉字都会显示为白色方框,如下图:

    那该怎么解决呢?我在网上找了一圈并进行尝试,包括换中文字体、选择不同编码集、VGA显示啥的,但是都没用。唯一的解决方法就是不用中文。不过这种方法还有两种分支,一是把系统显示语言完全换成英文,如此一来,在图形界面显示的也都会是英文了。另一种方法时临时切换显示语言,重启即失效。临时切换代码:

    $export LANG=zh_CN.UTF8 #或者其他可用的字符集,这里选择zh.CN并不会继续显示中文
    #有博客说用zh_CN.GB2312,我这里没用
    #刚刚才发现zh_CN还是会有部分命令显示异常,所以必须使用下方所示编码
    $export LANG=en_US.UTF8
    #其实还可以一个个尝试其他编码,不过我用$dpkg-reconfigure locales试过没用,不知道export是否有用
    

这里啰嗦一句,作为现代程序员,阅读和使用英语应该是最基本的能力之一,不要惧怕全英文界面。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值