パッケージのインストール中にフォルダの権限を変更する方法

パッケージのインストール中にフォルダの権限を変更する方法

カスタムアプリケーションをインストールするためのdebパッケージを作成しています。インストール中に警告が表示されないように、すべてのファイル/フォルダの所有権をrootに変更し、Ubuntuがファイル/フォルダの所有権をパッケージをインストールしたユーザーに変更したため、Ubuntuですべてがスムーズに機能しました。

しかし、Debianにインストールすると、ルートは依然として所有者です。アプリケーションはフォルダを使用してデータを書き込むのに問題があります。標準ユーザーとして実行されているアプリケーションには、このフォルダに書き込む権限がありません。

では、この問題をどのように処理するのですか?以下を実行するdebパッケージにインストール後にスクリプトを作成する必要がありますかchmod o+w?すでにこれらの権限が設定されているディレクトリをパッケージ化する必要がありますか?

それとも(Ubuntuのように)アプリケーションを自動的にインストールしたユーザーにファイル所有者を設定する方法はありますか?

ベストアンサー1

Ubuntuでは何が起こるのかわかりませんが、通常は.deb非標準の権限を持つファイルまたはディレクトリを含むパッケージの場合は、その権限が設定されていることを確認する必要があります。後ろに dh_fixpermsランニング。dh-styleを使用すると、rules次のようにこれを実行できます。

override_dh_fixperms:
        dh_fixperms
        chmod 777 yourfolder

または

execute_after_dh_fixperms:
        chmod 777 yourfolder

次のサイトでもこれを行うことができますpostinst

if [ "$1" = "configure" ]; then
    chmod 777 yourfolder
fi

しかし、rules方法はより簡単です。 (少なくともメンテナンススクリプトに頼るよりもこの方法を好む。)

おすすめ記事