管理者スクリプトを含む再配置可能な.debパッケージを作成する方法は?

管理者スクリプトを含む再配置可能な.debパッケージを作成する方法は?

シンボリックリンクを生成するためのpostinstスクリプトを含むDebianパッケージがあります。.debパッケージをインストールしようとすると--root(パッケージがインストールされている場所を変更したいので)、次のエラーが発生します。

dpkg (subprocess): unable to execute installed post-installation script: No such file or directory
subprocess installed post-installation script returned error exit status 2

dpkg.NETでpostinstスクリプトを見つけようとしています/var/lib/dpkg/info。私が理解できないのは、dpkgマニュアルページによると using オプションも--root。それでは、なぜpostinstスクリプトを見つけようとしているのでしょうか?admindirnewdir/var/lib/dpkg/var/lib/dpkg/info/

-i --root=newdirこの管理者スクリプトなしで別のパッケージを作成し、同じオプションを使用してインストールしてみましたが、エラーは発生しませんでした。

これを行う方法を教えてください。

ベストアンサー1

dpkgpostinstスクリプトが実際に見つかりました/your/root/var/lib/dpkg/info。実行を試みます。問題は次のとおりです。ローダーがありませんdpkgpostinstスクリプトが見つかりましたが、スクリプトのインタプリタが存在しないために実行しようとすると、「ファイルやディレクトリがありません」というエラーが表示されます(たとえば、Pythonスクリプトでインストールされてpython-minimalいません)。 instdirの代替を使用するには、インタプリタがinstdirの下にある必要があります(dpkgはパッケージスクリプトを実行する前にinstdirにルートを変更します)。

タグ付きパッケージがインタプリタを提供していない場合は、パッケージがインタプリタをEssential提供するパッケージに依存していることを確認してください。

おすすめ記事