亮点
一键安装 Linux,支持 19 种常见发行版
一键安装 Windows,使用官方 ISO 安装而非自制镜像,脚本会自动获取 ISO 链接、自动安装 Virtio 等常见驱动
支持任意方向重装,即
Linux to Linux
、Linux to Windows
、Windows to Windows
、Windows to Linux
无需填写 IP 参数,自动识别动静态,支持
/32
、/128
、网关不在子网范围内
、纯 IPv6
、双网卡
专门适配低配小鸡,比官方 netboot 需要更少的内存
全程用分区表 ID 识别硬盘,确保不会写错硬盘
支持 BIOS、EFI 引导,支持 ARM 服务器
不含自制包,所有资源均实时从镜像源获得
系统要求
原系统可以是表格中的任意系统
目标系统的配置要求如下:
系统 | 版本 | 内存 | 硬盘 |
| 3.19, 3.20, 3.21, 3.22 | 256 MB | 1 GB |
| 9, 10, 11, 12, 13 | 256 MB | 1 ~ 1.5 GB ^ |
Kali | 滚动 | 256 MB | 1 ~ 1.5 GB ^ |
| 16.04 LTS - 24.04 LTS, 25.04 | 512 MB * | 2 GB |
| 7, 8, 23 | 512 MB * | 5 GB |
| 8, 9, 10 (如果有) | 512 MB * | 5 GB |
| 8, 9, Stream 23 | 512 MB * | 5 GB |
| 9, 10 | 512 MB * | 5 GB |
| 41, 42 | 512 MB * | 5 GB |
| 20.03 LTS - 24.03 LTS, 25.03 | 512 MB * | 5 GB |
| Leap 15.6, Tumbleweed (滚动) | 512 MB * | 5 GB |
| 25.05 | 512 MB | 5 GB |
| 滚动 | 512 MB | 5 GB |
| 滚动 | 512 MB | 5 GB |
| 滚动 | 512 MB | 5 GB |
| 公测 | 512 MB | 8 GB |
| 任何 | 512 MB | 取决于镜像 |
| Vista, 7, 8.x (Server 2008 - 2012 R2) | 512 MB | 25 GB |
| 10, 11 (Server 2016 - 2025) | 1 GB | 25 GB |
* 表示使用云镜像安装,非传统网络安装
^ 表示需要 256 MB 内存 + 1.5 GB 硬盘,或 512 MB 内存 + 1 GB 硬盘
Warning
❌ 本脚本不支持 OpenVZ、LXC 虚拟机
请改用https://github.com/LloydAsp/OsMutation
一、 项目核心定位与解决的需求
核心定位:一个纯净、高效、可高度自定义的服务器操作系统网络安装(Net-Reinstall)脚本。
它解决了什么痛点?
服务商自带系统不纯净:很多 VPS 服务商提供的模板系统可能预装了监控agent、推广软件或进行了其他修改。使用此脚本可以重装为一个绝对纯净的原版系统。
服务商不支持想要的系统:某些服务商可能不提供特定的 Linux 发行版(如 Alpine, Ubuntu 某特定版本)或特定版本的 Windows。此脚本可以突破这个限制。
批量快速部署:对于需要给大量服务器安装相同配置系统的场景,自动化脚本比手动点击效率高无数倍。
救援与重装:当服务器系统崩溃无法启动时,可以通过 VNC/IPMI 等方式进入救援模式,使用此脚本重新安装系统。
二、 主要功能与特点
支持广泛的系统
Linux:主流的发行版几乎全部支持,如 Debian, Ubuntu, CentOS, AlmaLinux, Rocky Linux, Fedora, Oracle Linux, Kali Linux, Arch Linux 等。
Windows:支持 Windows 7, 8, 10, 11 和 Windows Server 系列。这是非常罕见且强大的功能,通常需要自己提供镜像链接。
其他:甚至支持一些轻量级或小众系统,如 Alpine Linux, OpenWrt, Tiny Core Linux 等。
高度自定义安装
纯净官方源:默认使用各Linux发行版的官方镜像源,保证系统纯净。
自定义密码:可以预设 root 用户密码或普通用户密码。
自定义端口:可以预设 SSH 端口号,增强安全性或满足特定需求。
自定义分区:支持在安装时使用自定义的分区方案(如
-p
参数)。静态IP配置:对于内网环境或无DHCP的环境,可以预先配置好静态IP地址、网关和DNS。
使用方便,一键执行
通常只需要一行命令,通过
-v
指定版本号,-p
设置密码等参数,即可开始全自动安装。示例:
bash <(wget --no-check-certificate -qO- 'https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh') -p 123456 -v 11
(安装 Debian 11, root 密码为 123456)
技术支持丰富
支持多种虚拟化技术(VirtIO, SCSI, NVMe)的磁盘驱动,兼容性好。
支持在多种架构上运行(如 x86_64, ARM64)。
提供详细的安装日志,方便排查问题。
三、 工作原理简介
这个脚本的工作原理是基于Linux 网络安装(Netboot)和QEMU/KVM等技术,其大致流程如下:
引导一个小型救援系统:脚本首先会下载并引导一个极简的 Linux 系统(如 Alpine Linux)到内存中运行。这个系统独立于你原来的硬盘。
准备安装环境:在内存中的救援系统里,脚本会下载必要的工具和目标系统的安装镜像。
配置安装参数:根据你提供的命令参数(密码、端口、IP等),脚本会生成自动应答文件(如 preseed.cfg for Debian/Ubuntu, kickstart.cfg for Red Hat系),实现安装过程无人值守。
执行安装:使用
qemu-system-x86_64
等工具,模拟一个虚拟机环境,将目标系统安装到真实的物理硬盘上。这个过程会格式化原有硬盘。重启进入新系统:安装完成后,脚本会自动重启服务器,并从硬盘启动全新的系统。
四、 使用方法(简要)
极度警告:此脚本会完全擦除你的服务器硬盘数据!请确保数据已备份!并在非生产环境测试后再使用!
通过 SSH 连接到你的服务器(VPS)。
获取 root 权限:
sudo -i
或直接以 root 用户登录。
下载并执行脚本(以安装 Debian 12 为例):
3.
# 最基本用法,安装最新的 Debian,密码为 123456
bash <(wget --no-check-certificate -qO- 'https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh') -d 12 -p 123456
# 更多自定义示例:安装 Ubuntu 22.04, 密码 123456, 端口 2222
bash <(wget --no-check-certificate -qO- 'https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh') -u 22.04 -p 123456 -port 2222
等待脚本自动运行,期间服务器会重启。安装时间取决于系统大小和网络速度。
使用新密码和端口通过 SSH 重新连接服务器。
常用参数:
-d
: 安装 Debian-u
: 安装 Ubuntu-c
: 安装 CentOS-v
: 指定版本号 (如11
,22.04
)-p
: 设置 root 密码-port
: 设置 SSH 端口-a
: 自动模式(使用所有默认设置)-mirror
: 自定义镜像源
使用-h
参数可以查看完整的帮助信息。
五、 适用场景与用户
VPS 玩家和个人用户:快速更换系统,尝试不同的 Linux 发行版。
运维工程师:批量部署相同环境的测试机或生产服务器。
网络安全人员:快速搭建和恢复测试环境(如 Kali Linux)。
追求纯净系统的用户:摆脱服务商的定制系统。
六、 风险与注意事项
数据丢失风险:脚本会格式化所有硬盘!执行前必须确认已备份所有重要数据。
服务商政策:部分 VPS 服务商可能不允许或会对频繁重装系统进行限制,请遵守服务商条款。
兼容性问题:虽然兼容性很好,但仍有极小的概率在某些特殊硬件或虚拟化平台上失败。
网络依赖:整个安装过程需要从网络下载镜像,如果服务器网络不稳定或镜像源速度慢,可能会导致安装失败或耗时很长。
总结来说,bin456789/reinstall 是一个功能强大到令人惊叹的“瑞士军刀”,它极大地简化了服务器系统安装的流程,赋予了用户最大的灵活性和控制权。但正如所有强大的工具一样,使用它时必须保持谨慎,充分理解其背后的风险。
下载(当前系统是
Linux)
国外服务器: 国内服务器:curl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh || wget -O reinstall.sh $_
curl -O https://cnb.cool/bin456789/reinstall/-/git/raw/main/reinstall.sh || wget -O reinstall.sh $_
下载(当前系统是
Windows)
Important
请先关闭Windows Defender
的实时保护
功能。该功能会阻止certutil
下载任何文件。
解决 Windows 7 下无法下载脚本
国外服务器: 国内服务器:certutil -urlcache -f -split https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.bat
certutil -urlcache -f -split https://cnb.cool/bin456789/reinstall/-/git/raw/main/reinstall.bat
使用
所有功能都可在 Linux / Windows 下运行
Linux 下运行
bash reinstall.sh ...
Windows 下先运行
cmd
,再运行reinstall.bat ...
如果参数中的链接包含特殊字符,要用
""
将链接包起来,不能用''
功能 1: 安装
Linux
用户名
root
默认密码123@@@
安装最新版可不输入版本号
最大化利用磁盘空间:不含 boot 分区(Fedora 例外),不含 swap 分区
自动根据机器类型选择不同的优化内核,例如
Cloud
、HWE
内核安装 Red Hat 时需填写https://access.redhat.com/downloads/content/rhel得到的
qcow2
镜像链接,也可以安装其它类 RHEL 系统,例如Alibaba Cloud Linux
和TencentOS Server
重装后如需修改 SSH 端口或者改成密钥登录,注意还要修改
/etc/ssh/sshd_config.d/
里面的文件
可选参数
--password PASSWORD
设置密码--ssh-key KEY
设置 SSH 登录公钥,支持以下格式。当使用公钥时,密码为空
--ssh-key "ssh-rsa ..."
--ssh-key "ssh-ed25519 ..."
--ssh-key "ecdsa-sha2-nistp256/384/521 ..."
--ssh-key http://path/to/public_key
--ssh-key github:your_username
--ssh-key gitlab:your_username
--ssh-key /path/to/public_key
--ssh-key C:\path\to\public_key
--ssh-port PORT
修改 SSH 端口(安装期间观察日志用,也作用于新系统)--web-port PORT
修改 Web 端口(安装期间观察日志用)--frpc-toml /path/to/frpc.toml
添加 frpc 内网穿透--hold 2
安装结束后不重启,此时可以 SSH 登录修改系统内容,系统挂载在/os
(此功能不支持 Debian/Kali)
Tip
安装 Debian/Kali 时,x86 可通过商家后台 VNC 查看安装进度,ARM 可通过串行控制台查看安装进度。
安装其它系统时,可通过多种方式(SSH、HTTP 80 端口、商家后台 VNC、串行控制台)查看安装进度。
即使安装过程出错,也能通过 SSH 运行/trans.sh alpine
安装到 Alpine。
实验性功能
ARM 安装 Windows 的注意事项
大部分 ARM 机器都支持安装最新版 Windows 11
安装过程可能会黑屏,串行控制台可能会显示ConvertPages: failed to find range
,均不影响正常安装
兼容性 | 云服务商 | 实例类型 | 问题 |
✔️ | Azure | B2pts_v2 | |
✔️ | 阿里云 | g6r, c6r | |
✔️ | 阿里云 | g8y, c8y, r8y | 有几率重启时卡开机 Logo,强制重启即可 |
✔️ | AWS | T4g | |
✔️ | Scaleway | COPARM1 | |
✔️ | Gcore | ||
❔ | 甲骨文云 | A1.Flex | 不一定能安装成功,越新创建的实例越容易成功 |
❌ | 谷歌云 | t2a | 缺少网卡驱动 |
甲骨文云加载显卡驱动
如何修改脚本自用
Fork 本仓库
修改
reinstall.sh
和reinstall.bat
开头的confhome
和confhome_cn
修改其它代码
本文链接:https://www.kinber.cn/post/5539.html 转载需授权!
推荐本站淘宝优惠价购买喜欢的宝贝: