Commit Graph

215 Commits

Author SHA1 Message Date
Maple
a2da01efe7 refactor: simplify bootstrap to download dist single file only
Remove the per-module download fallback. Now that dist/PVE-Tools.sh is
committed to the repo, the bootstrap only downloads one file.

169 lines -> 73 lines
2026-07-08 15:18:00 +08:00
Maple
a8799d7ac0 fix: add dist/PVE-Tools.sh and missing cve-fix.sh to bootstrap
- Un-ignore dist/PVE-Tools.sh so it is available on GitHub raw for the
  bootstrap loader to download directly (faster single-file path).
- Add src/modules/09-security/cve-fix.sh to remote file list so the
  fallback per-module download path is complete.
- The bootstrap now has both download paths working.
2026-07-08 15:14:17 +08:00
Maple
1520744bc9 fix: strip pre-release suffix in version comparison
sort -V treats "-beta" suffix as lexicographically greater than plain
version, causing 10.0.0-beta to appear newer than 10.0.0.
Strip -beta/-alpha/-rc before comparing to fix this.
2026-07-08 15:06:40 +08:00
Maple
c932028f5b chore: update docs, images, CI configs and script initialization hints
- lib/core.sh: update script initialization prompts
- intel-sriov/intel-legacy/intel-gvtg/nvidia: minor refinements
- Docs: update README, CLAUDE.md and images
- CI: sync beta-release and release workflow configs
- self-update: update version check logic
2026-07-08 14:36:37 +08:00
Maple
389536dfcc fix: cve-fix.sh - remove double pause, idempotent blacklist, drop_caches gating
- Remove pause_function from all leaf action functions (menus handle it)
- Module blacklist: trailing newline guard before appending
- rmmod_and_drop_caches: only flush when modules actually unloaded
- Batch mitigation: check grub_add_param and update-grub return values
- Final message reflects actual success/failure state
2026-07-08 14:22:22 +08:00
Maple
94ca8d142d fix: cve-fix.sh hardening - idempotency, error checks, read -r, kernel detection
- module blacklist: idempotent dedup + write error checks + caller return gating
- module restore: rm error check before success log
- GRUB update-grub/grub-mkconfig: fail closed on all 3 call sites
- menu reads: read -p -> read -rp (SC2162)
- kernel detection: build date is heuristic only, handle unknown state (rc=2)
2026-07-08 14:17:20 +08:00
Maple
74cc60176c feat: add Copy Fail and Dirty Frag LPE fixes 2026-07-08 14:04:57 +08:00
Maple
9d3b17daed feat: v10.0.1 — 安全中心新增 CVE 漏洞修补 (Januscape CVE-2026-53359)
新增 src/modules/09-security/cve-fix.sh:
- 漏洞检测:嵌套虚拟化状态 + 内核版本综合评估
- 临时修补:grub_add_param 禁用 kvm_intel/kvm_amd 嵌套虚拟化
- 升级内核修补:引导至内核管理模块安装已修复内核
- 恢复嵌套虚拟化:grub_remove_param 移除禁用参数
- CVE 修补主菜单:集成到安全中心第 3 项

Januscape 是 KVM/x86 shadow MMU use-after-free 漏洞,影响 2010~2026 全部内核版本
修复参考: https://github.com/V4bel/Januscape
2026-07-08 13:57:16 +08:00
Maple
b4b53a8723 chore: bump version to v10.0.0 v10.0.0 2026-07-08 13:47:51 +08:00
Maple
1fc80ec3ca fix: cpupower 安全写入与 upgrade-pve 强制升级确认加固
- cpupower.sh: modprobe 失败时跳过驱动写入;backup_file 失败时中止;tmpf 添加 local 并检查 mktemp
- upgrade-pve.sh: 强制升级的 y/N read 替换为 confirm_high_risk_action (FORCE-UPGRADE)
2026-07-08 13:41:21 +08:00
Maple
413f0e0e66 fix: 修复审查机器人第二轮反馈 — 回归问题与遗漏边界
- upgrade-pve.sh: 拆分 apt update && dist-upgrade 短路逻辑为独立检查
- intel-legacy.sh: dpkg -i 失败时不再误报成功/锁定包
- cpupower.sh: /etc/modules 备份守卫改用布尔标志,避免重复备份
- popup.sh: 移除 restore_proxmoxlib 中与 reinstall 内部重复的日志
- iommu.sh: disable_pass 添加 /etc/modules backup_file;grub_add_param 失败时 early return
- init.sh(08): backup_file 失败时中止黑名单清理并提示
2026-07-08 13:34:34 +08:00
Maple
0b0b20ed5e fix: 修复审查机器人发现的代码问题 — 安全规范与代码质量
- GRUB管理: raw sed 替换为 grub_add_param/grub_remove_param 幂等助手 (iommu/igpu-shared)
- 高风险确认: 9处 ad-hoc read/confirm_action 统一替换为 confirm_high_risk_action
- 配置备份: sysfs.conf/etc/modules/pve-blacklist.conf 修改前添加 backup_file()
- 临时文件安全: 5处硬编码 /tmp 路径替换为 mktemp (intel-legacy/cpupower/ssh-hardening)
- Bug修复: snapshot 后置自增双计数、grub return 0 掩盖失败、firewall stderr 重定向
- 变量作用域: cpupower GOVERNOR 泄漏与重置、backup/snapshot local -a vmids
- 跨模块依赖: tunes/img-import/init.sh 添加注释或替换为同模块函数
- CI增强: pr-validation 新增 dist/PVE-Tools.sh shellcheck 步骤
- 守卫添加: cpu_add() 添加 block_non_pve9_destructive + confirm_high_risk_action
2026-07-08 13:12:28 +08:00
Maple
107cc85507 fix(release): 修正安装命令格式和域名 2026-07-08 12:01:49 +08:00
Maple
4bd11dafc3 chore(release): 移除二进制编译,只发布原始 Shell 脚本 v10.0.0-beta4 2026-07-08 11:53:02 +08:00
Maple
fda4ee7d9d fix(release): 用 ssc 替代 shc,pipe 模式无 ARG_MAX 限制 2026-07-08 11:49:51 +08:00
Maple
b12179b084 fix(release): shc 静态编译解决 glibc 版本不匹配问题
- release.yml: CFLAGS=\

Signed-off-by: Maple <Mapleawa07@outlook.com>
v10.0.0-beta2
2026-07-08 11:45:32 +08:00
Maple
747bef9808 chore: bump version to v10.0.0-beta for release test v10.0.0-beta 2026-07-08 11:38:44 +08:00
Maple
78b8891794 chore: 移除 Playwright MCP 临时文件,添加到 .gitignore
清理 .playwright-mcp/ 工作区临时文件并加入 gitignore,
防止开发过程中的临时测试文件被意外跟踪。
2026-07-08 11:18:26 +08:00
Maple
886e82f0cb refactor: 模块化重构 — 拆分 lib/ 基础设施层与 src/modules/ 功能模块
PVE-Tools.sh 从 ~14,700 行单文件重构为 150 行入口点,
所有函数按职责拆分到独立文件,通过 source 机制加载。

lib/ — 基础设施层(零业务逻辑)
  config.sh: 全局变量与常量
  core.sh: 日志、UI、确认、备份、GRUB、进度条
  network.sh: 网络检测、镜像选择
  runtime.sh: 运行时守卫、main() 入口

src/modules/ — 功能模块(10 个目录)
  01-optimization  02-sources  03-boot-kernel
  04-gpu-passthrough  05-vm-container  06-networking
  07-storage-disk  08-tools-about  09-security  10-third-party

新增 build.sh(合并编译)和 dev.sh(开发 source 入口),
release.yml 新增构建步骤,CI 适配模块化结构。
2026-07-08 11:15:59 +08:00
Maple
6e62bca246 fix: 修复审查机器人发现的代码问题 2026-06-20 22:44:00 +08:00
Maple
d9468189d8 feat: v9.0.0 重大更新 — 镜像源重构、CoolerControl集成、垃圾清理系统、磁盘直通增强、Web文档站移除
- 镜像源系统重构为并行数组架构,新增智能镜像选择与通用下载函数
- 新增 CoolerControl 风扇控制工具一键管理(安装/更新/卸载)
- 新增完整垃圾清理系统(基础清理、备份修剪、快照修剪、孤立磁盘扫描)
- 磁盘直通能力大幅增强(整盘发现、存储控制器直通、NVMe直通、系统盘保护)
- 新增存储挂载向导,支持 ext4/xfs 分区一键挂载
- 新增安全中心菜单,整合安全相关功能
- 主菜单重组:新增「安全中心」「第三方工具」入口,移除已修复CVE模块
- 虚拟机高级操作拆分为聚焦型子菜单
- 移除内嵌 Web 文档站点,仓库更精简
- VERSION 升级至 9.0.0
2026-06-20 22:32:22 +08:00
Maple
dec829cae5 docs: 修复README.md中的格式和占位内容
1. 移除了多余的数字占位符4
2. 修正了警告块的Markdown语法格式
2026-06-20 17:01:12 +08:00
Maple
ee64dc2c80 Merge branch 'main' of github.com:PVE-Tools/PVE-Tools-9 2026-06-20 17:00:31 +08:00
Maple
5aabc20cea docs: 更新站点logo与README内容
1. 更新vitepress配置中的站点logo为svg版本
2. 替换README中原停更公告为恢复更新公告
3. 调整README中原项目介绍文本与注释格式
2026-06-20 16:59:03 +08:00
CyreneNight
c755fa0953 Update README with Go version migration details 2026-05-23 18:43:21 +08:00
CyreneNight
846f7c7794 Revise Shell version update announcement
Updated caution notice regarding Shell version updates.
2026-05-23 18:41:11 +08:00
Maple
f658b9a2b8 docs: add Telegram group link and update README content
1. 新增官方Telegram群信息到赞助页面和页脚、README
2. 调整README中关于项目停更的描述,改为暂缓开发而非终止
3. 移除冗余的Go重构警告提示
2026-05-22 21:24:46 +08:00
Maple
df967c5dd2 chore: update repo references from Mapleawaa to PVE-Tools 2026-05-16 16:19:57 +08:00
CyreneNight
93737b4497 Announce transition from Shell to Go version
Updated README to announce the end of Shell version updates and the transition to a Go-based version.
2026-05-15 20:41:58 +08:00
CyreneNight
0ab5174226 Update README with Shell version maintenance notice
Announce the end of new feature development for the Shell version and introduce the Go version reconstruction plan.
2026-05-15 20:41:23 +08:00
Maple
740d1a5c6e release: v8.8.8 Shell版最终版本,项目归档转向Go重构
- Shell版本定格为最终版本,main分支停止功能更新
- 项目归档声明,后续维护转向Go语言重构版(beta-go)
- 文档站新增EOL归档公告横幅和归档说明页面
- 导航栏新增"归档说明"入口
- 更新日志同步至v8.8.8
- 版本号同步提升到8.8.8,代号更新为Coluccis
2026-05-15 20:40:25 +08:00
CyreneNight
dd0ef027ac Revise project status warning in README
Updated warning message regarding project rewrite in Go.
2026-05-13 12:30:06 +08:00
CyreneNight
f3b31e90c2 Fix warning message formatting in README.md 2026-05-13 12:29:37 +08:00
CyreneNight
76b41e1e14 Revise README with CVE-2026-31431 details
Updated README to include information about CVE-2026-31431 and project rewrite.
2026-05-13 12:29:19 +08:00
Maple
abb407054a docs: 更新文档内容并优化站点配置
1. 替换赞助页面为微信收款码
2. 新增常见问题引导、高级教程内容
3. 优化导航菜单结构与站点SEO配置
4. 更新依赖版本与静态资源缓存规则
5. 新增本地图标资源与赞助墙组件
2026-05-11 23:04:27 +08:00
Maple
572fc1a81b fix(换源): 修复阿里云 Ceph 镜像 404 问题并升级至 v7.7.0
- 修复阿里云换源时 Ceph 镜像指向不存在地址的 BUG,改为使用官方 Ceph 源
- 优化换源功能日志提示,明确告知用户哪些源使用镜像站、哪些沿用官方源
- 同步更新 VERSION、UPDATE、Web/update.md
2026-05-09 20:45:39 +08:00
Maple
87eaa8182e feat: 升级至 v7.6.0 并新增腾讯云/阿里云镜像源
- 将版本号更新至 7.6.0,构建代号改为 Funa
- 新增腾讯云和阿里云公网镜像源选项,分别用于 Debian/安全更新和 Debian/安全/Ceph
- 优化镜像源选择逻辑,增加输入验证和错误处理
- 更新相关文档和更新日志
2026-05-07 22:46:00 +08:00
Maple
2bd646c746 feat(网络): 添加基于 MAC 地址的网卡命名绑定功能
实现通过 systemd .link 文件按 MAC 地址固定网卡命名,避免重启或硬件变更后网卡顺序变化导致网络配置失效。新增功能包括:
- 支持创建、删除和查看 MAC 绑定
- 自动检测并清理旧式 udev 规则
- 提供冲突检测与依赖检查
- 更新 README 和界面截图
2026-05-07 22:00:13 +08:00
Maple
c20e9666a6 Merge branch 'main' of github.com:Mapleawaa/PVE-Tools-9 2026-05-05 23:54:15 +08:00
Maple
9b3b07989b fix(copy_fail): 调整漏洞修复复查流程和文案
更新 Copy Fail 漏洞处理流程,将语义从"检测/缓解"调整为"修复复查/清理",适配漏洞修复后的使用场景
修改相关菜单选项和提示文案,强调升级后复查和清理临时阻断配置的重要性
更新版本号至 7.5.0 并同步文档
2026-05-05 23:54:09 +08:00
CyreneNight
727ac2d7e9 Merge pull request #81 from wsu2059q/main
fix: 修复网络配置界面输出重定向问题
2026-05-02 14:18:54 +08:00
wsu2059q
dc4cf61ddf fix: 网络配置解析中的正则表达式可能的匹配问题 确保 address、gateway 等的识别 2026-05-01 20:13:51 +08:00
wsu2059q
2d1fc78a86 fix: 修复网络配置界面输出重定向问题 2026-05-01 19:59:48 +08:00
Maple
c7e6322c1c docs: 统一将项目名称从PVE-Tools-9更新为PVE Tools Pro
更新所有文档和页面中的项目名称,从PVE-Tools-9变更为PVE Tools Pro
添加Cookie同意组件以符合隐私法规要求
2026-05-01 15:56:23 +08:00
Maple
6448760743 fix(内核管理): 修复内核同步流程误装辅助包问题并统一包名识别逻辑
修复自动更新流程误把辅助包当作最新内核的问题,避免安装 `proxmox-kernel-libc-dev` 等非内核包
统一 `proxmox-kernel-*` 和 `pve-kernel-*` 的包名识别逻辑,确保菜单展示和安装使用同一套规范
调整可用内核列表筛选规则,只保留真实内核包,排除开发包和工具包
2026-04-30 22:40:19 +08:00
Maple
16d61c8ca4 docs: 更新README和图片资源
- 替换主logo图片为新的封面图片
- 重构项目定位部分为表格形式
- 强调免责声明的风险提示
- 调整文档结构,将快速开始部分提前
2026-04-30 21:09:17 +08:00
Maple
c52881ec53 docs: 更新README和添加主logo图片
更新README.md文件,替换产品截图为主logo图片,并添加关于CVE-2026-31431漏洞处置的重要警告信息
2026-04-30 21:04:47 +08:00
Maple
85ca4268d4 feat: 添加 Copy Fail 安全处置菜单选项
新增菜单选项9用于处理 Copy Fail 安全问题,包括检测、缓解和回滚功能
2026-04-30 20:55:16 +08:00
Maple
a8955b29ce feat(安全): 新增 Copy Fail 漏洞检测与缓解功能
新增 Copy Fail (CVE-2026-31431) 漏洞检测、风险评估与缓解入口,集成到内核管理菜单。主要包含以下功能:

- 综合内核版本、changelog 证据、内核配置、模块状态及 LXC/SSH 暴露面进行漏洞状态检测
- 新增两种自动临时缓解方式:禁用 algif_aead 或禁用 authencesn
- 新增手动处理说明和临时缓解回滚入口
- 保留现有内核同步更新流程,明确说明升级不等于修复
2026-04-30 20:44:35 +08:00
Maple
b4388d8ee3 docs: 更新文档域名和SEO配置
feat(web): 添加robots.txt和og-image.png
refactor(web): 重构config.mts优化SEO和sitemap
fix(web): 修复文档页面元信息缺失问题
chore: 清理.gitignore中的冗余规则
2026-04-28 21:45:46 +08:00