Files
p2pool/llmdoc/architecture/debian-packaging.md
Wang Defa 9ff0daa938
All checks were successful
Build and Release / build-and-test (arm64, alpine) (push) Successful in 30s
Build and Release / build-and-test (amd64, alpine) (push) Successful in 42s
Build and Release / build-and-test (arm64, ubuntu) (push) Successful in 41s
Build and Release / build-and-test (amd64, ubuntu) (push) Successful in 54s
Build and Release / release (push) Has been skipped
添加配置文件管理和完整文档系统
- 重构配置方式:使用 params.conf 替代命令行参数
- postinst 自动创建配置文件,升级时保护用户配置
- 初始化 llmdoc 文档系统(概述、架构、指南、参考)
- 创建 README.md 和配置指南
- 提供完整的配置模板示例

配置文件优势:升级安全、集中管理、易于维护
2025-12-19 09:20:33 +08:00

1.6 KiB

Debian 包配置管理架构

1. 配置文件管理机制

配置文件位置和格式

  • 文件路径: /var/lib/p2pool/params.conf
  • 文件权限: 640 (所有者: p2pool:p2pool)
  • 格式: 基于命令行参数的 key-value 配置文件

配置文件生命周期

创建时机

  • 首次安装: postinst 脚本自动创建示例配置文件
  • 升级场景: 现有配置文件被完全保留,不会被覆盖

配置文件生成策略

# 配置文件初始化伪代码
if [ ! -f /var/lib/p2pool/params.conf ]; then
    cp /usr/share/p2pool/params.conf.example /var/lib/p2pool/params.conf
    chown p2pool:p2pool /var/lib/p2pool/params.conf
    chmod 640 /var/lib/p2pool/params.conf
fi

配置加载机制

  • systemd 服务使用 --params-file /var/lib/p2pool/params.conf 加载配置
  • 配置文件支持所有原命令行参数
  • 配置文件优先级高于硬编码的默认值

2. 安全与管理特性

权限控制

  • p2pool 系统用户可读写配置文件
  • 组权限限制,防止非授权访问敏感配置
  • 文件权限 640 确保最小权限原则

升级保护

  • 配置文件在包升级过程中保持不变
  • 新版本兼容旧配置文件格式
  • 升级后可通过比较 params.conf.example 检查新增配置项

3. 配置示例

# /var/lib/p2pool/params.conf 示例
wallet=YOUR_MONERO_WALLET_ADDRESS
host=0.0.0.0
rpc-port=3333
log-level=1

4. 设计考量

动机

  • 简化复杂的命令行参数管理
  • 提供更好的配置持久化方案
  • 增强系统配置的可读性和可维护性