Files
swapbuilder/README.md
T

92 lines
2.6 KiB
Markdown
Raw 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.
# Swap Builder
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
GNU/Linux Swap 一键管理工具 — 交互式设置 Swap 与 swappiness,兼容主流发行版。
## 快速开始
```bash
curl -sSL swap.fangqihang.cn/install.sh | sudo bash
```
复制到终端即可启动交互式 Swap 管理工具。
## 功能特性
- **Swap 大小设置** — 支持创建、调整、关闭 Swap 文件,自动检测磁盘空间,兼容 `fallocate` / `dd` 两种创建方式,自动写入 `/etc/fstab` 实现开机自启
- **swappiness 调节** — 灵活调整内核 swappiness 参数(0~100),控制 Swap 使用策略,修改后自动持久化到 `/etc/sysctl.conf`,重启不失效
- **安全防护机制** — 操作前自动备份 `/etc/fstab`,严格输入校验,关键操作二次确认,所有修改均可回滚
- **实时状态展示** — 菜单界面实时显示当前 Swap 设备、内存使用量、swappiness 值
- **彩色交互界面** — 终端彩色输出,菜单式选择无需记忆命令
## 系统兼容性
| 操作系统 | 适配版本 |
|---------|---------|
| CentOS | 7 / 8 / 9 |
| Ubuntu | 18.04 / 20.04 / 22.04 / 24.04 |
| Debian | 10 / 11 / 12 |
| Anolis OS(龙蜥) | 8 / 23 |
| AlmaLinux | 8 / 9 / 10 |
| Rocky Linux | 8 / 9 / 10 |
| openEuler(开源欧拉) | 20 ~ 25 |
## 使用说明
### 一键执行(推荐)
```bash
curl -sSL swapbuilder.fangqihang.cn/install.sh | sudo bash
```
直接管道运行,自动进入交互式菜单。
### 手动下载运行
```bash
# 下载脚本
curl -sSL swapbuilder.fangqihang.cn/install.sh -o swapbuilder.sh
# 添加执行权限
chmod +x swapbuilder.sh
# 以 root 运行
sudo bash swapbuilder.sh
```
先下载到本地查看源码,确认安全后再执行,适合生产环境。
## 运行效果
```
==================================================
Swap Builder - Swap 管理工具
==================================================
夏日之瓜 × 仰望星辰工作室 出品
==================================================
---------- 当前系统状态 ----------
[Swap 设备]
NAME TYPE SIZE USED PRIO
/www/swap file 4G 1.2G -2
[内存使用]
total used free shared buff/cache available
Mem: 1.8Gi 972Mi 593Mi 3.0Mi 463Mi 898Mi
Swap: 4.0Gi 1.2Gi 2.8Gi
[swappiness] 当前值:70
-----------------------------------
请选择操作:
1) 设置 Swap
2) 设置优先度(swappiness
0) 退出
请输入选项 [0-2]:
```
## 开源协议
本项目采用 [MIT License](LICENSE) 开源。欢迎 Star、Fork 与提交 Issue。