# 小U升级管家 **Repository Path**: deepin20/upilot ## Basic Information - **Project Name**: 小U升级管家 - **Description**: 小U升级管家是一款专为统信UOS操作系统设计的图形化系统升级工具,旨在降低命令行操作门槛,为用户提供安全、可视化的系统升级体验。无论是个人用户还是运维人员,都能通过该工具轻松完成系统更新与升级任务。 - **Primary Language**: Python - **License**: LGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-27 - **Last Updated**: 2026-08-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 🚀 小U升级管家 U-Pilot **小U升级管家 U-Pilot** —— 您的专属 UOS 系统升级助手,让系统升级更安全、更透明、更轻松。 一款专为统信UOS操作系统设计的图形化系统升级工具,提供**双升级模式**、**智能预检**、**系统快照**、**一键回滚**等企业级功能,将复杂的命令行操作转化为直观的图形界面,显著降低系统维护门槛。 --- ## ✨ 核心功能 ### 🎯 升级管理 - **双升级模式** – 支持 `upgrade`(标准升级,保守稳定)和 `dist-upgrade`(完整升级,可处理内核更换与复杂依赖变更) - **非交互式运行** – 启用 `DEBIAN_FRONTEND=noninteractive`,全程自动化,适合批量部署与无人值守场景 - **软件源备份** – 升级前自动备份 `/etc/apt/sources.list` 及 `sources.list.d/`,配置无忧 ### 🛡️ 安全保障 - **智能预检** – 升级前自动检查磁盘空间、网络连通性、电池电量及 APT 锁状态,提前预警环境风险 - **系统快照** – 基于 Timeshift 在升级前创建全系统快照,支持一键回滚,让您大胆升级,无后顾之忧 - **图形化管理快照** – 集成 `timeshift-gtk`,可视化管理所有快照,回滚操作仅需点击 ### ⚙️ 智能配置 - **配置持久化** – 所有偏好设置(升级模式、备份目录、预检/快照开关等)通过 `QSettings` 自动保存 - **实时日志** – 界面实时显示命令执行输出,同时自动保存至 `/var/log/apt_upgrade_*.log`,便于问题追溯 ### 🖥️ 交互体验 - **模块化界面** – 菜单栏(文件/帮助)+ 工具栏(预检/快照/管理)+ 实时日志 + 进度条,操作清晰直观 - **Polkit 提权** – 通过 `pkexec` 实现图形化权限认证,无需手动 `sudo` --- ## 📦 安装方法 ### 方法一:从 DEB 包安装(推荐) 1. 下载最新发行版 `.deb` 包 2. 终端执行: ```bash sudo dpkg -i upilot_2.0_all.deb sudo apt install -f # 自动安装缺失依赖 ``` 3. 安装完成后,在启动器找到 **小U升级管家** 图标点击运行,或终端执行: ```bash sudo upilot ``` (或通过 Polkit 提权:`pkexec /usr/bin/upilot`) ### 方法二:从源码运行(开发者模式) ```bash git clone https://github.com/yourusername/upilot.git cd upilot sudo apt install python3-pyqt5 timeshift needrestart sudo python3 -m upilot.main ``` > **注意**:程序必须以 **root 权限** 运行,请使用 `sudo` 或 `pkexec` 启动。 --- ## 🛠️ 依赖项 | 软件包 | 用途 | 必要性 | |--------|------|--------| | `python3` | Python 运行环境 | ✅ 必需 | | `python3-pyqt5` | 图形界面框架 | ✅ 必需 | | `needrestart` | 升级后服务/内核检查 | ⚠️ 推荐 | | `timeshift` | 系统快照功能 | ⭐ 可选(如需快照) | | `timeshift-gtk` | 快照图形化管理界面 | ⭐ 可选(如需 GUI 管理) | --- ## 🎯 使用指南 ### 快速上手 1. **预检系统** – 点击工具栏 **🔍 预检系统**,程序将自动检查磁盘、网络、电池及 APT 锁状态,并输出详细报告 2. **创建快照** – 点击 **📸 创建系统快照**,基于 Timeshift 创建当前系统备份(需提前配置 Timeshift 存储位置) 3. **管理快照** – 点击 **📂 管理快照**,若已安装 `timeshift-gtk` 则打开图形界面,否则在日志区列出已有快照 4. **选择升级模式** – 在界面选择 **标准升级**(日常更新)或 **完整升级**(跨版本/重大更新,推荐) 5. **配置备份** – 勾选“升级前备份软件源配置”,指定备份目录(默认 `~/uos_upgrade_backup`) 6. **开启非交互** – 勾选“非交互式运行”可跳过所有确认提示,适合脚本化批量操作 7. **开始升级** – 点击 **开始升级**,程序按顺序执行:预检(若启用)→ 快照(若启用)→ 备份 → `apt update` → `apt upgrade/dist-upgrade` → 清理 → 服务检查 8. **查看日志** – 所有输出实时显示,并自动保存至 `/var/log/apt_upgrade_*.log` ### 个性化设置 通过菜单栏 **文件 → 设置** 可自定义: - **默认升级模式** – `upgrade` 或 `dist-upgrade` - **默认启用非交互模式** - **备份目录** 路径 - **自动执行预检** – 每次升级前自动运行环境检查 - **自动创建快照** – 每次升级前自动创建系统快照 所有配置自动保存,下次启动即生效。 --- ## 📁 项目目录结构 ``` upilot/ ├── DEBIAN/ # DEB 包控制文件 │ ├── control # 包元信息(名称、版本、依赖等) │ └── postinst # 安装后脚本 ├── usr/ │ ├── bin/ │ │ └── upilot # 启动脚本(极简入口) │ ├── lib/python3/dist-packages/upilot/ # Python 核心代码 │ │ ├── __init__.py # 包版本信息 │ │ ├── main.py # 程序入口(权限检查 + 窗口启动) │ │ ├── config.py # QSettings 配置管理 │ │ ├── widgets/ # UI 组件 │ │ │ ├── main_window.py # 主窗口(界面布局+事件绑定) │ │ │ └── dialogs.py # 设置/关于对话框 │ │ ├── threads/ # 后台业务线程 │ │ │ ├── upgrade.py # 升级执行线程 │ │ │ ├── precheck.py # 预检线程 │ │ │ └── snapshot.py # 快照线程 │ │ └── utils/ │ │ └── helpers.py # 通用工具(备份等) │ └── share/ │ ├── applications/ │ │ └── upilot.desktop # 启动器桌面文件 │ ├── icons/hicolor/256x256/apps/ │ │ └── upilot.png # 应用图标 │ ├── doc/upilot/ # 软件文档 │ │ ├── README │ │ ├── NEW_FEATURES │ │ └── changelog │ └── polkit-1/actions/ │ └── com.upilot.upgrade.policy # Polkit 授权策略 ``` --- ## 🔧 构建与打包 如果您需要从源码构建 DEB 包: 1. 克隆项目并进入目录 2. 确保目录结构符合上述规范 3. 执行打包命令: ```bash dpkg-deb --build upilot ``` 4. 安装测试: ```bash sudo dpkg -i upilot.deb sudo apt install -f ``` --- ## 🤝 参与贡献 我们欢迎任何形式的贡献! - **反馈问题** – 在 gitee 提交https://gitee.com/deepin20/upilot - **提交代码** – Fork 项目并创建 Pull Request - **提出建议** – 通过邮件或 Issue 与我们沟通 项目开发遵循 [GPL v3 许可证](https://www.gnu.org/licenses/gpl-3.0.html)。 --- ## 📝 版本日志 ### v2.0(小U升级管家) - 🆕 新增智能预检(磁盘、网络、电池、APT锁) - 🆕 集成 Timeshift 快照与回滚支持 - 🆕 增加“设置”和“关于”对话框 - 🆕 实现配置持久化(QSettings) - ✨ 优化图形界面布局,增加菜单栏与工具栏 - 🐛 修复备份函数兼容 Python 3.7 的问题 - 🚀 项目更名为“小U升级管家 U-Pilot” ### v1.0(UOS 全能系统升级助手) - 双升级模式(upgrade / dist-upgrade) - 软件源备份与清理 - 实时日志与进度条 - 非交互模式支持 --- ## 📄 许可证 本项目采用 **GNU General Public License v3.0** 开源协议。 详情请参阅 [LICENSE](https://www.gnu.org/licenses/gpl-3.0.html) 文件。 --- ## 📬 联系方式 - **项目主页**:https://gitee.com/deepin20/upilot - **作者**:温暖断章 - **邮箱**:1802272181@qq.com --- > **温馨提示**:本工具旨在简化 UOS 系统升级流程,降低操作风险。使用前请确保已备份重要数据,并知悉系统升级可能带来的潜在影响。建议在非生产环境先行测试。 --- **小U升级管家 U-Pilot** —— 升级无忧,运维有方。🎉