一键DD/重装脚本

亮点

  • 一键安装 Linux,支持 17 种常见发行版
  • 一键安装 Windows,使用官方 ISO 安装而非自制镜像,脚本会自动获取 ISO 链接、自动安装 Virtio 等驱动
  • 支持任意方向重装,即 Linux to LinuxLinux to WindowsWindows to WindowsWindows to Linux
  • 无需填写 IP 参数,自动识别动静态,支持 /32/128网关不在子网范围内纯 IPv6双网卡 等特殊网络
  • 专门适配低配小鸡,比官方 netboot 需要更少的内存
  • 全程用分区表 ID 识别硬盘,确保不会写错硬盘
  • 支持 BIOS、EFI 引导,支持 ARM 服务器
  • 不含自制包,所有资源均实时从镜像源获得
  • 有很多注释

下载(当前系统是Linux)

国外服务器:

curl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh || wget -O reinstall.sh $_

国内服务器:

curl -O https://jihulab.com/bin456789/reinstall/-/raw/main/reinstall.sh || wget -O reinstall.sh $_

下载(当前系统是Windows)

[!IMPORTANT]
请先关闭 Windows Defender实时保护 功能。该功能会阻止 certutil 下载任何文件。

解决 Windows 7 下无法下载脚本

由于不支持 TLS 1.2、SHA-256、根证书没有更新等原因,Vista,7 和 Server 2008 (R2) 可能无法自动下载脚本,因此需要手动下载,具体操作如下:

用 IE 下载 (先在 IE 高级设置里启用 TLS 1.2),或者通过远程桌面,将这两个文件保存到同一个目录

使用时运行下载的 reinstall.bat

国外服务器:

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

国内服务器:

certutil -urlcache -f -split https://jihulab.com/bin456789/reinstall/-/raw/main/reinstall.bat

使用

所有功能 都可在 Linux / Windows 下运行

  • Linux 下运行 bash reinstall.sh
  • Windows 下运行 .\reinstall.bat

功能 1: 安装 favicon-8 Linux

  • 用户名 root 默认密码 123@@@,首次开机可能要等几分钟才能成功登录
  • 安装最新版可不输入版本号
  • 最大化利用磁盘空间:不含 boot 分区(Fedora 例外),不含 swap 分区
  • 自动根据机器类型选择不同的优化内核,例如 CloudHWE 内核
  • 安装 Red Hat 时需填写 https://access.redhat.com/downloads/content/rhel 得到的 qcow2 镜像链接
  • 重装后如需修改 SSH 端口或者改成密钥登录,注意还要修改 /etc/ssh/sshd_config.d/ 里面的文件
bash reinstall.sh anolis      7|8
                  rocky       8|9
                  redhat      8|9   --img='http://xxx.com/xxx.qcow2'
                  almalinux   8|9
                  opencloudos 8|9
                  centos      9|10
                  oracle      7|8|9
                  fedora      40|41
                  nixos       24.11
                  debian      9|10|11|12
                  openeuler   20.03|22.03|24.03
                  alpine      3.18|3.19|3.20|3.21
                  opensuse    15.5|15.6|tumbleweed
                  ubuntu      16.04|18.04|20.04|22.04|24.04 [--minimal]
                  kali
                  arch
                  gentoo

可选参数

  • --password PASSWORD 设置密码
  • --ssh-port PORT 修改 SSH 端口(安装期间观察日志用,也用于新系统)
  • --web-port PORT 修改 Web 端口(安装期间观察日志用)
  • --hold 2 安装结束后不重启,此时可以 SSH 登录修改系统内容,系统挂载在 /os (此功能不支持 Debian/Kali)

[!TIP]
安装 Debian/Kali 时,x86 可通过后台 VNC 查看安装进度,ARM 可通过串行控制台查看安装进度。

安装其它系统时,可通过多种方式(SSH、HTTP 80 端口、后台 VNC、串行控制台)查看安装进度。

即使安装过程出错,也能通过 SSH 运行 /trans.sh alpine 安装到 Alpine。

实验性功能

云镜像安装 Debian

  • 适合于 CPU 较慢的机器
bash reinstall.sh debian --ci

ISO 安装 CentOS, AlmaLinux, Rocky, Fedora

  • 仅支持内存大于 2G 且为动态 IP 的机器
  • 密码 123@@@,SSH 端口 22,不支持用参数修改
bash reinstall.sh centos --installer

ISO 安装 Ubuntu

  • 仅支持内存大于 1G 且为动态 IP 的机器
  • 密码 123@@@,SSH 端口 22,不支持用参数修改
bash reinstall.sh ubuntu --installer

功能 2: DD

  • 支持 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 允许被 Ping (仅限 DD Windows)
  • --rdp-port PORT 修改 RDP 端口 (仅限 DD Windows)
  • --ssh-port PORT 修改 SSH 端口(安装期间观察日志用)
  • --web-port PORT 修改 Web 端口(安装期间观察日志用)
  • --hold 2 DD 结束后不重启,此时可以 SSH 登录修改系统内容,Windows 系统会挂载在 /os,Linux 系统不会自动挂载

[!TIP]
可通过多种方式(SSH、HTTP 80 端口、后台 VNC、串行控制台)查看安装进度。

即使安装过程出错,也能通过 SSH 运行 /trans.sh alpine 安装到 Alpine。

功能 3: 重启到 Alpine Live OS(救援系统)

  • 可用 ssh 连接,进行备份/恢复硬盘、手动 DD、修改分区、手动安装 Alpine/Arch/Gentoo 等操作
  • 用户名 root 默认密码 123@@@
  • 如果手动操作没有破坏原系统,再次重启将回到原系统
bash reinstall.sh alpine --hold=1

可选参数

  • --password PASSWORD 设置密码
  • --ssh-port PORT 修改 SSH 端口

功能 4: 重启到netboot.xyz

  • 可使用商家后台 VNC 手动安装 更多系统
  • 如果手动操作没有破坏原系统,再次重启将回到原系统
bash reinstall.sh netboot.xyz
netboot.xyz_-1

功能 5: 安装 cropped-Windows11IconTransparent512-32x32-2 Windows ISO

07c1aea2-1ce3-4967-904f-aaf9d6eec3f7-1
  • 用户名 administrator 默认密码 123@@@
  • 如果远程登录失败,可以尝试使用用户名 .\administrator
  • 静态机器会自动配置好 IP,可能首次开机几分钟后才生效
  • 支持所有语言

支持的系统

  • Windows (Vista ~ 11)
  • Windows Server (2008 ~ 2025)
  • Windows Server Essentials *
  • Windows Server (Semi) Annual Channel *
  • Hyper-V Server *
  • Azure Stack HCI *

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

  • 通常情况下 Windows 每个月都会发布新的官方 ISO,集成了最新的系统补丁,避免了刚安装好系统就要下载一堆补丁
  • 脚本会从 https://massgrave.dev/genuine-installation-media 查找 ISO,该网站收录了每月发布的 ISO,因此脚本查找到的 ISO 都是官方最新版
  • 上面带 * 的系统不支持自动查找 ISO
bash reinstall.sh windows \
     --image-name 'Windows 11 Enterprise LTSC 2024' \
     --lang zh-cn

支持的语言

ar-sa
bg-bg
cs-cz
da-dk
de-de
el-gr
en-gb
en-us
es-es
es-mx
et-ee
fi-fi
fr-ca
fr-fr
he-il
hr-hr
hu-hu
it-it
ja-jp
ko-kr
lt-lt
lv-lv
nb-no
nl-nl
pl-pl
pt-pt
pt-br
ro-ro
ru-ru
sk-sk
sl-si
sr-latn-rs
sv-se
th-th
tr-tr
uk-ua
zh-cn
zh-hk
zh-tw

方法 2: 自行指定 ISO 连接

  • 如果不知道 --image-name,可以随便填,在重启后连接 SSH,根据错误提示重新输入正确的值
bash reinstall.sh windows \
     --image-name 'Windows 11 Enterprise LTSC 2024' \
     --iso 'https://drive.massgrave.dev/zh-cn_windows_11_enterprise_ltsc_2024_x64_dvd_cff9cd2d.iso'

以下网站可找到 ISO 链接

可选参数

  • --password PASSWORD 设置密码
  • --allow-ping 允许被 Ping
  • --rdp-port PORT 更改 RDP 端口
  • --ssh-port PORT 修改 SSH 端口(安装期间观察日志用)
  • --web-port PORT 修改 Web 端口(安装期间观察日志用)
  • --hold 2 在进入 Windows 官方安装程序之前,可以 SSH 登录修改硬盘内容,硬盘挂载在 /os

如何填写映像名称 --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,即可得到映像名称,所有映像名称都可以安装

5aae0a9b-61e2-4f66-bb98-d470a6beaac2-2

脚本会按需安装以下驱动

[!WARNING]
Vista (Server 2008) 和 32 位系统可能会缺少驱动

[!WARNING]
未开启 CSM 的 EFI 机器,无法安装 Windows 7 (Server 2008 R2)

Hyper-V (Azure) 需选择合适的虚拟机代系 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.isowsappx 进程会长期占用 CPU

解决方法是更新系统补丁,或者手动安装 VCLibshttps://www.google.com/search?q=ltsc+wsappx

ARM 安装 Windows 的注意事项

大部分 ARM 机器都支持安装 Windows 11 24H2

安装过程可能会黑屏,串行控制台可能会显示 ConvertPages: failed to find range,均不影响正常安装

兼容性云服务商实例类型问题
✔️AzureB2pts_v2
✔️阿里云g6r, c6r
✔️阿里云g8y, c8y, r8y有几率重启时卡开机 Logo,强制重启即可
✔️AWST4g
✔️ScalewayCOPARM1
✔️Gcore
甲骨文云A1.Flex不一定能安装成功,越新创建的实例越容易成功
安装后还需要手动加载显卡驱动
谷歌云t2a缺少网卡驱动

甲骨文云加载显卡驱动

使用远程桌面登录到服务器,打开设备管理器,找到显卡,选择更新驱动,在列表中选择 Red Hat VirtIO GPU DOD controller 即可。不需要提前下载驱动。

503e1d82-4fa9-4486-917e-73326ad7c988-1
bf3a9af6-13d8-4f93-9d6c-d3b2dbddb37d-1
a9006a78-838f-45bf-a556-2dba193d3c03-1
© 版权声明
THE END
喜欢就支持一下吧
点赞22 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容