.deb
パッケージがシステムとどのように対話するかを理解するために、Debian jessie stableを実行しています。packge_name.deb
コマンドを使用せずに抽出してインストールする正しい方法は何ですかdpkg
?
答え1
ファイルがアーカイブなので、.deb
このar
コマンドを使用してファイルを解凍できます。.deb
ar
ar x file.deb
プロセスが開始されます。これにより、3つのファイルが提供されます。
- Debian バイナリ
- control.tar [または類似]
- data.tar [または類似]
最後の2つは制御メタデータを含み、それには実際のパッケージファイルを含み、tarアーカイブ(などを使用して圧縮できますgzip
)bzip
です。
最後の2つのファイルから制御データと実際のコンテンツを抽出し、理論的にはファイルを正しい場所にコピーできますが、単純ではありません。
データアーカイブにはインストールスクリプトが含まれているため、これがシステムと対話する方法を見つけるときに良い開始点になります。
.deb
を使用せずにファイルをインストールする正しい方法はないと思いますdpkg
。
答え2
このコマンドを使用してファイル自体をインストールできます。ar
代わりに必要になる場合がありますtar
。
tar xOf my_package.deb data.tar.gz | sudo tar xzpomv
これは、パッケージにロジックが必要ない場合(通常は/opt/の下にすべてをインストールするスタンドアロンアプリケーション)で動作します。
control
それ以外の場合は、メタデータ(ファイル)とスクリプト(利用可能な場合)も表示できます。
tar xOf my_package.deb control.tar.gz | tar xv