如何解決在Linux tty終端中漢字方塊亂碼

  解決Linux 純命令界面下中文是方塊亂碼的問題

  最近在學習Linux安全並給磁盤LUKS加密時,發現在telinit 1模式下,原本正常的中文字符均變成了方塊亂碼(如下圖),這使得我們很難曉得命令的執行結果究竟是對還是錯,進一步爲後續工作增加了一定的困難,磨刀不誤砍柴工,那就先解決這個小問題。

  ( 在純命令界面下,中文變成方塊亂碼:)

  ( 在圖像界面中卻)

在這裏插入圖片描述

  學習過的辯證法告訴我們,解決問題需從正反兩方面去考慮,因此,我們很容易的想到兩個解決問題的方向:

  1. 是將 Linux 執行消息均改成英文;

  2. 而另一種則是將方塊改回中文。

  但博主在這裏僅爲讀者提供了後一者的解決方式。在大量的查閱資料和手操實踐過後,很遺憾的發現,均沒能找到解決的方法,就在一籌莫展的時刻,感謝幸運女神的光顧,無疑的發現zhcon這個軟件,zhcon是工作在Linux控制檯下的高效雙字節中/日/韓(CJK)虛擬終端,就像DOS環境中的UCDOS一樣,爲控制檯(console)環境提供完整的雙字節語言環境
  於是乎,動手!我最開始是選擇Debian系的Kali Linux測試的。

   1. 先查看語言配置文件,是否將語言改爲中文UTF8
# sudo vim /etc/default/locale

在這裏插入圖片描述

   修改內容如下:
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh"
   2. 安裝zhcon:
# apt install -y zhcon

在這裏插入圖片描述

  重啓:
# reboot	
  重啓之後進入tty純命令模式,然後開啓zhcon:
# init 3  或者 telinit 3 或者 telinit 1 等皆可

  運行zhcon:

# zhcon --utf8

  恭喜,你的執行消息中,中文不在是方塊亂碼了。

在這裏插入圖片描述

   如果,你的是紅帽系列的Linux,例在Centos Linux上yum是沒有zhcon的包的,我們只能手動安裝了。
  1. 編譯安裝zhcon:

  下載:

[root@localhost xyl]# wget http://sourceforge.net/projects/zhcon/files/zhcon/0.2.6/zhcon-0.2.5.tar.gz
[root@localhost xyl]# wget http://sourceforge.net/projects/zhcon/files/zhcon/0.2.6/zhcon-0.2.5-to-0.2.6.diff.gz

  解壓:

[root@localhost xyl]# tar zxvf zhcon-0.2.5.tar.gz

  打補丁:

[root@localhost xyl]# cd zhcon-0.2.5
[xyl@localhost zhcon-0.2.5]# zcat ../zhcon-0.2.5-to-0.2.6.diff.gz | patch -p1		
# 因爲目前權威能找到的最新編譯版zhcon是0.2.5版本,而zhcon-0.2.5-to-0.2.6.diff.gz是zhcon的一個升級包,所以我需要升級打補丁。

  或者這樣打補丁也可:
  解壓gz文件得到diff補丁文件:

[root@localhost xyl]# gzip -d zhcon-0.2.5-to-0.2.6.diff.gz

  將解壓好後的zhcon-0.2.5-to-0.2.6.diff補丁文件,打補丁到zhcon-0.2.5的源代碼中去:

[root@localhost xyl]# patch -p0 < zhcon-0.2.5-to-0.2.6.diff

  開始編譯安裝:

[root@localhost xyl]# ./zhcon-0.2.5/configure --prefix=/usr/local/zhcon
[root@localhost xyl]# make && make install

  啓動zhcon:

[root@localhost xyl]# /usr/local/zhcon/bin/zhcon --utf8
# 使用Ctrl+2來打開或關閉智能拼音輸入法。
  2. rpm包安裝zhcon:

   我們可以在官網下載安裝: 官網下載鏈接

   當然,熱心的博主也提供了自己的網盤:博主網盤鏈接
   提取碼:cip3

[root@localhost xyl]# rpm -ivh zhcon-0.2.6-18-omv4000.x86_64.rpm 

在這裏插入圖片描述

   安裝好zhcon後,在純命令界面中啓動zhcon即可:

# init3 或者 telint 1
# zhcon

在這裏插入圖片描述
在這裏插入圖片描述

  zhcon的熱鍵:

	CTRL+ALT+H 幫助;
	
	CTRL+D 退出。
	
	輸入法熱鍵:
	
	CTRL+SPACE 打開/關閉輸入法;
	
	ALT+SPACE 打開/關閉CJK方式;
	
	CTRL+2 五筆;/ 全拼;
	
	編碼切換熱鍵:
	
	CTRL+F1 使用GB2312編碼了;
	
	CTRL+F2 使用GBK編碼;
	
	CTRL+F3 使用BIG5編碼;
	
	CTRL+F4 使用JIS編碼;
	
	CTRL+F5 使用KSCM編碼;
	
	CTRL+F7 切換輸入法狀態欄風格(光標跟隨或底部固定)。
	
	CTRL+F9 設置內碼的識別方式:
	
	按一次:內碼手動識別;
	
	按二次:自動識別GB與BIG5碼;
	
	按三次:自動識別GB與BIG5碼,並用簡體中文來顯示;
	
	按四次:自動識別GB與BIG5碼,並用繁體中文來顯示;
	
	CTRL+F10 調出輸入法系統菜單;
	
	CTRL+. 切換中英文標點;
	
	CTRL+, 切換中文全角/半角;
	
	SHIFT+PGUP 上卷半屏歷史記錄;
	
	SHIFT+PGDN 下卷半屏歷史記錄;
	
	SHIFT+上方向箭 上卷一行歷史記錄;
	
	SHIFT+下方向箭 下卷一行歷史記錄。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章