次のフォルダ構造を持つフォルダがあります。
total 8
drwxr-xr-x 2 pi pi 4096 mar 21 19:08 DEBIAN
drwxr-xr-x 6 pi pi 4096 mar 21 18:02 usr
内部DEBIAN
フォルダ:
-rw-r--r-- 1 pi pi 150 mar 21 18:05 changelog
-rw-r--r-- 1 pi pi 2 mar 21 18:05 compat
-rw-r--r-- 1 pi pi 516 mar 21 18:05 control
-rw-r--r-- 1 pi pi 13774 mar 21 18:05 copyright
-rwxr-xr-x 1 pi pi 1396 mar 21 20:45 postinst
-rwxr-xr-x 1 pi pi 919 mar 21 19:08 postrm
-rwxr-xr-x 1 pi pi 679 mar 21 19:08 preinst
-rwxr-xr-x 1 pi pi 866 mar 21 19:08 prerm
ファイルの内容はpostinst
次のとおりです。
#!/bin/sh
# postinst script for cpython
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
configure)
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
#echo "postinst called with unknown argument \`$1'" >&2
#exit 1
;;
esac
ln -sf XXX YYY
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
exit 0
、、、dh_installdeb
コマンドを使用してスクリプトをフォルダにコピーします。 (このファイルはコマンドで生成されます。)package.postinst
package.postrm
package.preinst
package.prerm
dh_make -f
fakeroot dpkg-deb --build python3.6
createを実行すると.deb
生成されますが、インストールしよ.deb
うとすると実行されませんpostinst
(スクリプトに表示されるシンボリックリンクは生成されません)。
1つの奇妙なことは、そのDEBIAN
フォルダ内にスクリプトに次のものが含まれていることです。
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
生成されたコンテンツを抽出し.deb
てファイルをスキャンすると、postinst
同じメッセージが表示されます。
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
この文章を見ると、私が何かを忘れてしまったり、何か間違ったような感じがする。
postinst
sudo dpkg -i xxx.deb
コマンド後にスクリプトが実行されないのはなぜですか?