一键 VPS 系统重装脚本 English
介绍
一键重装到 Linux,支持 19 种常见发行版
一键重装到 Windows,使用官方原版 ISO 而非自制镜像,脚本支持自动查找 ISO 链接、自动安装 VirtIO 等公有云驱动
支持任意方向重装,即 Linux to Linux、Linux to Windows、Windows to Windows、Windows to Linux
自动设置 IP,智能设置动静态,支持 /32、/128、网关不在子网范围内、纯 IPv6、IPv4/IPv6 在不同的网卡
专门适配低配小鸡,比官方 netboot 需要更少的内存
全程用分区表 ID 识别硬盘,确保不会写错硬盘
支持 BIOS、EFI 引导,支持 ARM 服务器
不含自制包,所有资源均实时从镜像源
系统要求
原系统可以是表格中的任意系统
目标系统的配置要求如下:
* 表示使用云镜像安装,非传统网络安装
^ 表示需要 256 MB 内存 + 1.5 GB 硬盘,或 512 MB 内存 + 1 GB 硬盘
Warning
本脚本理论上支持独服和 PC
但如果能使用 IPMI 或 U 盘,则不建议使用本脚本
国外服务器:
curl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh || wget -O ${_##*/} $_
国内服务器:
curl -O https://cnb.cool/bin456789/reinstall/-/git/raw/main/reinstall.sh || wget -O ${_##*/} $_
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 ...- 如果参数中的链接包含特殊字符,要用
""将链接包裹起来,不能用''
- 如果参数中的链接包含特殊字符,要用
Caution
此功能会清除当前系统整个硬盘的全部数据(包含其它分区)!
数据无价,请三思而后行!
- 用户名为
root,脚本会提示输入密码,不输入则使用随机密码 - 安装最新版可不输入版本号
- 最大化利用磁盘空间:不含 boot 分区(Fedora 例外),不含 swap 分区
- 自动根据机器类型选择不同的优化内核,例如
Cloud、HWE内核 - 安装 Red Hat 时需填写 https://access.redhat.com/downloads/content/rhel 得到的
qcow2镜像链接,也可以安装其它类 RHEL 系统的qcow2,例如Alibaba Cloud Linux和TencentOS Server - 重装后如需修改 SSH 端口或者改成密钥登录,注意还要修改
/etc/ssh/sshd_config.d/里面的文件
bash reinstall.sh anolis 7|8|23
rocky 8|9|10
oracle 8|9|10
almalinux 8|9|10
opencloudos 8|9|23
centos 9|10
fnos 1
nixos 25.11
fedora 42|43
debian 9|10|11|12|13
alpine 3.20|3.21|3.22|3.23
opensuse 15.6|16.0|tumbleweed
openeuler 20.03|22.03|24.03|25.09
ubuntu 16.04|18.04|20.04|22.04|24.04|25.10 [--minimal]
kali
arch
gentoo
aosc
redhat --img="http://access.cdn.redhat.com/xxx.qcow2"
可选参数
--password PASSWORD设置密码--ssh-key KEY设置 SSH 登录公钥,格式如下。当使用公钥时,密码为空--ssh-port PORT修改 SSH 端口(安装期间观察日志用,也作用于新系统)--web-port PORT修改 Web 端口(安装期间观察日志用)--frpc-toml PATH添加 frpc 内网穿透,参数填本地路径或 HTTP 链接--hold 1仅重启到安装环境,不运行安装,用于 SSH 登录验证网络连通性--hold 2安装结束后不重启,用于 SSH 登录修改系统内容,Debian/Kali 会挂载在/target,其它系统会挂载在/os
Tip
可通过多种方式(SSH、HTTP 80 端口、商家后台 VNC、串行控制台)查看安装进度。
即使安装过程出错,也能连接 SSH 手动救砖。
目标系统非 Debian/Kali 时,可以运行 /trans.sh alpine 自动救砖成 Alpine 系统。
实验性功能
功能 2: DD RAW 镜像到硬盘
Caution
此功能会清除当前系统整个硬盘的全部数据(包含其它分区)!
数据无价,请三思而后行!
- 支持
raw和固定大小的vhd镜像。未压缩或者压缩成.gz.xz.zst.tar.tar.gz.tar.xz.tar.zst - DD Windows 镜像时,会自动扩展系统盘,静态 IP 的机器会配置好 IP,可能首次开机几分钟后才生效
- DD Linux 镜像时,不会修改镜像的任何内容
bash reinstall.sh dd --img "https://example.com/xxx.xz"
可选参数
--allow-ping设置 Windows 防火墙允许被 Ping (仅限 DD Windows)--rdp-port PORT修改 RDP 端口 (仅限 DD Windows)--ssh-port PORT修改 SSH 端口(安装期间观察日志用)--web-port PORT修改 Web 端口(安装期间观察日志用)--frpc-toml PATH添加 frpc 内网穿透(仅限 DD Windows),参数填本地路径或 HTTP 链接--hold 1仅重启到安装环境,不运行安装,用于 SSH 登录验证网络连通性--hold 2DD 结束后不重启,用于 SSH 登录修改系统内容,Windows 系统会挂载在/os,Linux 系统不会自动挂载
Tip
可通过多种方式(SSH、HTTP 80 端口、商家后台 VNC、串行控制台)查看安装进度。
即使安装过程出错,也能连接 SSH 手动救砖
也可以运行 /trans.sh alpine 自动救砖成 Alpine 系统。
- 可用 ssh 连接,进行备份/恢复硬盘、手动 DD、修改分区、手动安装 Alpine 等操作
- 用户名为
root,脚本会提示输入密码,不输入则使用随机密码
Tip
虽然运行的脚本叫 reinstall,但是此功能不会删除任何数据和进行自动重装,而是要用户手动操作
如果用户手动操作没有破坏原系统,再次重启将回到原系统
bash reinstall.sh alpine --hold 1
可选参数
--password PASSWORD设置密码--ssh-port PORT修改 SSH 端口--ssh-key KEY设置 SSH 登录公钥,格式如下。当使用公钥时,密码为空--frpc-toml PATH添加 frpc 内网穿透,参数填本地路径或 HTTP 链接
- 可使用商家后台 VNC 手动安装 更多系统
Tip
虽然运行的脚本叫 reinstall,但是此功能不会删除任何数据和进行自动重装,而是要用户手动操作
如果用户手动操作没有破坏原系统,再次重启将回到原系统
bash reinstall.sh netboot.xyz
Caution
此功能会清除当前系统整个硬盘的全部数据(包含其它分区)!
数据无价,请三思而后行!
- 用户名为
administrator,脚本会提示输入密码,不输入则使用随机密码 - 如果远程登录失败,可以尝试使用用户名
.\administrator - 静态机器会自动配置好 IP,可能首次开机几分钟后才生效
- 支持任意语言的 ISO
- 支持绕过 Windows 11 硬件限制
支持的系统
- Windows (Vista ~ 11)
- Windows Server (2008 ~ 2025)
- Windows Server Essentials *
- Windows Server (Semi) Annual Channel *
- Hyper-V Server *
- Azure Local (Azure Stack HCI) *
方法 1: 让脚本自动查找 ISO
- 脚本会从 https://massgrave.dev/genuine-installation-media 查找 ISO,该网站专门提供官方 ISO 下载
- 上面带 * 的系统不支持自动查找 ISO
bash reinstall.sh windows \
--image-name "Windows 11 Enterprise LTSC 2024" \
--lang zh-cn
支持的语言
方法 2: 自行指定 ISO 连接
- 如果不知道
--image-name,可以随便填,在重启后连接 SSH,根据错误提示重新输入正确的值
bash reinstall.sh windows \
--image-name "Windows 11 Enterprise LTSC 2024 Evaluation" \
--iso "https://go.microsoft.com/fwlink/?linkid=2289029"
或者磁力链接
bash reinstall.sh windows \
--image-name "Windows 11 Enterprise LTSC 2024" \
--iso "magnet:?xt=urn:btih:7352bd2db48c3381dffa783763dc75aa4a6f1cff"
以下网站可找到 ISO 链接
可选参数
--password PASSWORD设置密码--allow-ping设置 Windows 防火墙允许被 Ping--rdp-port PORT更改 RDP 端口--ssh-port PORT修改 SSH 端口(仅安装期间观察日志用)--web-port PORT修改 Web 端口(仅安装期间观察日志用)--add-driver INF_OR_DIR添加额外驱动,填写 .inf 路径,或者 .inf 所在的文件夹- 需先下载驱动到当前系统
- 可多次设置该参数以添加不同的驱动
--frpc-toml PATH添加 frpc 内网穿透,参数填本地路径或 HTTP 链接--hold 1仅重启到安装环境,不运行安装,用于 SSH 登录验证网络连通性--hold 2用于在进入 Windows 官方安装程序之前,SSH 登录修改boot.wim、install.wim或者其它内容,硬盘挂载在/os
以下驱动会自动按需下载安装,无需手动添加
- VirtIO (社区版, 阿里云, 腾讯云, GCP)
- XEN (
社区版(未签名), Citrix, AWS) - AWS (ENA 网卡, NVME 存储控制器)
- GCP (gVNIC 网卡, GGA 显卡)
- Azure (MANA 网卡)
- Intel (VMD 存储控制器, 网卡: 7, 8, 8.1, 10, 11, 2008 R2, 2012, 2012 R2, 2016, 2019, 2022, 2025)
如何填写映像名称 --image-name
一个 ISO 通常包含多个系统版本,例如家庭版、专业版。因此需要用 --image-name 指定要安装的系统版本(映像名称),不区分大小写
可以用 DISM、DISM++、Wimlib 等工具查询 ISO 包含的映像名称
常用的映像名称有:
Windows 7 Ultimate
Windows 11 Pro
Windows 11 Enterprise LTSC 2024
Windows Server 2025 SERVERDATACENTER
如何用 DISM++ 查询 ISO 包含的映像名称
打开文件菜单 > 打开映像文件,选择要安装的 iso,即可得到映像名称,所有映像名称都可以安装
Warning
Vista (Server 2008) 和 32 位系统可能会缺少驱动
Warning
安装 Windows 7 (Server 2008 R2) 时
-
EFI 引导的机器要开启 CSM
-
Hyper-V (Azure) 需选择第 1 代虚拟机 https://learn.microsoft.com/windows-server/virtualization/hyper-v/plan/should-i-create-a-generation-1-or-2-virtual-machine-in-hyper-v
Warning
Windows 10 LTSC 2021 中文版镜像 zh-cn_windows_10_enterprise_ltsc_2021_x64_dvd_033b7312.iso 的 wsappx 进程会长期占用 CPU
解决方法是更新系统补丁,或者手动安装 VCLibs 库 https://www.google.com/search?q=ltsc+wsappx
Warning
在 GCP 上安装 2022年5月 和之后发布的 Windows ISO,在引导 Windows 安装界面 (PE) 时会不断反复重启。解决方法如下,二选一
-
添加
--force-boot-mode bios参数,脚本将以BIOS 引导 + MBR 分区表方式安装 Windows(可选) 安装完成后用
MBR2GPT /convert /allowFullOS命令转为EFI 引导 + GPT 分区表 -
自制 RAW 镜像并通过 DD 安装
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 | 缺少网卡驱动 |






暂无评论内容