From 8f0463687e3f94d10e96fc16080fff93de43527b Mon Sep 17 00:00:00 2001 From: Wang Defa Date: Fri, 23 Jan 2026 11:35:32 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20apt=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E5=90=8E=E6=9C=8D=E5=8A=A1=E9=9C=80=E8=A6=81=E6=89=8B?= =?UTF-8?q?=E5=8A=A8=E9=87=8D=E6=96=B0=E5=90=AF=E7=94=A8=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修改 prerm 脚本,升级时只停止服务不禁用 - 修改 postinst 脚本,升级后自动重启已启用的服务 - 首次安装仍保持手动启用服务的行为 --- debian/postinst | 33 ++++++++++++++++++++++++++------- debian/prerm | 48 ++++++++++++++++++++++++++++++++---------------- 2 files changed, 58 insertions(+), 23 deletions(-) diff --git a/debian/postinst b/debian/postinst index 1ee1eb5..1291277 100755 --- a/debian/postinst +++ b/debian/postinst @@ -13,13 +13,13 @@ if ! getent passwd p2pool >/dev/null; then fi # Create data directory -mkdir -p /var/lib/p2pool -chown p2pool:p2pool /var/lib/p2pool -chmod 750 /var/lib/p2pool +mkdir -p /var/lib/p2pool/data-api +chown -R p2pool:p2pool /var/lib/p2pool +chmod -R 750 /var/lib/p2pool # Create example params.conf if it doesn't exist if [ ! -f /var/lib/p2pool/params.conf ]; then - cat > /var/lib/p2pool/params.conf << 'EOF' + cat > /var/lib/p2pool/params.conf << 'CONF' # P2Pool Configuration File # Edit this file with your settings and restart the service @@ -28,6 +28,12 @@ host = 127.0.0.1 rpc-port = 18081 zmq-port = 18083 +# Use SSL for RPC connection +# rpc-ssl = true + +# RPC credentials (if applicable) +# rpc-login = username:password + # Your Monero wallet address (REQUIRED) wallet = YOUR_MONERO_WALLET_ADDRESS @@ -46,11 +52,11 @@ loglevel = 3 # mini = true # Merge mining (optional - uncomment to enable Tari merge mining) -# merge-mine = tari://TARI_NODE_IP:18102 TARI_WALLET_ADDRESS +# merge-mine = tari://TARI_NODE_IP:18142 TARI_WALLET_ADDRESS # Stratum server (for miners to connect) # stratum = 0.0.0.0:3333 -EOF +CONF chown p2pool:p2pool /var/lib/p2pool/params.conf chmod 640 /var/lib/p2pool/params.conf fi @@ -64,9 +70,22 @@ chmod 750 /var/log/p2pool chown root:root /opt/p2pool/p2pool chmod 755 /opt/p2pool/p2pool -# Reload systemd +# Reload systemd and handle service restart on upgrade if [ -d /run/systemd/system ]; then systemctl daemon-reload + + # On upgrade: restart service if it was enabled + if [ "$1" = "configure" ] && [ -n "$2" ]; then + # $2 is the previously installed version (only set on upgrade) + if systemctl is-enabled --quiet p2pool.service 2>/dev/null; then + echo "Restarting p2pool service after upgrade..." + systemctl start p2pool.service || true + fi + fi + # Note: On fresh install, service is NOT auto-enabled or auto-started + # Users should manually enable the service: + # systemctl enable p2pool.service + # systemctl start p2pool.service fi echo "" diff --git a/debian/prerm b/debian/prerm index 7caafb6..e68542c 100755 --- a/debian/prerm +++ b/debian/prerm @@ -1,17 +1,33 @@ -#!/bin/sh -set -e +case "$1" in + upgrade) + # Stop service only during upgrade, keep enabled state + if [ -d /run/systemd/system ]; then + if systemctl is-active --quiet p2pool.service; then + echo "Stopping p2pool service for upgrade..." + systemctl stop p2pool.service + fi + fi + ;; + remove|deconfigure) + # Stop and disable service during removal + if [ -d /run/systemd/system ]; then + if systemctl is-active --quiet p2pool.service; then + echo "Stopping p2pool service..." + systemctl stop p2pool.service + fi + if systemctl is-enabled --quiet p2pool.service 2>/dev/null; then + echo "Disabling p2pool service..." + systemctl disable p2pool.service + fi + fi + ;; + failed-upgrade) + # Do nothing on failed upgrade + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac -# Stop and disable service if running -if [ -d /run/systemd/system ]; then - if systemctl is-active --quiet p2pool.service; then - echo "Stopping p2pool service..." - systemctl stop p2pool.service - fi - - if systemctl is-enabled --quiet p2pool.service 2>/dev/null; then - echo "Disabling p2pool service..." - systemctl disable p2pool.service - fi -fi - -exit 0 +exit 0 \ No newline at end of file