Differences between revisions 47 and 48
Revision 47 as of 2009-11-17 13:50:28
Size: 4671
Editor: GregWooledge
Comment: configuration for (t)csh users; sshd_config also need to be checked
Revision 48 as of 2009-11-17 18:04:32
Size: 5112
Editor: FranklinPiat
Comment: improve SSH section
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## Auto-converted by kwiki2moinmoin v2005-10-07 #language en
Line 25: Line 25:
If you've upgraded from an older version of Debian, your `/etc/ssh/sshd_config` may not contain the correct `AcceptEnv` directive to let the ssh client pass locale variables. Edit your `/etc/ssh/sshd_config` file and make sure it contains this line: === SSH ===

==== SSH Server ====
If you've upgraded from a very old version of Debian (before [[DebianEtch|Etch]]), your `[[DebianMan:5/sshd_config|sshd_config(5)]]` may not contain the correct {{{AcceptEnv}}} directive to let the ssh client pass locale variables. Edit your {{{/etc/ssh/sshd_config}}} file and make sure it contains this line:
Line 29: Line 32:
If you change `sshd_config`, you should issue the command `/etc/init.d/ssh restart` to make it take effect. You should issue the command {{{/etc/init.d/ssh restart}}} to make it take effect. Also, you should log out current ssh connection and log back in. Already-running programs will not be affected.
Line 31: Line 34:
To use the new locale settings, log out and back in. Already-running programs will not be affected. ==== SSH Client ====
Line 33: Line 36:
If you've upgraded from a very old version of Debian (before [[DebianEtch|Etch]]), your `[[DebianMan:5/ssh_config|sshd_config(5)]]` may not contain the correct {{{AcceptEnv}}} directive to let the ssh client pass locale variables. Edit your {{{/etc/ssh/ssh_config}}} file and make sure it contains this line:
{{{
SendEnv LANG LC_*
}}}
You should log out current ssh connection and log back in. Already-running session will not be affected.

=== GDM ===
Line 35: Line 45:
''TODO: SendEnv in ~/.ssh/config, personal locale settings in .bash_profile or similar.''

This page indicates how to install / use Debian in your local language.

Configuration

Standard

Get root and type dpkg-reconfigure locales and select the locale(s) you want to generate. At the end, you'll be asked which one should be the default. If you have users who access the system through ssh, it is recommended that you choose None as your default locale.

This changes /etc/default/locale and /etc/locale.gen (in older versions of Debian, also /etc/environment). If you chose a default locale other than None above, it will be in /etc/default/locale and will override the LANG variable supplied by ssh. This is highly inconvenient.

If you've upgraded to Lenny from an older version of Debian and have leftover LANG=... content in /etc/environment, you should comment it out (type editor /etc/environment and put a # character in front of the line, and then save it).

Now, optionally, edit /etc/profile as follows:

  • Run locale -a to get a list of the locale names suitable for use in environment variables. Note that the spellings are different from the ones presented in the dpkg-reconfigure list.

  • Add a line like this to your /etc/profile file:

     : ${LANG:=de_DE.iso88591}; export LANG

    where de_DE.iso88591 is the locale you want to use as a default. If you have tcsh or csh users, create a file named /etc/csh/login.d/lang with the following content:

     if (! $?LANG) setenv LANG de_DE.iso88591

    This will only set LANG if it was not previously defined, for example by ssh. Unfortunately, this won't affect users who login with xdm, gdm, etc.

SSH

SSH Server

If you've upgraded from a very old version of Debian (before Etch), your [[DebianMan:5/sshd_config|sshd_config(5)]] may not contain the correct AcceptEnv directive to let the ssh client pass locale variables. Edit your /etc/ssh/sshd_config file and make sure it contains this line:

AcceptEnv LANG LC_*

You should issue the command /etc/init.d/ssh restart to make it take effect. Also, you should log out current ssh connection and log back in. Already-running programs will not be affected.

SSH Client

If you've upgraded from a very old version of Debian (before Etch), your [[DebianMan:5/ssh_config|sshd_config(5)]] may not contain the correct AcceptEnv directive to let the ssh client pass locale variables. Edit your /etc/ssh/ssh_config file and make sure it contains this line:

SendEnv LANG LC_*

You should log out current ssh connection and log back in. Already-running session will not be affected.

GDM

TODO: how to configure things properly for xdm/gdm/etc. users.

Manually

  • Edit the file /etc/locale.gen (i.e. open a terminal as root, and type nano /etc/locale.gen ) and add your locale settings (one set per line), e.g.:

     de_DE.UTF-8 UTF-8
     de_DE ISO-8859-1
     de_DE@euro ISO-8859-15

You can see the supported locales by typing less /usr/share/i18n/SUPPORTED or in ?LocaleSupported .

  • Run the command locale-gen

  • Run the command locale -a to verify the list of available locales; note that the spellings change.

  • Edit /etc/profile and /etc/csh/login.d/lang and /etc/ssh/sshd_config as in the previous section.

  • If you've upgraded to Lenny and you have leftover LANG=... content in /etc/environment, you should comment it out.

  • To use the new settings with your programs, log out and back in.

TODO: how to configure things properly for xdm/gdm/etc. users.

TODO: ?SendEnv in ~/.ssh/config, personal locale settings in .bash_profile or similar.

Keyboard

Console

dpkg-reconfigure console-common

It over-writes the /etc/console/boottime.kmap.gz file.

XWindow

This section is way out of date. Package and file names have all changed.

dpkg-reconfigure xserver-xfree86

It changes /etc/X11/?XF86Config-4 , Section "?InputDevice"

Zones, languages and countries

See Also


CategorySystemAdministration