【背景】vim
公司弄了兩臺新的虛擬機,用來將原先都部署在一臺機器上的JIRA, Fisheye, Confluence遷移到這兩臺機器上,使用SecureCRT進行登陸,使用相關命令時,一臺出現亂碼,另一臺正常顯示,使用vim時,也是同樣,因此來總結總結亂碼問題的解決方法。bash
【解決】服務器
1. 兩臺相關截圖運維
第一臺 | 第二臺 |
2. 在網上找到方法說是須要修改/etc/sysconfig/i18n,比較兩臺機器上的這個文件內容,發現亂碼機器爲空,非亂碼機器爲以下:工具
#LANG="zh_CN.UTF-8" LANG="zh_CN.GB18030" LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN" SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en" SYSFONT="latarcyrheb-sun16"
3. 按照網上查到的相關資料代表確實是須要修改此文件,修改之編碼
vim /etc/sysconfig/i18n
修改以後,發現無法更新,我使用的sysadmin登陸的,查看文件權限:spa
這樣種辦法只能找到root賬號,再進行更新,咱們這種賬號不可能給出來,只能找運維部門解決。3d
4. 繼續搜索,有貼子裏提到這麼一句話「遠程工具與服務器的字符集是否同樣」,想着我使用的是SecureCRT進行的登陸,因此嘗試着修改一下工具的字符集,找到以下設置:code
修改這裏的字符編碼,使用locale查看本機字符編碼以下:blog
修改終端字符編碼爲UTF-8,最終編碼顯示正常,和另外一臺機器同樣
【總結】
再次進行資料蒐集以後,總結亂碼以下解決辦法:
0. 查看遠程工具與服務器的字符集是否同樣
1. 修改/etc/sysconfig/i18n:
#LANG="zh_CN.UTF-8" LANG="zh_CN.GB18030" LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN" SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en" SYSFONT="latarcyrheb-sun16"
2. 修改~/.bash_profile文件,並執行source ~/.bash_profile(在不重啓系統的狀況下使新環境變量生效):
LANG="zh_CN.GB18030"
3. 在bash環境下直接執行:
export LANG=zh_CN.GB18030