Aqui está a solução correta.
Defina a variável de ambiente LANG para hu_HU.UTF-8
csh:
setenv LANG hu_HU.UTF-8
bash / sh:
LANG=hu_HU.UTF-8
export LANG
Defina também a "codificação do terminal" no putty para UTF-8:
Entãoéperfeito,tantonoshellquantonomc:
Issotambémresolveuoproblemaquandoeulogardeumacaixalinuxcomxterm/gnome-terminal,qualquerqueseja.
Parecequeasoluçãogeral"em todo o sistema" é criar uma nova classe em /etc/login.conf com estas:
hungarian|Hungarian:\
:charset=hu_HU.UTF-8:\
:lang=hu_HU.UTF-8:\
:tc=default:
Em seguida, execute cap_mkdb /etc/login.conf e, finalmente, altere as classes de login de usuários específicos com chsh. (Para novos usuários, é melhor especificar a classe de login quando o "adduser" solicitar.)
Tudo foi documentado aqui, exceto pela codificação do terminal:
e provavelmente eu poderia ter descoberto isso antes de enviar uma pergunta. Mas estou fornecendo a resposta de qualquer maneira, no caso de alguém encontrar o mesmo problema.
UPDATE: depois de fazer isso, você não poderá usar o WinSCP com as configurações padrão. O WinSCP tentará executar "ls -la" no servidor e analisar o resultado. Para o idioma não inglês, o resultado conterá datas em um idioma diferente e o WinSCP não poderá interpretá-lo. Para superar esse problema, vá para a configuração e altere o comando de listagem de "ls -la" para "env LANG = en_US.UTF-8 ls -la". (Ele está em Editar conexão / Avançado / Ambiente / SCP / Shell / Listagem de diretório)
Ao usar essa configuração, você poderá usar o WinSCP e manter a localidade padrão do usuário ao mesmo tempo.