web-dev-qa-db-ja.com

Ubuntuですべてのロケール設定を設定する方法

リモートでインストールされたアプリケーションにはエンコードの問題があり、ローカルマシンでは正常に動作しています。

ロケールをリモートマシンに「コピー」する最良の方法は何ですか?

私のパーソナルマシンのロケールは次のように構成されています。

$ locale
LANG=de_DE.UTF-8
LANGUAGE=de_DE:en
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC=en_US.UTF-8
LC_TIME=en_US.UTF-8
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY=en_US.UTF-8
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER=en_US.UTF-8
LC_NAME=en_US.UTF-8
LC_ADDRESS=en_US.UTF-8
LC_TELEPHONE=en_US.UTF-8
LC_MEASUREMENT=en_US.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_ALL=
27
d0x

より簡単な方法

  1. すべてのロケールをファイルにエクスポートします

    locale > import

  2. ファイルを開き、各行の先頭にエクスポートを追加します

  3. コマンドchmod ugo+rx importで実行可能にします

  4. 目的のプロファイルにコピーして./importを実行します

13
user91632

update-localeを使用して手動でロケールを設定できます。

Sudo update-locale LANG=de_DE.UTF-8 LC_MESSAGES=POSIX

詳細については、manページを参照してください。

または、ファイル/etc/default/localeを変更して、システムのロケールエントリを手動で変更できます。

たとえば、ドイツ語のシステムでは、システムメッセージが翻訳されないようにするには、次を使用できます。

LANG=de_DE.UTF-8
LC_MESSAGES=POSIX

注:変更は、新規ログイン後にのみ有効になります。

出典:https://help.ubuntu.com/community/Locale

29
green

リモートマシンでロケールを構成する際の推奨事項があります

1)Debianマシン(リモートマシン)で、コマンドを(rootとして)実行します。

dpkg-reconfigure locales

最初の画面で、目的のロケールを選択します。その後、デフォルトのロケールを選択するよう求められます。 「なし」を選択します(参照: https://wiki.debian.org/Locale#Standard )。

2)クライアントから環境変数を受け入れるようにsshサービス(/etc/ssh/sshd_config)を構成します:行のコメントを外します:

AcceptEnv LANG LC_*

Sshサーバーを再起動し、ログオフして再度ログインし、localeコマンドを実行します。ローカルマシンのロケールと一致する必要があります

4
Girol