Files
eddy 30456165c4 chore: 移除内置脚本自更新流程
- 删除自更新菜单、版本比较及脚本替换逻辑
- 连续重排剩余主菜单的编号
- 将项目资源下载源重命名为 PROJECT_RAW_URL
- 同步更新文档以反映精简后的功能
2026-08-01 23:23:07 +08:00

334 lines
7.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
已核实本地全部文件。项目核心是 `kejilion.sh`,当前版本 **v3.0.0**,定位为 **Debian / Ubuntu VPS 交互式管理工具箱**
## 一、主菜单功能
### 1. 系统信息查询
可以查看:
- 主机名、系统版本、Linux 内核
- CPU 型号、架构、核心数、占用率
- 内存、Swap、磁盘使用情况
- 累计接收和发送流量
- TCP 拥塞控制算法、默认队列算法
- 公网 IPv4、IPv6
- IP 国家、城市、运营商
- 系统时区、当前时间、运行时长
其中公网 IP 和地理信息依赖 `ip.sb``ipinfo.io` 等外部服务。
### 2. 系统更新
执行 Debian/Ubuntu 完整更新:
- 更新软件索引
- 执行 `full-upgrade`
也支持命令行调用:
- `./kejilion.sh update`
- `./kejilion.sh 更新`
### 3. 系统清理
包括:
- 清理无用软件包
- 清理软件包缓存
- 清理已删除软件的残留配置
- 清理和轮转 systemd 日志
- 不主动批量删除旧内核,保留回退能力
也支持:
- `./kejilion.sh clean`
- `./kejilion.sh 清理`
### 4. BBR 管理
提供 BBR 管理入口,但实际下载并执行第三方 `Linux-NetSpeed/tcpx.sh`
因此本地只能确认有该入口,具体支持哪些 BBR 算法和操作取决于联网下载的第三方脚本。
另外,“系统工具”中还有一套本地实现的 **BBRv3/XanMod 内核管理**
### 5. 测试脚本合集
#### IP 与解锁检测
- ChatGPT 解锁状态检测
- Region 流媒体解锁测试
- yeahwu 流媒体解锁检测
- IP 质量体检
#### 网络线路测试
- BestTrace 三网回程延迟路由测试
- MTR 三网回程线路测试
- SuperSpeed 三网测速
- NextTrace 快速回程测试
- NextTrace 指定 IP 回程测试
- ludashi2020 三网线路测试
- i-abc 多功能测速
#### 性能测试
- YABS 性能测试
- Geekbench 5 CPU 测试
- Bench 综合性能测试
- 融合怪综合测评
这些项目大多数由第三方在线脚本完成,本地项目主要提供调用入口。
---
## 二、系统工具
### 1. 设置脚本启动快捷键
- 为当前脚本设置自定义 Bash 别名
- 写入当前用户的 `~/.bashrc`
- 启动时还会尝试创建 `/usr/local/bin/k`
### 2. 修改登录密码
- 调用系统 `passwd`
- 修改当前用户密码
### 7. DNS 优化
支持:
- 国外 DNSCloudflare、Google
- 国内 DNS:阿里 DNS 等
- 同时配置 IPv4 和 IPv6 DNS
注意:实现方式是直接修改 `/etc/resolv.conf`,可能被 `systemd-resolved`、NetworkManager 或云初始化重新覆盖。
### 10. IPv4/IPv6 切换
支持:
- IPv4 优先
- IPv6 优先
实际实现更接近:
- IPv4 优先:禁用 IPv6
- IPv6 优先:重新启用 IPv6
目前是临时 `sysctl` 设置,重启后可能失效。
### 11. 查看端口占用
使用:
- `ss`
-`netstat`
- 缺少工具时尝试安装 `iproute2`
### 12. Swap 管理
可以:
- 查看当前 Swap
- 设置新的 Swap 大小
- 创建或替换 `/swapfile`
- 更新 `/etc/fstab`
- 调整失败时尝试恢复原来的 Swap
- 清理重复的 Swap 挂载配置
### 13. 用户管理
支持:
- 创建普通用户
- 创建具有 sudo 权限的用户
- 为已有用户授予 sudo
- 撤销脚本授予的 sudo
- 删除用户
- 查看用户主目录、用户组和 sudo 状态
脚本会阻止删除:
- `root`
- 当前运行脚本的用户
- 不存在或名称格式异常的用户
### 14. 用户名和密码生成器
可以生成:
- 随机用户名
- 随机英文姓名
- UUID
- 16 位随机密码
- 32 位随机密码
### 15. 系统时区管理
包含多个预设时区:
- 中国上海、中国香港
- 东京、首尔、新加坡、印度、迪拜、悉尼
- 伦敦、巴黎、柏林、莫斯科、阿姆斯特丹、马德里
- 美国西部、美国东部
- 温哥华、墨西哥城、圣保罗、布宜诺斯艾利斯
### 16. BBRv3/XanMod 管理
这是本地代码中较完整的一套 BBR 功能:
- 仅支持 Debian/Ubuntu 的 `amd64`
- 检测 CPU 的 x86-64-v1/v2/v3/v4 等级
- 添加 XanMod APT 软件源
- 安装对应等级的 XanMod 内核
- 设置 BBR 拥塞算法
- 设置 `fq_pie` 队列算法
- 更新 BBRv3/XanMod 内核
- 卸载 XanMod 内核
- 卸载前确保官方回退内核存在
- 更新 GRUB
- 操作完成后询问是否重启
也可以直接运行:
- `./kejilion.sh bbr3`
- `./kejilion.sh bbrv3`
### 18. 修改主机名
- 显示当前主机名
- 校验新主机名格式
- 使用 `hostnamectl` 修改
### 19. 系统更新源管理
支持:
- 切换阿里云源
- 切换官方源
- 备份初始更新源
- 恢复初始更新源
- 兼容传统 `.list` 和 Deb822 `.sources`
- 修改后运行 `apt-get update` 验证
- 验证失败时自动尝试回滚
### 20. Crontab 定时任务管理
支持:
- 添加每月任务
- 添加每周任务
- 添加每天任务
- 添加每小时任务
- 按关键字删除任务
- 使用 `crontab -e` 手动编辑任务
### 21. `/etc/hosts` 管理
支持:
- 查看 hosts 内容
- 添加解析
- 按关键字删除解析
添加时没有严格校验 IP 和域名格式。
### 22. Fail2Ban SSH 防护
使用 Docker 版 LinuxServer Fail2Ban
- 安装并启动 Docker
- 创建 Fail2Ban 容器
- 安装 SSH 防暴力破解配置
- 查看 SSH Jail 状态
- 查看拦截记录
- 实时查看日志
- 卸载防护程序
- 检测和处理旧版宿主机 Fail2Ban
配置目录为:
- `/path/to/fail2ban/config`
### 23. 流量限额自动关机
配合 `Limiting_Shut_down.sh`
- 设置每月流量额度
- 每分钟检查一次流量
- 分别统计接收和发送流量
- 任意一个方向达到阈值即关机
- 支持启用和停用
- 每月 1 日 01:00 重启服务器,使内核累计流量归零
需要注意:它不是维护月度流量数据库,而是依靠每月重启清零累计值。
---
## 三、命令行快捷功能
### 软件包快捷命令
支持直接调用:
- `./kejilion.sh install 软件包`
- `./kejilion.sh add 软件包`
- `./kejilion.sh remove 软件包`
- `./kejilion.sh del 软件包`
---
## 四、本地辅助文件
### `Limiting_Shut_down.sh`
负责:
- 读取 `/proc/net/dev`
- 排除回环、Docker、虚拟网桥和隧道接口
- 累计收发流量
- 达到阈值后关机
### `check_x86-64_psabi.sh`
负责检测 CPU 支持:
- x86-64-v1
- x86-64-v2
- x86-64-v3
- x86-64-v4
用于选择对应的 XanMod 内核。不过主脚本当前运行时会下载远程同名文件,而不是直接使用本地文件。
### `archive.key`
XanMod 软件源的 PGP 公钥。主脚本目前同样下载远程版本,没有直接读取本地文件。
### `sshd.local`
包含 Fail2Ban SSH Jail 配置,但当前主脚本没有引用它,应属于备用或遗留文件。
---
## 五、核实后发现的文档偏差
`app.md` 的总体描述基本符合代码,但有几项需要修正或注明:
- “系统负载”无法确认:代码显示 CPU 占用率,但没有显示标准的 Load Average。
- “开启或关闭 BBR”:本地可以确认 BBRv3 安装、更新和卸载内核;普通 BBR 的关闭功能取决于远程 `tcpx.sh`
- 流媒体检测、测速和性能测试大多是第三方脚本入口,并非本仓库自行实现。
- “每月重新统计流量”实际通过每月重启服务器清零,并非独立月度计费系统。
## 最终概括
本地项目实际提供五大类功能:
1. **VPS 系统信息、更新与清理**
2. **用户、Swap、DNS、时区、更新源等系统管理**
3. **BBR、网络线路与性能测试**
4. **Fail2Ban SSH 防护和流量限额关机**
5. **软件包与系统维护命令行快捷操作**
其中系统管理、账户、Swap、更新源、Crontab、hosts、BBRv3 和限流功能有较完整的本地实现;普通 BBR 菜单和多数测试功能主要依赖远程脚本。