Linux一键重装修复dd Windows错误,支持多种dd模板,远古级bug

查看 96|回复 8
作者:天权璇玑   
   
项目地址,欢迎 star,github 主页或私信反馈:
https://github.com/leitbogioro/Tools
论坛主贴,中文使用说明:
https://91ai.net/thread-1159839-1-1.html
省流版:
如何使用本脚本从 Linux dd 到 Windows?
任意基于 KVM QEMU 或 XEN 的机器,不管机器原系统是 Debian 系还是 Redhat 系,grub 引导菜单都能成功写入并重启后被启动
[ol]bash InstallNET.sh -dd 'DD 镜像链接'[/ol]复制代码
某些支持多种启动方式,如救援模式,正常模式等的独服,如 Kimsufi 等:
将启动模式转换为救援模式,从邮箱里获取登陆账户密码,进入救援模式临时系统,执行:
[ol]wget -O- 'DD 镜像链接' | xzcat | dd of=/dev/sda[/ol]复制代码
等待 dd 镜像下载并解压好,将启动模式改为正常模式,输入重启命令,等待被 dd 的 Windows 系统初始化完成。
[ol]reboot[/ol]复制代码
感谢秋水逸冰先生的无私付出,辛苦制作了一批成熟的 Windows 系列 dd 镜像并提供直链,从临时中转的 Debian 12 格盘后,dd 的镜像来源,连接详情,硬件需求均基于秋水逸冰先生的 dd 镜像。
用户名: Administrator
密码: Teddysun.com
RDC(远程桌面) 端口: 5900
网络: 必须具备 IPv4 DHCP
CPU: 仅限 AMD64 架构,至少单核,双核以上更佳
硬盘: 至少 20GB,推荐 50GB 及以上,固态硬盘更佳
内存: 至少 2GB , 8GB 以上更佳
Windows dd 包来源:
BIOS 主板固件,MBR 分区
Windows 11 Pro for Workstations 22H2
简中: https://dl.lamp.sh/vhd/zh-cn_windows11_22h2.xz
英语: https://dl.lamp.sh/vhd/en-us_windows11_22h2.xz
日语: https://dl.lamp.sh/vhd/ja-jp_windows11_22h2.xz
Windows Server 2022 Datacenter
简中: https://dl.lamp.sh/vhd/zh-cn_win2022.xz
英语: https://dl.lamp.sh/vhd/en-us_win2022.xz
日语: https://dl.lamp.sh/vhd/ja-jp_win2022.xz
Windows 10 Enterprise LTSC
简中: https://dl.lamp.sh/vhd/zh-cn_windows10_ltsc.xz
英语: https://dl.lamp.sh/vhd/en-us_windows10_ltsc.xz
日语: https://dl.lamp.sh/vhd/ja-jp_windows10_ltsc.xz
Windows Server 2012 R2 Datacenter
简中: https://dl.lamp.sh/vhd/cn_win2012r2.xz
英语: https://dl.lamp.sh/vhd/en_win2012r2.xz
日语: https://dl.lamp.sh/vhd/ja_win2012r2.xz
UEFI 主板固件,GPT 分区
Windows 11 Pro for Workstations 22H2
简中: https://dl.lamp.sh/vhd/zh-cn_windows11_22h2_uefi.xz
英语: https://dl.lamp.sh/vhd/en-us_windows11_22h2_uefi.xz
日语: https://dl.lamp.sh/vhd/ja-jp_windows11_22h2_uefi.xz
Windows Server 2022 Datacenter
简中: https://dl.lamp.sh/vhd/zh-cn_win2022_uefi.xz
英语: https://dl.lamp.sh/vhd/en-us_win2022_uefi.xz
日语: https://dl.lamp.sh/vhd/ja-jp_win2022_uefi.xz
Windows 10 Enterprise LTSC
简中: https://dl.lamp.sh/vhd/zh-cn_win10_ltsc_uefi.xz
English: https://dl.lamp.sh/vhd/en-us_win10_ltsc_uefi.xz
日语: https://dl.lamp.sh/vhd/ja-jp_win10_ltsc_uefi.xz
Windows Server 2012 R2 Datacenter
简中: https://dl.lamp.sh/vhd/cn_win2012r2_uefi.xz
英语: https://dl.lamp.sh/vhd/en_win2012r2_uefi.xz
日语: https://dl.lamp.sh/vhd/ja_win2012r2_uefi.xz
技术细节:
承蒙论坛里大家的支持与厚爱,没有各位不断提出的意见和反馈,Linux 一键重装也不会在兼容性和功能等方面有如此长足的改进,前两天在 lowendtalk 上发帖,跟一个老哥用英语交流,他说我的脚本从 Linux 重装到 Windows 有问题,中转系统跳到了安装 Debian 12,Windows 无**常安装。之所以中介系统从 Debian 11 升级到 12,是因为新版本安装程序自带驱动版本更新,兼容性更好。
我自己拿了 Racknerd 一台 4G 的机器做测试,好家伙,不但有问题,而且问题还真不少。表现症状为——作为中介的 Debian 12 安装程序,在建立并格式化分区的时候,卡分区并立即重启到 grub,然后重新轮回启动 Debian 12 中介系统,会无限卡在这一段且无法退出。这个问题确实比较严重,花了一段时间排查,最终发现问题出在以下两点。
不指定 setfiletype 参数时,仅使用 gunzip 而非 xzcat 解压缩命令,试图解压秋水逸冰制作的 .xz 后缀 dd 包,导致解压缩失败;在 Debian 12 中间系统预载 libcrypto1.1-udeb libssl1.1-udeb 组件,但由于 Debian 12 自带的 openSSL 库升级到了 3.0 版本,这两个组件仅适用于 Debian 9-11,所以导致 Debian 12 无**常安装导致无限卡分区。
解决问题的办法很简单,首先第一个:
当用户不设定 setfiletype 时,根据 dd 压缩包末尾 .gz 或 .xz 后缀名,自动判断是使用 gunzip 还是 xzcat 来解压文件;
第二个:
把 dd Windows 的中介 Debian 12 安装程序的预置 openSSL 组件更新为 libcrypto3-udeb 和 libssl3-udeb 即可。
代码更改位置:
[ol]else
      DEC_CMD="gunzip -dc"
      [[ $(echo "$DDURL" | grep -o ...$) == ".xz" ]] && DEC_CMD="xzcat"
      [[ $(echo "$DDURL" | grep -o ...$) == ".gz" ]] && DEC_CMD="gunzip -dc"
    fi[/ol]复制代码
[ol]d-i preseed/early_command string anna-install libfuse2-udeb fuse-udeb ntfs-3g-udeb libcrypto3-udeb libpcre2-8-0-udeb libssl3-udeb libuuid1-udeb zlib1g-udeb wget-udeb[/ol]复制代码

日语, 英语, 镜像

机长   
有进度条吗
天权璇玑
OP
  

机长 发表于 2023-5-26 14:55
有进度条吗

重启后静候10到60分钟即可,具体看机器自己的网络和性能
腾讯云6折购   
太牛逼啦 泰库辣
腾讯云6折购   

天权璇玑 发表于 2023-5-26 14:58
重启后静候10到60分钟即可,具体看机器自己的网络和性能

他是在内涵5k狗捏
未完的歌   
泰裤辣
C51   
rn的机器不给dd win,小心封鸡
天权璇玑
OP
  

C51 发表于 2023-5-26 15:06
rn的机器不给dd win,小心封鸡

做个测试而已,发现已经成功了就装回去了
crazyalllife   
前排支持,dd是mjj必备技能之一。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部