用一台centos7做文件服务器给局域网内windows和其他linux电脑作为文件共享服务器。出现乱码情况,网上各种解决方案没有解决。
centos7(纯命令行,没有gui) 安装的是 samba 4.10.16, LANG=en_US.UTF-8
/etc/samba/smb.conf 配置:
unix charset = cp936
dos charset = utf8
客户端 windows 的系统编码是GBK, cmd 运行 chcp 是936
客户端cento7(纯命令行,没有gui) LANG=zh_US.UTF-8
客户端ubuntu(wsl) LANG=C.UTF-8
服务器LANG=en_US.UTF-8 , locale -a 没有安装中文环境。 安装中文环境后 /etc/locale.conf 有配置LANG=zh_CN.UTF-8
但除非source /etc/locale.conf , 不然还是LANG=en_US.UTF-8 。而且 man
客户端cento7 locale -a 没有安装中文环境。 安装中文环境后, LANG=zh_CN.UTF-8 了
但是此时windows 客户端上传的中文文件, 在这两台centos上都还是 乱码。
参考修改这3项配置,解决中文乱码
# 设置显示的字符集(防止中文目录、文件名乱码。默认UTF-8)
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
@狂龙骄子 重装了服务器了,ubuntu22 , 配置 unix charset = utf8 dos charset = cp936 , LANG=zh_CN.UTF-8。
window客户端正常 。 但centos7客户端,麒麟系统客户端,wsl(ubuntu)客户端 均乱码,到底什么情况....