coreutils用のカスタムsysconfdir

coreutils用のカスタムsysconfdir

--sysconfdir=/test/etcdefaultの代わりにcoreutilsをコンパイルして/etcに移動しましたが、/etc/groupchgrp/test/etc/groupが失敗しました。

chgrp: 無効なグループ: $groupname。

この問題をどのように解決し、chgrpを新しいsysconfdirで動作させることができますか?

答え1

coreutils別の場所で別のファイルを見つけるために再コンパイルしても、ほとんど/etc/groupのシステムがまだ標準の場所でこれらのファイルを見つけることを期待しているという事実は変わりません。あなたの場合、libcシステムデータベース(例えばnss_files)でグループやその他のオブジェクトを見つける役割を担う部分が、標準の場所でグループを探していることを確認しました。

他の非常に基本的な構成ファイルがたくさんある場所を変更するには、再/etc/groupコンパイルする必要があり、libc6おそらくたくさん他のもの。システムの多くの部分(初期化スクリプトが最初に浮かび上がる)がハードコーディングされていて、これらの部分/etcのどれもテストされていないことがほぼ確実であるため、この野心的な作業に成功してもバグを見つけることができます。

関連情報