Changing your locale on Linux and UNIX systems

You can change your system locale on UNIX and Linux® systems.

About this task

You can set environment variables to control the system locale. You can set these variables to be system-wide, or on a per-session basis:
LC_ALL
Overrides all LC_* environment variables with the given value
LC_CTYPE
Character classification and case conversion
LC_COLLATE
Collation (sort) order
LC_TIME
Date and time formats
LC_NUMERIC
Non-monetary numeric formats
LC_MONETARY
Monetary formats
LC_MESSAGES
Formats of informative and diagnostic messages, and of interactive responses
LC_PAPER
Paper size
LC_NAME
Name formats
LC_ADDRESS
Address formats and location information
LC_TELEPHONE
Telephone number formats
LC_MEASUREMENT
Measurement units (Metric or Other)
LC_IDENTIFICATION
Metadata about the locale information
LANG
The default value, which is used when either LC_ALL is not set, or an applicable value for LC_* is not set
NLSPATH
Delimited list of paths to search for message catalogs
TZ
Time zone

LC_MESSAGES and NLSPATH are the most important variables to the integration node. These variables define the language and location of response messages that the integration node uses. The integration node profile file, mqsiprofile, sets NLSPATH. Either you, or your system must set LC_MESSAGES. The value set in LC_MESSAGES must be a value that is installed on your machine and that the integration node recognizes. LC_CTYPE is also important to the integration node because it defines the character conversion that the integration node performs when interacting with the local environment.

Before setting these variables, check that the language and code page are installed on your machine, and are supported by IBM® Integration Bus.

You can use the command locale to show your current locale. The command locale -a displays all the locales that are currently installed on the machine. Make sure that the locale you select for LANG and LC_ALL is in the list that is returned by the command locale -a. The values that locale uses and returns are case sensitive, therefore copy them exactly when assigning them to an environment variable.

For information on languages and code pages supported by IBM Integration Bus, see Locales and Supported code pages.

If you use common desktop environment (CDE), use this environment to set the locale instead of setting LANG and LC_ALL directly. The NLSPATH variable respects either method.

For example, to set IBM Integration Bus to run in a UTF-8 environment set the following values in the profile:
LANG=en_US.utf-8
LC_ALL=en_US.utf-8
where en_US sets the language, and utf-8 sets the code page.

When you start an integration node component, the locale of that component is inherited from the shell in which it is started. The integration node component uses the LC_MESSAGES environment variable as the search path in the NLSPATH environment variable (LC_MESSAGES is set when variable LC_ALL is exported).

Messages are sent to the syslog in the code page set by this locale. If you have multiple integration node that write to this syslog, their messages are in the code page of the locale in which they were started, for example:

locale syslog code page ccsid
pt_BR iso8859-1 819
pt_BR ibm-850 850
pt_BR utf-8 1208

Set the locale of the user ID that runs the syslog daemon to one that is compatible with the locales of all integration node that write to the syslog on that system, for example, utf-8. For compatibility, you can set the default locale. On Solaris, set the LANG and LC_ALL variables in /etc/default/init. On AIX® and Linux, these variables are in /etc/environment. This task is not required on HP-UX.

For full-time zone support in the integration node, set the TZ variable using Continent/City notation. For example set TZ to Europe/London to make London, England the time zone, or set it to America/New_York to make New York, America the time zone.

If you want to add a new locale, refer to the operating system documentation for information about how to complete that task. If the code page of the new locale is not supported by IBM Integration Bus you must add it by Generating a new code page converter.