first commit

This commit is contained in:
2025-09-22 05:40:12 +00:00
commit ff83fa9e74
2 changed files with 582 additions and 0 deletions

123
README.md Normal file
View File

@@ -0,0 +1,123 @@
# Ubuntu 24.04 换源和升级工具
这是一个专为 Ubuntu 24.04 LTS 设计的换源和系统升级脚本,提供了友好的菜单界面和完整的功能。
## 功能特性
- 🔄 **多镜像源支持**:支持阿里云、清华大学、中科大、华为云等国内镜像源
- 🚀 **一键系统升级**:自动更新软件包列表、升级系统、清理无用包
- 📋 **菜单式操作**:直观的交互界面,操作简单
- 🔒 **安全备份**:自动备份原始源配置,支持一键恢复
- 🧹 **清理重复源**:避免重复源配置,确保系统稳定
-**错误处理**:完善的错误检查和用户提示
## 使用方法
### 1. 赋予执行权限
```bash
chmod +x ubuntu_manager.sh
```
### 2. 运行脚本需要root权限
```bash
sudo ./ubuntu_manager.sh
```
### 3. 选择操作
脚本会显示以下菜单选项:
```
================================================
Ubuntu 24.04 换源和升级工具
================================================
1. 换源到阿里云镜像
2. 换源到清华大学镜像
3. 换源到中科大镜像
4. 换源到华为云镜像
5. 系统升级
6. 显示当前软件源
7. 恢复原始软件源
8. 一键换源并升级(推荐阿里云)
0. 退出
================================================
```
## 功能说明
### 换源功能选项1-4
- 自动备份当前的 sources.list 文件
- 完全替换为选定的镜像源配置
- 清理 sources.list.d 目录中的其他源文件(重命名为 .disabled
- 自动更新软件包列表
### 系统升级功能选项5
- 更新软件包列表
- 升级已安装的软件包
- 执行完整系统升级(包括内核)
- 清理不需要的软件包
- 检查是否需要重启系统
### 显示当前软件源选项6
- 显示当前 sources.list 文件的有效配置
- 过滤注释和空行,只显示实际的源配置
### 恢复原始软件源选项7
- 列出所有可用的备份文件
- 允许用户选择要恢复的备份
- 自动更新软件包列表
### 一键换源并升级选项8
- 自动换源到阿里云镜像(推荐)
- 完成换源后自动执行系统升级
- 适合新系统初始化使用
## 支持的镜像源
| 镜像源 | 地址 | 特点 |
|--------|------|------|
| 阿里云 | mirrors.aliyun.com | 速度快,稳定性好 |
| 清华大学 | mirrors.tuna.tsinghua.edu.cn | 教育网友好,更新及时 |
| 中科大 | mirrors.ustc.edu.cn | 老牌镜像,可靠性高 |
| 华为云 | mirrors.huaweicloud.com | 企业级服务,速度稳定 |
## 注意事项
1. **权限要求**:脚本需要 root 权限运行,请使用 `sudo` 执行
2. **系统版本**:专为 Ubuntu 24.04 LTS 设计,其他版本可能需要调整
3. **网络连接**:确保网络连接正常,以便下载更新
4. **备份重要性**:脚本会自动备份,但建议在重要系统上先手动备份
5. **重启提醒**:系统升级后可能需要重启,请注意保存工作
## 故障排除
### 权限错误
```bash
# 如果遇到权限错误,确保使用 sudo
sudo ./ubuntu_manager.sh
```
### 网络连接问题
```bash
# 测试网络连接
ping -c 4 mirrors.aliyun.com
```
### 恢复到官方源
如果需要恢复到 Ubuntu 官方源,可以使用脚本的恢复功能,或手动编辑:
```bash
sudo cp /etc/apt/sources.list.backup.* /etc/apt/sources.list
sudo apt update
```
## 版本信息
- **版本**1.0
- **适用系统**Ubuntu 24.04 LTS
- **作者**SOLO Coding
- **更新日期**2024年
## 许可证
本脚本遵循 MIT 许可证,可自由使用和修改。