happylcg 发表于 2013-12-17 22:22

freenas shell 中文问题

请问一下大虾们,怎么解决在freenas 的shell下显示中文问题。。我用的freenas是9.1版。。目前中文在shell显示为乱码,都是?号。。。谢谢

lsstarboy 发表于 2013-12-18 21:05

直接在终端下显示我没试过。
除了桌面外,我管理FreeBSD都是用ssh,显示汉字就成ssh客户端的事了,用putty可以显示汉字,无论是gbk或者utf-8都可以正确显示。

happylcg 发表于 2013-12-23 16:41

谢谢版主的回复!
      我目前已经开了ssh,并且用putty连接,还是显示成乱码,不知道为什么


如果通过web直接管理freenas,可以在Wed开一个终端来执行,这样就能显示中文,但是无法用键盘输入中文(可以粘贴的方式)。。。关键是通过web开启的ssh窗口不支持一些命令,如ll显示权限就不支持,显示成 don't known command

如果是用putty,或者直接本机打开ssh就完全能运行上面的 ll命令,但可惜不能显示中文

lsstarboy 发表于 2013-12-24 21:14

字符集没调对。
FreeBSD显示汉字的几个要点:
(1)setenv 中,要设置local的几个参数:
setenvLANG zh_CN.UTF-8
setenvLC_TYPE zh_CN.UTF-8
setenvLC_ALLzh_CN.UTF-8

(2)putty中,要设置:字体、连接字符集,都在Windows参数下面,仔细找找。

happylcg 发表于 2013-12-26 16:33

(1)setenv 中,要设置local的几个参数:
setenvLANG zh_CN.UTF-8
setenvLC_TYPE zh_CN.UTF-8
setenvLC_ALLzh_CN.UTF-8


之前也在网上找了一下相关方法,也是有提到修改这个东西。但是发现修改了之后,重启freenas之后,就被重黑置了,无法成功修改

lsstarboy 发表于 2013-12-27 08:16

vi .cshrc
看一下里面怎么说的。

happylcg 发表于 2014-01-04 16:19

里面是这么说 的,我已经去掉了里面的注释

alias h         history 25
alias j         jobs -l
alias la      ls -a
alias lf      ls -FA
alias ll      ls -lA

umask 22

set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/
bin $HOME/bin /usr/local/fusion-io)

setenvEDITORvi
setenvPAGER   less
setenvBLOCKSIZE       K

if ($?prompt) then
      # An interactive shell -- set some stuff up
      set filec
      set history = 500
      set savehist = 500
      set mail = (/var/mail/$USER)
      if ( $?tcsh ) then
                bindkey "^W" backward-delete-word
                bindkey -k up history-search-backward
                bindkey -k down history-search-forward
      endif
endif

alias mountrw   mount -o noatime -uw
页: [1]
查看完整版本: freenas shell 中文问题