ホームページ  >  記事  >  コンピューターのチュートリアル  >  Linuxでdebパッケージを作るのはとても簡単:Ubuntuのdebインストールパッケージファイルの内部構成と使用原理の分析

Linuxでdebパッケージを作るのはとても簡単:Ubuntuのdebインストールパッケージファイルの内部構成と使用原理の分析

WBOY
WBOY転載
2024-02-19 13:21:15758ブラウズ

Linuxでdebパッケージを作るのはとても簡単:Ubuntuのdebインストールパッケージファイルの内部構成と使用原理の分析

Deb ファイルは、Linux Debian とその派生配布プログラムの配布とインストールに使用されるアーカイブ ファイルで、通常はアプリケーション データが含まれています。これらは、依存関係の処理、デスクトップ統合、インストール前およびインストール後のスクリプトの実行に役立ちます。 Deb 形式に似たもう 1 つのパッケージ形式は、Fedora シリーズのディストリビューションで一般的に使用される rpm ファイルです。

この記事では、例を使用して簡単な deb パッケージを作成する方法を示し、deb パッケージ内の各ファイルの役割、インストール後にそれを有効にして維持する方法について説明します。

deb パッケージの分析

deb は、アプリケーションおよびその他のユーティリティ ファイルを含む一般的な Unix ar アーカイブ形式です。主要なコンポーネントは制御ファイル (コントロール) で、これには deb パッケージとインストーラーに関する重要な情報が含まれています。

  • 内部的には、deb パッケージには、/usr、/usr/bin、/opt など、Linux の典型的なファイル システム ディレクトリ構造をシミュレートするファイルのコレクションが含まれています。インストール中に、これらのディレクトリのいずれかに配置されたファイルは、実際のファイル システムの同じ場所にコピーされます。たとえば、パッケージ内の /usr/bin/binaryfile などのバイナリ ファイルは、システムの /usr/bin/binaryfile にインストールされます。
  • 外部的には、すべての deb パッケージ ファイルは特定の命名規則に従います:
リーリー

64 ビット プロセッサ (AMD64) 用に構築された mynano バージョン 1.0 という名前のプログラムを公開するとします。 deb ファイル名は mynano_1.0-0_amd64.deb

のようなものになります。

deb パッケージの作成

パッケージを生成する準備ができました。システムに dpkg-deb ツール (dpkg パッケージで提供) がインストールされていることを確認してください。最終的な deb パッケージは、後で dpkg-deb を使用して生成されます。

(1) パッケージ ファイルを保存するための作業ディレクトリを作成し、前述の命名規則に従って名前を付けます。

リーリー

(2) 内部構造を作成し、ターゲット システム上のインストールする場所にプログラム ファイルを配置します。実行可能ファイルを /usr/bin/

にインストールするとします。

最初にディレクトリを作成します:

リーリー

mkdir コマンドの -p フラグは、ネストされたディレクトリを作成します。ディレクトリが存在しない場合は、自動的に作成されます。次に、実行可能ファイルをそこにコピーします:

リーリー

(3) ファイル コントロールを作成します。このファイルは DEBIAN ディレクトリにあります (ディレクトリ名は大文字であることに注意してください)

最初にフォルダーを作成します: DEBIAN

リーリー

次に、空のファイルを作成します: control

リーリー

制御ファイルの内容を入力します:

リーリー ###で:###

パッケージ – プログラム名;
  • バージョン – プログラムのバージョン;
  • アーキテクチャ - ターゲット アーキテクチャ;
  • Maintainer – パッケージのメンテナンス責任者の名前と電子メール アドレス;
  • 説明 – プログラムの簡単な説明。
  • 依存 - このパッケージが依存する他のパッケージ。
  • ファイルには、deb パッケージの依存関係リストを指定する depends など、他の便利なフィールドが含まれる場合があります。その後、apt コマンドを使用して deb パッケージをインストールすると、nano>=5.0 バージョンのソフトウェア パッケージが最初にインストールされ、次に mynano がインストールされます。

(5) 最後のステップ: deb パッケージをビルドし、次のように dpkg-deb を呼び出します。 リーリー

この例では:

リーリー

ここで –root-owner-group フラグを指定すると、すべての deb パッケージのコンテンツが root ユーザーによって所有されます。これが標準的な方法です。このようなフラグがない場合、すべてのファイルとフォルダーの所有者は現在のユーザーになりますが、deb パッケージがインストールされるシステムに必ずしも同じ名前のアカウントがあるとは限らないことを考慮して、-root-owner- を使用します。グループはより合理的です。

上記のコマンドは、作業ディレクトリの隣に .deb ファイルを生成するか、パッケージにエラーがあるか欠落している場合はエラーを出力します。操作が成功すると、生成された deb パッケージを他の人に配布できます。

(6) deb パッケージを使用してシステムにインストールします。apt メソッドで作成した deb パッケージをインストールすると、依存関係が自動的にインストールされることがわかります: nano software package

リーリー

(7) [オプション] インストールされているソフトウェア mynano をアンインストールします:

リーリー

(8) [オプション] mynano_0.1-1_amd64.deb の依存関係を確認します: dpkg -I ./mynano*deb

上記の deb パッケージの作成方法で改善できる点:

以上がLinuxでdebパッケージを作るのはとても簡単:Ubuntuのdebインストールパッケージファイルの内部構成と使用原理の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はmryunwei.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。