質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

2回答

1496閲覧

Almalinux9.4で日本語環境にする方法が解りません。

Hal.

総合スコア9

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

2クリップ

投稿2024/09/19 07:24

実現したいこと

Almalinux9.4をインストールしました。
CUIログイン後のコンソールでのコマンド類(date等)の結果を日本語にしたいです。
またstartxでGNOMEデスクトップを実行した際も、英語環境になっているのですが日本語環境にしたいです。

発生している問題・分からないこと

CUIログイン後のコンソールでのコマンド(date等)が日本語にならず英語になっています。
またstartxでGNOMEデスクトップを実行した際も、英語環境になっています。

該当のソースコード

特になし

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

https://www.server-world.info/query?os=AlmaLinux_9&p=japanese
https://qiita.com/RK_Nakagawa/items/b1988eb2557f5e650f90
https://centossrv.com/almalinux/almalinux9-init.shtml
などを参考に実行してみましたが英語環境から抜け出せません。
何か勘違いしていることや不足していることなどがあるのでしょうか?
ご教示戴きたくお願い致します。

補足

特になし

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TakaiY

2024/09/19 07:34

調べたこと詳細に出てくるサイトの通りにやればできるはずなのですが、以下の2つのコマンド localectl cat /etc/locale.conf を打った結果を質問に追記いただけますか。
Hal.

2024/09/19 07:58

localectl の内容です --- System Locale: LANG=ja_JP.UTF-8 VC Keymap: jp106 X11 Layout: jp X11 Model: jp106 X11 Options: terminate:ctrl_alt_bksp --- cat /etc/locale.confの結果です --- LANG=ja_JP.UTF-8 ---
TakaiY

2024/09/19 08:36

設定は大丈夫そうですね。 それで日本語になると思うんですがね。 LANG=ja_JP.UTF-8 date のように直接LANGを指定してdateコマンドを打つとどのようになりますか? dateの前はスペースだけです。
melian

2024/09/19 09:18

man 7 locale によれば、locale に関して参照される環境変数の優先順位は、LC_ALL => LC_* => LANG となっています。(それぞれの環境変数が設定されている場合) > If the second argument to setlocale(3) is an empty string, "", for the default locale, it is determined using the following steps: > (1) If there is a non-null environment variable LC_ALL, the value of LC_ALL is used. > (2) If an environment variable with the same name as one of the categories above exists and is non-null, its value is used for that category. > (3) If there is a non-null environment variable LANG, the value of LANG is used. date コマンドの場合は LC_ALL, LC_TIME, LANG になります。これらの環境変数の設定値は locale コマンドで確認することができます。 $ locale LANG=ja_JP.UTF-8 LANGUAGE= LC_CTYPE="ja_JP.UTF-8" LC_NUMERIC="ja_JP.UTF-8" LC_TIME="ja_JP.UTF-8" LC_COLLATE="ja_JP.UTF-8" LC_MONETARY="ja_JP.UTF-8" LC_MESSAGES=ja_JP.UTF-8 LC_PAPER="ja_JP.UTF-8" LC_NAME="ja_JP.UTF-8" LC_ADDRESS="ja_JP.UTF-8" LC_TELEPHONE="ja_JP.UTF-8" LC_MEASUREMENT="ja_JP.UTF-8" LC_IDENTIFICATION="ja_JP.UTF-8" LC_ALL=
Hal.

2024/09/19 14:10

コメントありがとうございます。 LANG=ja_JP.UTF-8 date のように直接LANGを指定してdateコマンドを打つとどのようになりますか? 試した結果、文字化け(2024■ 9■ 19■ ■■■ 23:00:30 JST)で表示されました。
Hal.

2024/09/19 14:15

>これらの環境変数の設定値は locale コマンドで確認することができます。 localeコマンドを実行した結果です --- LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.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= --- 私はどこでハマっているのでしょうか(T_T)
melian

2024/09/19 16:55 編集

※ 削除
TakaiY

2024/09/20 01:53 編集

> CUIログイン後のコンソール あああ、ここを読み誤ってました。 回答ついているとおりです。 コンソールは通常作業をすべき場所ではありませんので、可能ではありますが日本語にしないほうがいいでしょう。
TakaiY

2024/09/20 09:30

これはコンソールではなく、ターミナルエミュレータで接続した場合の設定です。 GUIでのターミナルエミュレータとか、リモートからTeratermなどで接続した場合のものです。
Hal.

2024/09/20 09:40

>GUIでのターミナルエミュレータとか、リモートからTeratermなどで接続した場合のものです。 CUIコンソールで日本語環境にする事は不可能なのでしょうか?
TakaiY

2024/09/20 10:57

はい。 それがmelianさんの回答の方法です。 コンソールもソフトウェアで実現されていて、それが日本語に対応していないのが問題なので、日本語対応のものを入れる必要があります。 Almalinuxの標準リポジトリに入っていないようですが、今の時代ではそういう需要がないのでしょう。ということは自力でなんとかする必要があります。 ・melianさんの提案のように、使えそうなパッケージを探してきて入れてみる ・自分でソースからコンパイルする ・他のソフトを探してみる(->これもfbtermと同じ流れ) そもそも、コンソールで日本語を使いたい理由は何でしょう?
Hal.

2024/09/20 11:24 編集

>そもそも、コンソールで日本語を使いたい理由は何でしょう? dateとかls -laとかの「実行結果が日本語で出力されてほしい」という私的な感情論です(^^;) otnさんの回答のGNOME環境への「LANG=ja_JP.UTF-8 startx」は日本語環境になりました。 logoutした後にstartxを実行しても日本語環境になってましたが、rebootして再起動した後に、 startxをすると英語環境になってしまいます。 以前CentOS7.9を使っていた際にはstartx後には日本語環境になっていたのですが、これをAlmaLinuxで実現することは出来ないでしょうか?
TakaiY

2024/09/20 11:38

そもそも、GUIをコンソールからstartxで起動しているのですか? であれば、環境変数は引き継がれるようなので、.bashrcにでもaliasを入れて起動するのが手軽そうですね。
Hal.

2024/09/20 11:47

>そもそも、GUIをコンソールからstartxで起動しているのですか? はい、CUIコンソールからstartxでの起動です。 >であれば、環境変数は引き継がれるようなので、.bashrcにでもaliasを入れて起動するのが手軽そうですね。 具体的にどのようにすれば良いのかご教示戴けますでしょうか?
TakaiY

2024/09/20 11:52

.bashrc に以下のようなエントリを追加します。 alias startxj='LANG=ja_JP.UTF-8 startx' これで.bashrcを再読み込みするとか、ログインしなおすなどすると反映されるので、startxjで起動するはずです。 startxを上書きしちゃってもいいでしょう。.bashrcを読むようになっていない可能性もあるので、そこはチェックしてください。
Hal.

2024/09/20 12:11

コメントありがとうございます。 >.bashrc に以下のようなエントリを追加します。 を試したところ問題が解決しました! ベストアンサーに選びたいので同じ内容を回答欄に投稿いただけますでしょうか?
TakaiY

2024/09/20 12:13

元はotnさんの回答ですので、BAにするのであれば、そちらでお願いします。 また、コンソールの方のmelianさんの回答について、結局どうしたのか追記されるといいと思います。
Hal.

2024/09/20 12:33

了解しました、コメントありがとうございました。
guest

回答2

0

試した結果、文字化け(2024■ 9■ 19■ ■■■ 23:00:30 JST)で表示されました。

これは、表示としては日本語を出したけど、日本語フォントがないのでしょう。
コンソールから実行したのでは?コンソールでは普通には日本語は表示できません。

localeコマンドを実行した結果です

これもおそらくコンソールですよね?コンソールではASCII文字しか表示できないので、使っている端末がコンソールと判断されると、/etc/locale.confの内容にに関わらず、locale系の環境変数の言語部分は en_US になります。
(/etcの下のシェルの初期設定ファイルでそういう判断と処理をしているはず。コンソールでなければ/etc/locale.confの指定が活きるはず)

GUI画面でメニューから端末を開くか、他のOSから端末ソフトでsshでログインして同じコマンドを実行すれば日本語で表示されるはずです。どちらかの端末で、localeLANG=ja_JP.UTF-8 dateをやってみましょう。

コンソールからstartxで日本語のGUIを起動するなら、LANG=ja_JP.UTF-8 startxですね。あるいは、CUIでのOS起動でなくGUIでのOS起動に変更すれば日本語のGUIになるかと思います(長らくGUIは使ってないので昔の記憶ですが)。

投稿2024/09/19 15:13

otn

総合スコア86293

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hal.

2024/09/20 11:25

otnさんの回答のGNOME環境への「LANG=ja_JP.UTF-8 startx」は日本語環境になりました。 logoutした後にstartxを実行しても日本語環境になってましたが、rebootして再起動した後に、 startxをすると英語環境になってしまいます。 以前CentOS7.9を使っていた際にはstartx後には日本語環境になっていたのですが、これをAlmaLinuxで実現することは出来ないでしょうか?
Hal.

2024/09/20 12:28

回答ありがとうございました。 TakaiYさんのコメントで・・・ >.bashrc に以下のようなエントリを追加します。 ・・・によって問題が解決しました。 ベストアンサーに選ばせていただきました。
otn

2024/09/20 15:36 編集

> によるとCUIコンソールでも日本語環境に出来るように読み取れます。 お書きのページにはコンソールの日本語化に関する情報は書いてないようです。 もしかして「CUI」と「コンソール」が同じ意味だと思っていますか? 「コンソール」というのは、PC本体にRGBやHDMIケーブルで接続されたモニターや、USBケーブルなどで接続されたキーボードの事です。電源入れると、OS起動メッセージがぞろぞろと出てくる画面で、GUIに切り替わってない画面のことです。 物理PCじゃなくて仮想マシンだとケーブル接続のモニターやキーボードは無いですが、その場合でも、OS起動メッセージがぞろぞろと出てくる画面のことです。その画面がGUIに切り替わったあともコンソールと呼ぶかどうかは人によるかも。 CUI(or コマンドライン or 他の類似表現)という場合は、上述のコンソール以外にも、回答に書いた、 > GUI画面でメニューから端末を開くか、他のOSから端末ソフトでsshでログインして などコンソール以外の端末画面も含みます。 これらコンソール以外の日本語表示可能な端末であれば、これも回答に書いたことですが、/etc/locale.conf の設定が活きるので、ホームディレクトリの下の個人用シェル設定ファイルで環境変数をen_US等に上書きしていない限り、日本語になるはずです。 コンソールでも、色々作業すれば日本語表示は可能で、過去に一度やってみたことがありますが、 その設定の面倒さに対して、メリットがほぼゼロ(コンソールで複雑な作業はしないので英語モードで十分)なので、それ以降やってません。 コンソール作業はOSインストール直後の各種設定くらいで、それ以降は別OSから端末ソフトでsshログインして作業。GUIを使う人ならGUIから端末を起動ですかね。
otn

2024/09/20 15:11 編集

> otnさんの回答のGNOME環境への「LANG=ja_JP.UTF-8 startx」は日本語環境になりました。 logoutした後にstartxを実行しても日本語環境になってましたが、rebootして再起動した後に、 startxをすると英語環境になってしまいます。 これは言葉が省略されすぎて状況が正確に分かりません。 > logoutした後にstartxを実行しても logoutするとコマンドは打てませんが、もしかして、GUIを終了してもとのコンソールに戻ったあとで、 今度は LANG=ja_JP.UTF-8 startx でなく、startx だけ打ったと言うことでしょうか? それで今度は日本語のGUIになったというのは考えにくいのですが、もしかして、 LANG=ja_JP.UTF-8 startx を1行で実行したのでなく、 LANG=ja_JP.UTF-8 startx と、2回に分けてEnter押してませんか?それは全然意味が違います。 LANG=ja_JP.UTF-8 startx は、「今回の startx コマンドに対してだけ環境変数を変更して実行」 LANG=ja_JP.UTF-8 は、「このコマンドを実行したシェルが終了するか、別の値を LANG=xxxx するまでは環境変数変更が継続する」です。なので、そのシェルが動いたままで、何度 startx してもLANGはja_JP.UTF-8のままなので、日本語GUIです。 OSを再起動すると、シェルが終了するので、そこで変更は消えます。 再起動後、いきなり startx すると、LANGはen_US.UTF-8なので英語GUIです。
otn

2024/09/20 15:31

> 以前CentOS7.9を使っていた際にはstartx後には日本語環境になっていたのですが、これをAlmaLinuxで実現することは出来ないでしょうか? 何かの設定をしないと、コンソールでstartxで日本語GUIが起動するとは考えにくいです。何らかの設定をしたのでしょう。 案1:TakaiYさんコメントのように、alias startx="~~" と定義するなど。他のコマンドは英語の表示となる 案3:OS起動するとGUIモードで起動するようにする。コマンドライン操作はGUIから端末起動で 案2:シェル設定ファイルに LANG=ja_JP.UTF-8 を書く。この場合、コマンド全部に効くので コマンドの表示結果の日本語文字は化けするため、コマンドライン作業はコンソールでは行わずに、別OSから端末ソフトでsshログインして行う
guest

0

※ 削除​​​​​​​​​​​

投稿2024/09/19 17:41

編集2024/09/20 12:35
melian

総合スコア21118

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hal.

2024/09/20 09:22

回答ありがとうございます。試してみましたが解決できませんでした。 #dnf install fbterm でfbtermが見つかりませんでした。
melian

2024/09/20 10:03

少し調べたところ、AlmaLinux9 では公式のリポジトリに fbterm のバイナリパッケージが存在していない様です。Fedora40 向けのリポジトリには fbterm の RPM ファイルがあるので、そちらがインストールできるかもしれません。(インストールできたとしても共有ライブラリの関係で動作するのかどうかは不明です) fbterm-1.7-30.fc40.x86_64 RPM https://rpmfind.net/linux/RPM/fedora/40/x86_64/f/fbterm-1.7-30.fc40.x86_64.html もしくはソースコードをダウンロードしてコンパイル・ビルドする方法も考えられます。
Hal.

2024/09/20 11:23

>ソースコードをダウンロードしてコンパイル・ビルドする方法も考えられます。 知見が低く具体的な方法が解りません。 ご教示戴く事は可能でしょうか?
Hal.

2024/09/20 12:03

>sudo dnf install fbterm-1.7-30.fc40.x86_64.rpm ここで何らかのエラーが発生してインストールに失敗する場合は、あきらめてください。 Problem: conflicting requests... といったエラーとなってしまいました(T_T)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問