7cf4a93288b5c98cf9991a3208efa34e7e68c0d5
BootRepairTool - Linux GRUB 引导修复工具
一个简单易用的 Linux GRUB 引导修复工具,提供图形化界面,适用于 Live USB/CD 环境。
📖 项目介绍
BootRepairTool 是一个用于修复 Linux 系统 GRUB 引导加载器的图形化工具。当你的系统因为 GRUB 损坏、分区调整、重装 Windows 等原因导致无法启动时,此工具可以帮助你快速修复引导问题。
主要功能
- 🔍 自动扫描分区 - 自动检测系统中的 Linux 分区和 EFI 分区
- 🐧 多发行版支持 - 支持 Arch、Debian/Ubuntu、CentOS/RHEL/Fedora、openSUSE 等主流发行版
- 🧬 多架构支持 - 支持 x86_64、i386、arm64、loongarch64 等架构
- 💾 多种文件系统 - 支持 ext4、btrfs、xfs、lvm、luks 等
- 🔧 一键修复 - 自动挂载、chroot 环境、重装 GRUB、更新配置
- 🖥️ 图形界面 - 基于 tkinter 的直观图形界面
- 🔒 Secure Boot 检测 - 自动检测并提示 Secure Boot 状态
🚀 使用方法
场景一:系统无法启动(Live USB 环境)
- 使用 Linux Live USB/CD 启动电脑
- 连接网络(可选,用于在线安装)
- 打开终端,运行安装命令
- 启动 BootRepairTool 进行修复
场景二:已安装系统的维护
直接在已安装的 Linux 系统中运行(需要 root 权限)。
📦 安装方法
Arch Linux(推荐)
方式一:一键安装脚本(自动从 Git 克隆)
# 下载安装脚本
wget https://raw.githubusercontent.com/yourusername/BootRepairTool/main/arch-install.sh
# 运行安装(默认从 Git 克隆最新版本)
sudo bash arch-install.sh
# 或使用本地文件安装
sudo bash arch-install.sh local
安装脚本会自动:
- 安装依赖(git、tk、python)
- 克隆/复制项目到
/opt/boot-repair-tool - 创建启动脚本
/bin/boot-repair - 创建桌面快捷方式
方式二:手动安装
# 1. 安装依赖
sudo pacman -S git tk python
# 2. 克隆项目
sudo git clone https://git.yuyujing.cn/zj/BootRepairTool.git /opt/boot-repair-tool
# 3. 创建启动脚本
sudo ln -s /opt/boot-repair-tool/arch-install.sh /bin/boot-repair
# 4. 运行
sudo boot-repair
其他发行版(Debian/Ubuntu/CentOS 等)
方式一:打包安装
# 1. 确保有 Python 3.9+
python3 --version
# 2. 安装 PyInstaller
pip3 install pyinstaller
# 3. 打包
python3 build.py
# 4. 安装
sudo bash install.sh
方式二:直接运行源码
# 1. 安装依赖
# Debian/Ubuntu:
sudo apt-get install git python3 python3-tk
# CentOS/RHEL/Fedora:
sudo yum install git python3 tkinter
# 2. 克隆项目
git clone https://git.yuyujing.cn/zj/BootRepairTool.git
cd BootRepairTool
# 3. 直接运行
sudo python3 frontend.py
🎮 启动程序
安装完成后,可以通过以下方式启动:
# 命令行启动
sudo boot-repair
# 或使用 pkexec
pkexec boot-repair
或在应用程序菜单中搜索 "Linux GRUB 引导修复工具"。
🔧 修复步骤
- 选择根分区 (/) - 选择你的 Linux 根分区
- 选择 /boot 分区(可选)- 如果 /boot 是独立分区
- 选择 EFI 分区(UEFI 模式)- 通常是 FAT32 格式的 ESP 分区
- 选择目标磁盘 - 要安装 GRUB 的磁盘(如 /dev/sda)
- 点击"开始修复" - 工具会自动完成挂载、chroot、修复、卸载
🖼️ 界面预览
+--------------------------------------------------+
| Linux GRUB 引导修复工具 v2.0 |
+--------------------------------------------------+
| 系统信息: x86_64 | 64位EFI | Live环境 |
+--------------------------------------------------+
| 1. 选择目标系统分区 |
| 根分区 (/) *: [/dev/sda1 ▼] |
| /boot 分区: [可选 ▼] |
| EFI 分区: [/dev/sda2 ▼] |
+--------------------------------------------------+
| 2. 选择目标磁盘 |
| 磁盘: [/dev/sda ▼] |
| [✓] UEFI 模式 |
+--------------------------------------------------+
| 3. 高级选项 |
| [ 开始修复 ] [ 刷新 ] |
+--------------------------------------------------+
| [日志窗口...] |
+--------------------------------------------------+
📋 支持的发行版
| 发行版 | 状态 |
|---|---|
| Arch Linux / Manjaro / EndeavourOS | ✅ 完全支持 |
| Debian / Ubuntu / Linux Mint | ✅ 完全支持 |
| CentOS / RHEL / Rocky Linux / AlmaLinux | ✅ 完全支持 |
| Fedora | ✅ 完全支持 |
| openSUSE Leap / Tumbleweed | ✅ 完全支持 |
| Void Linux | ✅ 完全支持 |
| Gentoo | ✅ 完全支持 |
| NixOS | ✅ 完全支持 |
⚠️ 注意事项
- 需要 root 权限 - 所有磁盘操作需要
sudo - Live 环境 - 设计为在 Live USB/CD 中运行
- 数据备份 - 建议操作前备份重要数据
- Secure Boot - 某些情况下需要先在 BIOS 中禁用 Secure Boot
- UEFI/BIOS 模式 - 确保 Live USB 以正确的模式启动(与待修复系统一致)
🐛 故障排除
启动后黑屏/界面不显示
Arch Linux 可能出现 X11 字体渲染问题,尝试:
export XLIB_SKIP_ARGB_VISUALS=1
sudo boot-repair
找不到 EFI 分区
确保以 UEFI 模式启动 Live USB,而非 Legacy BIOS 模式。
修复后仍然无法启动
- 检查 BIOS 启动顺序
- 尝试禁用 Secure Boot
- 手动选择 EFI 文件启动测试
🤝 贡献
欢迎提交 Issue 和 Pull Request!
📄 许可证
MIT License
🙏 致谢
- 参考 Calamares 引导安装模块实现
- 感谢所有贡献者和测试者
提示: 如果使用过程中遇到问题,请在终端运行 sudo boot-repair 查看详细日志信息。
Description
Languages
Python
82.4%
Shell
17.6%