NI Route CoordinatorがSegfaultエラーで停止し、再起動できない

更新しました Aug 20, 2025

使用製品

オペレーティング・システム

  • Linux

問題

PC でdmesg -Tコマンドを実行すると、NI Route Coordinator (niroco) サービスが以下のエラーで停止し、再起動できません。

niroco[4357]: 0 ip 00007fab6804d84c sp 00007ffe019c4600 エラー 4 in libc.so.6[7fab68028000+175000] コード: 4c 8d 25 77 e2 1a 00 55 48 89 fd 4c 89 e7 でのセグメンテーション違反53 31 デシベル e8 28 84 05 00 eb 0a 66 0f 1f 44 00 00 48 83 c3 01 89 df 48 83 fb 06 74 f4 <48> 8b 74 dd 00 83 7e 30 ff 74 05 e8 54 e5 ff ff 48 83 fb 0c 75 de

この問題の原因は何ですか。また、どうすれば解決できますか。

解決策

このエラーは、 newlocale() が「_locale_ は有効なロケールを参照する文字列ポインターではありません」というエラーを出しているために発生します。つまり、locale() はシステムにインストールされていません。 newlocale() 関数は、新しいロケール オブジェクトを作成するか、既存のオブジェクトを変更し、関数の結果として新しいオブジェクトまたは変更されたオブジェクトへのリファレンスを返します。 newlocale() がインストールされていない場合、プログラムによってこのエラーが発生する可能性があります。

 

Ubuntuでは、rootとして次のコマンドを実行してlocale()を再インストールすると、Segfaultエラーが解消されます。
     sudo apt install glibc-langpack-en 

Fedora では、root として次のコマンドを実行して locale() を再インストールすると、Segfault エラーが解消されます。

   dnf install glibc-langpack-en

 

    追加情報

    コマンドが「パッケージが見つかりません」というメッセージを返す場合、そのパッケージはまだインストールされていません。次のコマンドを実行して、ロケールがインストールされているかどうかを確認します。

    • localedef --list-archive |grep en_US
    • locale -a | grep en_US

    以下は、コマンドの実行で、ロケールをインストールするために使用できる2つの回避策を紹介します。

     

    回避策 1のコマンド

    sudo apt-get update
    sudo apt-get install -y locales locales-all
    export LANGUAGE=en_US.UTF-8
    export LC_ALL=en_US.UTF-8
    export LANG=en_US.UTF-8
    export LC_TYPE=en_US.UTF-8
    sudo locale-gen
    sudo dpkg-reconfigure locales


    回避策2のコマンド

    sudo locale-gen en_US
    sudo locale-gen en_US.UTF-8
    sudo update-locale