正しいdebian postinstスクリプトとpostrmスクリプトを作成する方法は?

正しいdebian postinstスクリプトとpostrmスクリプトを作成する方法は?

このスクリプトを作成してみたところ、インストールはうまくいきましたが、一度アプリケーションのバージョンがクラッシュしてapx v2.0にアップグレードしようとすると、すべてがうまくいきました。

これは私のpostinstスクリプトです。

#!/bin/sh

set -e 
chmod 755 /usr/bin/apx
chmod 755 /usr/lib/apx/apx.py
chmod -R 755 /usr/lib/apx/data/binaries

exit 0

これは私のポストスクリプトです。

#!/bin/sh

set -e

U_HOME=$(getent passwd $SUDO_USER | cut -d: -f6)
LOG="/var/log/apx"
UHOME="$U_HOME/.apx"

if [ -d $LOG ]; then
     rm -rf $LOG
fi

if [ -d $UHOME ]; then
     rm -rf $UHOME
fi

rm -rf /usr/lib/apx

exit 0

ベストアンサー1

削除する必要があります。

ファイル権限のみを設定postinstします。これは、インストール後のスクリプトではなくパッケージの内容で設定する必要があります。

postrmユーザーのホームディレクトリにあるログファイルと削除ファイルを削除します(削除が使用されていると仮定)sudo。どちらも明らかに許可されておらず、ホームディレクトリは管理者スクリプトに制限がなく、削除時にログを残す必要があります。削除されました)。あなたのスクリプトは別の禁忌も削除します/usr/lib/apx。つまり、dpkg問題を処理する必要があります。

強くぜひお読みください。Debian 新しいメンテナンスガイド

おすすめ記事