📦 reinstall 一键系统重装脚本部署教程

reinstall 是一个功能强大的一键脚本,用于在 VPS 或独立服务器上重装操作系统。它支持在 Linux 和 Windows 之间任意方向重装,支持 20 多种 Linux 发行版和官方 Windows ISO,并能智能处理网络配置和驱动。


⚙️ 部署前准备

reinstall 不需要安装,它是一个即用脚本,你只需将其下载到当前的系统中即可运行。

当前系统是 Linux

通过 curlwget 下载脚本:

  • 国外服务器:

    1
    curl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh || wget -O reinstall.sh https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh
  • 国内服务器:

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

当前系统是 Windows

  1. 重要:请先暂时关闭 Windows Defender 的“实时保护”功能,否则会阻止 certutil 下载文件。

  2. 以管理员身份打开 命令提示符 (cmd),运行以下命令(根据服务器位置选择):

    • 国外:

      1
      certutil -urlcache -f -split https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.bat
    • 国内:

      1
      certutil -urlcache -f -split https://cnb.cool/bin456789/reinstall/-/git/raw/main/reinstall.bat

🚀 核心功能与使用方法

所有功能在 Linux (通过 bash reinstall.sh ...) 和 Windows (通过 reinstall.bat ...) 下均可运行。

功能 1:一键重装到 Linux

此命令会擦除整个硬盘的数据。它会提示你设置 root 密码(不设置则生成随机密码)。

1
2
3
4
5
6
7
8
9
10
11
# 基本格式
bash reinstall.sh <发行版名称> [版本号]

# 示例:重装到 Ubuntu 24.04 LTS
bash reinstall.sh ubuntu 24.04

# 示例:重装到 Debian 12
bash reinstall.sh debian 12

# 示例:重装到 AlmaLinux 9
bash reinstall.sh almalinux 9

支持的发行版包括:almalinuxrockyoraclecentosdebianubuntuopensusealpinearchgentoofedorafnos 等。

常用可选参数

  • --username USERNAME:设置用户名 (默认 root)。
  • --password PASSWORD:设置密码 (不设置则随机生成)。
  • --ssh-key KEY:设置 SSH 登录公钥 (格式:"ssh-rsa ..."github:用户名)。
  • --ssh-port PORT:修改 SSH 端口。

功能 2:DD RAW 镜像到硬盘

此方法适合安装特定定制镜像,例如 Windows 精简版。

1
bash reinstall.sh dd --img "https://example.com/你的镜像.xz"

支持 .raw.vhd 格式,可压缩为 .gz.xz.zst.tar 等。

功能 3:安装 Windows (推荐)

reinstall 可以从官方 ISO 安装 Windows,并能自动解决驱动和网络问题。

方法 A:自动查找 ISO (最方便)

1
2
3
bash reinstall.sh windows \
--image-name "Windows 11 Enterprise LTSC 2024" \
--lang zh-cn
  • --image-name:指定要安装的 Windows 版本(如 Windows 11 ProWindows Server 2022 Standard),不区分大小写。
  • --lang:指定语言,如 zh-cn (简体中文)、en-us (英文)。

方法 B:手动指定 ISO 链接

1
2
3
bash reinstall.sh windows \
--image-name "Windows 11 Enterprise LTSC 2024" \
--iso "https://go.microsoft.com/fwlink/?linkid=2289029"

如果不知道准确的 --image-name,可以先随便填,重启后连接 SSH,根据错误提示查看 ISO 内的可用映像名称。

常用可选参数

  • --username USERNAME:设置管理员用户名 (默认 administrator)。
  • --password PASSWORD:设置密码 (不设置则随机生成)。
  • --rdp-port PORT:修改 RDP 远程桌面端口。
  • --add-driver INF_OR_DIR:添加额外的驱动程序 (.inf 文件或文件夹路径)。

功能 4:重启到 Alpine Live OS (维护模式)

此功能不会擦除数据,会重启到一个 Alpine 内存系统,方便你手动进行备份、修复或 DD 操作。

1
bash reinstall.sh alpine --hold 1

功能 5:重启到 netboot.xyz (手动安装)

此功能不会擦除数据,会重启到 netboot.xyz 环境,允许你通过 VNC 手动安装更多系统。

1
bash reinstall.sh netboot.xyz

❗ 重要注意事项

  1. 数据安全:除了 alpinenetboot.xyz 功能外,所有重装操作都会清除整个硬盘的数据,请务必提前备份。
  2. 内存与硬盘要求:不同系统要求不同。例如,安装 Debian 需要 256MB 内存 + 1.5GB 硬盘;安装 Windows 11 需要 1GB 内存 + 25GB 硬盘。
  3. 不支持的环境:本脚本不支持 OpenVZ、LXC 等容器虚拟化环境,请改用 OsMutation
  4. 取消重装:如果误操作,在系统重启前运行 bash reinstall.sh reset 即可取消。
  5. 查看进度:可以通过 SSH、HTTP (80端口)、VNC 或串行控制台查看安装进度和日志。

❓ 常见问题

  • Q: 安装 Windows 后无法远程桌面 (RDP)?
    • A: 确保在重装命令中设置了 --password。首次启动后,Windows 需要几分钟配置网络和驱动。如果仍失败,尝试在用户名前加 .\,例如 .\administrator
  • Q: 静态 IP 的 VPS 重装后网络不通?
    • A: 脚本会自动检测并配置静态 IP,但某些特殊环境可能需要手动干预。你可以在重装时使用 --hold 1 参数,重启后通过 SSH 登录验证网络配置,确认无误后再手动继续安装。
  • Q: 脚本提示找不到 reinstall.sh
    • A: 确保你已正确执行了下载命令,并且当前目录 (pwd) 下存在该文件。如果网络问题导致下载失败,请检查代理或更换镜像源。
  • Q: Windows 下运行 .bat 脚本一闪而过?
    • A: 不要直接双击运行,应以管理员身份打开命令提示符 (cmd),然后在 cmd 窗口中输入 reinstall.bat 并回车执行。

更详细的参数说明、支持的系统列表和特殊环境配置,请查阅项目的 GitHub 仓库 或运行 bash reinstall.sh --help