Reinstall:一键VPS系统重装脚本,支持Linux/Windows,19+发行版


项目简介

Reinstall 是一个一键 VPS 系统重装脚本,由开发者 bin456789 维护。它支持一键重装到 Linux(19 种常见发行版)或 Windows(使用官方原版 ISO),支持任意方向重装(Linux to Linux、Linux to Windows、Windows to Windows、Windows to Linux),自动设置 IP 地址,专门适配低配小机。

项目开源地址:https://github.com/bin456789/reinstall


核心特性

  • 一键重装到 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 服务器
  • 不含自制包 — 所有资源均实时从镜像源获得

系统要求

原系统可以是表格中的任意系统。目标系统的配置要求:

系统 版本 最低内存 最低硬盘
Alpine 3.21 – 3.24 256 MB 1 GB
Debian 9 – 13 256 MB 1 – 1.5 GB
Kali 滚动 256 MB 1 – 1.5 GB
Ubuntu 18.04 LTS – 26.04 LTS 512 MB 2 GB
Anolis(阿里龙蜥) 7, 8, 23 512 MB 5 GB
RHEL / AlmaLinux / Rocky / Oracle 8, 9, 10 512 MB 5 GB
Fedora 43, 44 512 MB 5 GB
Arch 滚动 512 MB 5 GB
Gentoo 滚动 512 MB 5 GB
NixOS 26.05 512 MB 5 GB
openSUSE Leap 16.0 / Tumbleweed 512 MB 5 GB
Windows (DD 镜像) 任何 512 MB 取决于镜像
Windows (ISO) Vista-7-8 Vista – 8.x, Server 2008 – 2012 R2 512 MB 25 GB
Windows (ISO) 10-11 10 – 11, Server 2016 – 2025 1 GB 25 GB

注意:本脚本不支持 OpenVZ、LXC 虚拟机,这类环境请改用 OsMutation


下载脚本

当前系统为 Linux

国外服务器使用:

curl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh

国内服务器使用(加速源):

curl -O https://cnb.cool/bin456789/reinstall/-/git/raw/main/reinstall.sh

当前系统为 Windows

重要提示:

  • 下载前请先关闭 Windows Defender 的实时保护功能(它会把 certutil 干的事全拦了)
  • Windows 7 可能因 TLS 1.2 / SHA-256 / 根证书问题无法下载,手动用 IE 下载 reinstall.bat 即可

国外服务器使用:

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 ...
  • Windows 下如果参数中的链接包含特殊字符,用双引号 "" 包裹链接,不能用单引号

功能 1:一键重装到 Linux(最常用)

使用步骤

Step 1 — 下载脚本:

curl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh

Step 2 — 选择发行版运行:

不输入版本号则安装最新版,脚本会提示输入用户名和密码(不输则用 root + 随机密码)。

# Debian 系列
bash reinstall.sh debian            # 最新版
bash reinstall.sh debian 12          # Debian 12
bash reinstall.sh ubuntu 24.04       # Ubuntu 24.04 LTS

# RHEL 系列
bash reinstall.sh rocky 9            # Rocky Linux 9
bash reinstall.sh almalinux 9        # AlmaLinux 9
bash reinstall.sh centos 10          # CentOS Stream 10

# 轻量级
bash reinstall.sh alpine 3.24        # Alpine Linux
bash reinstall.sh arch               # Arch Linux
bash reinstall.sh gentoo             # Gentoo

# 国产发行版
bash reinstall.sh anolis 23          # 阿里龙蜥
bash reinstall.sh opencloudos 9      # 腾讯 OpenCloudOS
bash reinstall.sh openeuler 24.03    # 华为 openEuler

# 滚动发行版
bash reinstall.sh kali               # Kali Linux
bash reinstall.sh opensuse tumbleweed

完整支持列表

anolis      7|8|23         阿里龙蜥
rocky       8|9|10         Rocky Linux
oracle      8|9|10         Oracle Linux
almalinux   8|9|10         AlmaLinux
opencloudos 8|9|23         OpenCloudOS
centos      9|10           CentOS Stream
fnos        1              飞牛 fnOS
fygoos      1              FygoOS
nixos       26.05          NixOS
fedora      43|44          Fedora
debian      9|10|11|12|13  Debian
opensuse    16.0|tumble     openSUSE
openeuler   20.03|22.03|   24.03 openEuler
alpine      3.21|3.22|3.   23|3.24 Alpine
ubuntu      18.04..26.04   Ubuntu (加 --minimal 最小安装)
kali        滚动           Kali Linux
arch        滚动           Arch Linux
gentoo      滚动           Gentoo
aosc        滚动           安同 OS
redhat      --img="url.q   cow2" Red Hat

可选参数详解

--username "myuser"     # 设置用户名(不设则 root)
--password "mypass"     # 设置密码(不设则随机)
--ssh-key "ssh-ed25519 .  .."  # SSH 公钥(使用公钥时密码为空)
--ssh-port 2222         # 修改 SSH 端口
--web-port 8888         # 修改安装日志 Web 端口(默认 80)
--hold 1                # 仅到安装环境,不运行安装(测试用)
--hold 2                # 安装后不重启(修改系统用)

注意:

  • 此功能会清除整个硬盘全部数据(包含其它分区)
  • 如果不小心运行了脚本,可以在重启前运行 bash reinstall.sh reset 取消
  • 脚本会自动根据机器类型和商家安装优化内核
  • 安装 Red Hat 时需填写从 Red Hat 官网获取的 qcow2 镜像链接

功能 2:DD RAW 镜像到硬盘

使用步骤

Step 1 — 下载脚本:

curl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh

Step 2 — 执行 DD:

bash reinstall.sh dd --img "https://example.com/windows-server-2022.xz"

说明

  • 支持 raw 和固定大小 vhd 镜像,支持 .gz / .xz / .zst / .tar / .tar.gz / .tar.xz / .tar.zst 压缩格式
  • DD Windows 镜像时自动扩展系统盘,静态 IP 机器自动配置好 IP(可能首次开机几分钟后才生效)
  • DD Linux 镜像时不会修改镜像的任何内容

可选参数

--username USERNAME    # 用户名(安装期间 SSH 登录用)
--password ***         # 密码
--ssh-key KEY          # SSH 公钥
--rdp-port PORT        # 修改 RDP 端口(仅 DD Windows)
--allow-ping           # 允许被 Ping(仅 DD Windows)
--cloud-data PATH_URL  # 为 DD Linux 注入 cloud-init 配置

功能 3:重启到 Alpine Live OS(内存系统)

使用步骤

bash reinstall.sh alpine --hold 1

说明

  • 重启后会进入 Alpine 内存系统,可用 SSH 连接进行操作
  • 适合手动备份/恢复硬盘、手动 DD、修改分区、手动安装 Alpine 等场景
  • 此功能不会自动重装,如果不动原系统,再次重启将回到原系统
  • 可设置 –username、–password、–ssh-key 等参数

功能 4:重启到 netboot.xyz

使用步骤

bash reinstall.sh netboot.xyz

说明

  • 重启到 netboot.xyz 网络引导界面
  • 通过商家后台 VNC 可手动安装更多系统
  • 此功能不会自动重装,如果不动原系统,再次重启将回到原系统

功能 5:一键重装到 Windows(ISO 安装)

方法一:让脚本自动查找 ISO(推荐)

脚本会从 massgrave.dev 自动查找官方 ISO 链接。仅支持 Windows 10、11、Server 2019 / 2022 / 2025。

bash reinstall.sh windows --image-name "Windows 11 Pro" --lang zh-cn

如果不确定 image-name,可以随便填,重启后 SSH 登录查看错误提示。

支持的语言包括:zh-cn(中文简体)、zh-hk(中文香港)、zh-tw(中文繁体)、en-us(英语)、ja-jp(日语)、ko-kr(韩语)等 36 种语言。

方法二:自行指定 ISO 链接

支持 HTTP/HTTPS 链接:

bash reinstall.sh windows --image-name "Windows 11 Enterprise LTSC 2024" --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"

支持的 Windows 版本

  • Windows Vista / 7 / 8.x / 10 / 11
  • Windows Server 2008 / 2008 R2 / 2012 / 2012 R2 / 2016 / 2019 / 2022 / 2025
  • Windows Server Essentials
  • Windows Server Semi Annual Channel
  • Hyper-V Server
  • Azure Local (Azure Stack HCI)

可选参数

--username USERNAME      # 用户名(不设则 administrator)
--password ***           # 密码(不设则随机)
--rdp-port PORT          # 修改 RDP 端口
--ssh-port PORT          # 安装日志 SSH 端口
--web-port PORT          # 安装日志 Web 端口
--allow-ping             # 允许被 Ping(防火墙)
--add-driver INF_OR_DIR  # 添加额外的驱动(.inf 文件或文件夹路径)

常用 image-name 示例

Windows 7 Ultimate
Windows 11 Pro
Windows 11 Enterprise LTSC 2024
Windows Server 2025 SERVERDATACENTER

自动安装的驱动

  • VirtIO — 社区版、阿里云、腾讯云、GCP
  • XEN — Citrix、AWS
  • AWS — ENA 网卡、NVME 存储控制器
  • GCP — gVNIC 网卡、GGA 显卡
  • Azure — MANA 网卡
  • Intel — VMD 存储控制器、网卡驱动

注意事项

  • 如果远程登录失败,尝试在用户名前加 .\,例如 .dministrator
  • 部分语言的管理员账号不是 administrator,具体参考官方文档
  • 安装 Windows 7 时,EFI 引导的机器需要开启 CSM
  • 自动绕过 Windows 11 硬件限制
  • ARM 机器支持安装 Windows 11

查看安装进度

可通过多种方式查看安装进度:

  • SSH — 连接服务器查看日志
  • HTTP 80 端口 — 浏览器访问服务器 IP 即可
  • VNC — 商家后台提供的 VNC 控制台
  • 串行控制台 — 适合没有 VNC 的机器

即使安装过程出错,也能连接 SSH 手动救砖。目标系统非 Debian/Kali 时,可以运行 /trans.sh alpine 自动救砖成 Alpine 系统。


取消重装

如果不小心运行了脚本,在重启之前运行以下命令可取消:

bash reinstall.sh reset

SSH 公钥格式

--ssh-key "ssh-rsa AAAAB3NzaC1yc2E..."
--ssh-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5..."
--ssh-key "ecdsa-sha2-nistp256 AAAA..."
--ssh-key http://path/to/public_key
--ssh-key github:your_github_username
--ssh-key gitlab:your_gitlab_username
--ssh-key /path/to/local/public_key
--ssh-key C:\path\to\public_key

使用旧版本

如果新版本脚本出现问题,可以尝试旧版本:

commit_id=xxxxxxxx  # 从 GitHub Commit 历史找到旧版本的 commit id
curl -O https://raw.githubusercontent.com/bin456789/reinstall/$commit_id/reinstall.sh
sed -i "/^confhome.*main$/s/main/$commit_id/" reinstall.sh
bash reinstall.sh ...

如何修改脚本自用

  1. Fork 本仓库
  2. 修改 reinstall.shreinstall.bat 开头的 confhomeconfhome_cn
  3. 修改其它代码
  4. 下载并运行自己的脚本

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享