~bohwaz/blog/

Avec de vrais morceaux de 2.0 !

Dropbear : réparer les locales

Dropbear est un super petit serveur et client SSH, très léger, que j'utilise sur du matériel embarqué ou des vieilles machines, qui n'ont que peu de RAM.

Y'a juste un petit bug : dropbear ne propage pas la locale utilisée par le client SSH, ce qui fait qu'on se retrouve avec des trucs comme ça :

$ locale
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=

Du coup bon forcément l'unicode ça marche moins bien.

Une solution palliative est d'utiliser la locale par défaut au démarrage du shell. Pour cela, créer en root le fichier texte /etc/profile.d/locale.sh contenant :

#!/bin/sh

. /etc/default/locale

export LANG

Maintenant normalement ça devrait vous donner la locale système par défaut (dans mon cas fr_FR.UTF-8) lors de vos sessions SSH.

Si ça ne marche pas, c'est peut-être que /etc/profile ne charge pas /etc/profile.d/*. En ce cas, rajouter ceci à /etc/profile :

for script in /etc/profile.d/*.sh
do
  source $script
done
unset script
Écrire un commentaire
(facultatif)
(facultatif)
(obligatoire)
 _                      
| |__   __ _ _ __   ___ 
| '_ \ / _` | '_ \ / __|
| |_) | (_| | | | | (__ 
|_.__/ \__,_|_| |_|\___|
                        
(obligatoire)

Les adresses internet seront converties automatiquement.
Tags autorisés : <blockquote> <cite> <pre> <code> <var> <strong> <em> <del> <ins> <kbd> <samp> <abbr>