端末が起動しないときに問題が発生しました。ロケールがサポートされていない場合は、関連する質問を見てみました。更新して再生してみましたが、役に立ちません。ついに次のエラーメッセージが見つかりました/var/log/syslog
Dec 31 00:45:43 kes-X751SA console-kit-daemon[2215]: (process:3545): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
Dec 31 00:45:48 kes-X751SA org.gnome.Terminal[2464]: Locale not supported.
Dec 31 00:45:57 kes-X751SA console-kit-daemon[2215]: (process:3562): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
ここでは明確ではありません。私のロケールが間違っている場合、どのロケールがサポートされていませんか?どのロケールがサポートされているかを確認するには?サポートされているロケールをどのように適用しますか?
ベストアンサー1
トラブルシューティングセクションから直接スナックガイド、「GNOME端末が起動を拒否します」というタイトルの下:
- GNOMEターミナルサーバーは環境変数にUTF-8ロケールを設定する必要があり
LANG
、そうでない場合は起動を拒否します。ただロケールにすることはできませんC
。
GNOMEターミナルサーバーは、org.gnome.Terminal
ユーザー固有のサービスマネージャの下でDBUSエージェントを介して間接的に開始されるサービスです。gnome-terminal-server
実際に端末エミュレータを提供するwhichというプログラムを実行します。そうではないgnome-terminal
顧客直接実行するコマンドは、そのサーバー用の制御プログラムです。
- ユーザー固有/セッション別のDBUSエージェントがサーバー・プロセスを直接作成する場合(古いが使用されなくなった方法)、ユーザー別/セッション別のDBUSエージェント自体がUTF-8 8ロケールで実行されていることを確認する必要があります。
DBUSエージェントを呼び出す方法はさまざまであるため、これを行う正確な方法はこの回答の範囲外です。
- DBUSプロキシが単に適切なユーザー固有のサービス管理者にデータを渡す場合(これは新しい推奨方法です)、ユーザー固有のサービスのサービス定義に
org.gnome.Terminal
UTF-8ロケールセットがあることを確認する必要があります。これを行う方法は、所有しているユーザー固有のサービス管理者によって異なります。 noshサービス管理の場合、たとえば、
$HOME/.config/service-bundles/services/org.gnome.Terminal/service/env
次のコマンドを使用してサービス環境ディレクトリ()を調整しますset-service-env
。システム制御 --user set-service-env org.gnome.Terminal LANG en_GB.UTF-8
Environment=
別の例は、ユーザー固有のサービス管理にsystemdを使用する場合、systemdの人々がユーザー固有のサービスについて文書化しない「挿入」メカニズムを使用して設定を注入する必要があることです。/lib/systemd/user/gnome-terminal-server.service
もちろん、ロケールが実際にシステムにロケール定義として存在することを確認したい場合があります。そのようなUTF-8ロケール定義がない場合、UTF-8ロケールを調整しても利点はありません。
追加読書
- ジョナサンデボインポラード(2017)。 「問題解決」。 スナックガイド。ソフトウェア。
- ジョナサンデボインポラード(2017)。 「ユーザー固有のユーザーサービス」。 スナックガイド。ソフトウェア。
- ジョナサンデボインポラード(2017)。 「ユーザー固有のデスクトップバスユーザーサービスを開始するために必要です。」 スナックガイド。ソフトウェア。
- フェリックスC.ステグマン(2014-04-29)。gnome-terminal: utf-8 以外のロケールでは開始されません。 Debianのバグ#746415。
- gnome-terminalをrootとして起動しようとすると、「エージェントエラー...」が発生する
- Mate Terminalの複数のインスタンスが同じPIDを持つのはなぜですか?
- PIDでgeditプロセスを終了できません。
- デスクトップセッション(GNOMEなど)でシステムユーザーマネージャを使用するのはなぜですか?
- 」終了ステータス8」。 GNOME端末FAQ。ドワーフ。