Centos 中文亂碼解決方法
阿新 • • 發佈:2018-12-19
Centos 中文亂碼解決方法
問題描述
crontab -e
新增定時任務時,直接將下面內容貼上過去,結果竟然亂碼了。
# 每個星期日凌晨3:00執行完全備份指令碼
0 3 * * 0 /bin/bash -x /root/bash/Mysql-FullyBak.sh >/dev/null 2>&1
# 週一到週六凌晨3:00做增量備份
0 3 * * 1-6 /bin/bash -x /root/bash/Mysql-DailyBak.sh >/dev/null 2>&1
變成了這個樣子
# 每賂枚脷脮璩:00執脨脥全滷賂路萁瘧戮 0 3 * * 0 /bin/bash -x /root/bash/Mysql-FullyBak.sh >/dev/null 2>&1 # 脰一碌陸脰脕脕魯驢3:00脳脭^?滷賂路脻0 3 * * 1-6 /bin/bash -x /root/bash/Mysql-DailyBak.sh >/dev/null 2>&1
就在昨天,還在另外一臺機器上按照百度的結果解決了亂碼問題,今天又遇到這個問題,結果解決方法忘了個一乾二淨,還得重新百度。-_-!!
解決步驟
1. 檢視系統是否安裝了中文語言包
# locale -a | grep 'zh_CN'
zh_CN
zh_CN.gb18030
zh_CN.gb2312
zh_CN.gbk
zh_CN.utf8
如果沒有任何輸出的話,就說明系統沒有安裝中文語言包。使用一下命令安裝
# yum groupinstall "fonts" -y
tip: 該命令我沒有親自試驗過,是從這個網址 拷過來的。請謹慎使用,出錯勿怪。(不過應該沒問題,就算有問題也不要害怕,繼續百度)
2. 修改語言環境配置
檢視當前語言環境
# echo $LANG en_US.UTF-8 # locale LANG=en_US.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=
修改語言環境
第一方法
# vim /etc/locale.conf
LANG=zh_CN
# source /etc/locale.conf
第二種方法
# localectl set-locale LANG=zh_CN
現在再看語言環境
# locale
LANG=zh_CN
LC_CTYPE="zh_CN"
LC_NUMERIC="zh_CN"
LC_TIME="zh_CN"
LC_COLLATE="zh_CN"
LC_MONETARY="zh_CN"
LC_MESSAGES="zh_CN"
LC_PAPER="zh_CN"
LC_NAME="zh_CN"
LC_ADDRESS="zh_CN"
LC_TELEPHONE="zh_CN"
LC_MEASUREMENT="zh_CN"
LC_IDENTIFICATION="zh_CN"
LC_ALL=
3. 觀察實驗結果
# 每個星期日凌晨3:00執行完全備份指令碼
0 3 * * 0 /bin/bash -x /root/bash/Mysql-FullyBak.sh >/dev/null 2>&1
# 週一到週六凌晨3:00做增量備份
0 3 * * 1-6 /bin/bash -x /root/bash/Mysql-DailyBak.sh >/dev/null 2>&1
顯示中文了。^_^