添加配置文件管理和完整文档系统
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 和配置指南
- 提供完整的配置模板示例

配置文件优势:升级安全、集中管理、易于维护
This commit is contained in:
2025-12-19 09:20:33 +08:00
parent 1bafc36670
commit 9ff0daa938
14 changed files with 1083 additions and 19 deletions

View File

@@ -0,0 +1,58 @@
# Debian 包配置管理架构
## 1. 配置文件管理机制
### 配置文件位置和格式
- **文件路径:** `/var/lib/p2pool/params.conf`
- **文件权限:** `640` (所有者: `p2pool:p2pool`)
- **格式:** 基于命令行参数的 key-value 配置文件
### 配置文件生命周期
#### 创建时机
- **首次安装:** `postinst` 脚本自动创建示例配置文件
- **升级场景:** 现有配置文件被完全保留,不会被覆盖
#### 配置文件生成策略
```bash
# 配置文件初始化伪代码
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. 配置示例
```conf
# /var/lib/p2pool/params.conf 示例
wallet=YOUR_MONERO_WALLET_ADDRESS
host=0.0.0.0
rpc-port=3333
log-level=1
```
## 4. 设计考量
### 动机
- 简化复杂的命令行参数管理
- 提供更好的配置持久化方案
- 增强系统配置的可读性和可维护性