RPMを構築するプロセスはなぜそんなに孤立しているのですか?

RPMを構築するプロセスはなぜそんなに孤立しているのですか?

私のパッケージのRPMを生成する方法を学んでいます。通常、自分のアカウントにログインしている間はすべての操作を実行できますが、RPMの作成手順には常に別のアカウントを使用するように指示されているようです。

私がフォローしたチュートリアルでは、rpm-buildそしてrpmdevtools。たとえばrpmdev-setuptreerpmbuild/私のホームディレクトリ(私が期待している現在のディレクトリではない)にディレクトリを作成します。手順では、別々のbuildアカウントを作成することを提案しました。これは過度に見え、この特定のアカウントと私が開発しているアカウント間のファイルを管理するのが難しくなります。

公式Fedora ドキュメント使用fedora-packagerしてfedora-reviewパッケージ化してから、自分自身を追加してください。笑いグループ。もう一度、次のように提案します。

別のユーザーを作成してRPM開発に使用することもできます。ユーザーが次のものであることを確認します。笑いグループ化してfedora-packager-setupコマンドを入力します。

どちらのガイドラインも、別々のアカウントでRPMを構築することをお勧めします。

なぜこれですか?私の無駄な反応は、便宜のために何とかこの問題を解決しようとすることです。一般アカウントでRPMを作成するとどのような問題が発生する可能性がありますか?

ベストアンサー1

パッケージングの一般的な原則は、パッケージング構成で宣言されていないシステムについて何も仮定してはいけません。これには、ビルドに必要なパッケージ、実行に必要なパッケージ、必要なアカウント(ユーザーまたはグループ)、必要な権限など、多くのものが含まれます。そうしないと、作成した仕様ファイルがSnowflakeシステムに構築されていますが、クリーンな環境では構築されない可能性があります。ビルドしてもインストールできない場合があります。インストールしても期待どおりに動作しない場合があります。

このように、ディストリビューションでは、管理者がパッケージング構成のみをアップロードすると、残りの部分はビルドシステムがすべて実行する自動ビルドシステムを使用できます。もちろん、このように構築されたパッケージはより安定しています。必要なものはすべてパッケージに割り当てられているため、インストールしてもシステムが損傷する可能性が低くなります。

おすすめ記事