サイレントインストール用にDebian ISOにパッケージを追加する方法

サイレントインストール用にDebian ISOにパッケージを追加する方法

私はここのマニュアルに従っています:Debian インストーラ/修正/CD

まず、mytest.debというdebファイルを作成しました。次にbsdtarDebian ISO(debian-10.1.0-amd64-netinst.iso)をBuster-isoというディレクトリに置き、すべてのファイルを書き込み可能に設定し、mytest.debファイルを次のパスに入れますpool/main/m/

その後、次の設定ファイルを作成しましたapt-ftparchive

# config-deb

Dir {
    ArchiveDir "buster-iso";
};

# Sets the top of the .deb directory tree.
TreeDefault {
   Directory "pool/";
};

# The location for a Packages file.                
BinDirectory "pool/main" {
   Packages "dists/buster/main/binary-amd64/Packages";
};

# We are only interested in .deb files (.udeb for udeb files).                                
Default {
   Packages {
       Extensions ".deb";
    };
};

を実行し、マニュアルに示されているapt-ftparchive generate config-debように、次の3つのコマンドを実行します(名前が私が使用したファイル名と一致するようにわずかに変更します)。また、mytest.debがdists/buster/main/binary-amd64/Packagesおよびに存在することを確認しましたmd5sum.txt

その後、ディレクトリ全体を再び新しいISOファイルに変換しました(またマニュアルに従って)。さらに、新しく作成されたISOのサイズは、元のISOと比較して正しく増加します。しかし、このDebianをインストールしたとき、私のdebパッケージは期待どおりにインストールされませんでした。

私のシステムでdebファイルのインストール(使用)をテストしましたが、dpkg -i mytest.deb正常に動作します。この deb ファイルの階層は非常に単純であり、usr/localファイルmytest.tar.gzはこのパスにあります。/usr/local/mytest.tar.gz新しいDebian ISOをインストールするときは、このファイルがすでに存在することを望みます。しかし、そこにはありません。

たぶん間違ったパスが使用されており、インストール中に他のプログラムがそのパスを上書きした可能性があります。私がマニュアルに何かを間違って理解したのではないでしょうか?どんな助けでも大変感謝します。

ベストアンサー1

ISOにパッケージを正常に追加しました。これがlinkディレクティブのすべてです。ご覧のとおり説明の追加その結果、カスタムパッケージを手動でインストールできますが、インストールイメージには自動的にインストールされません。

パッケージを自動的にインストールするには、追加の変更が必要です。インストーラにパラメータを追加することも可能です(確認する必要があります)。他の可能性としては、タスク選択(tasksel)にパッケージを追加するか、「必須」に設定することがあります。

おすすめ記事