banner
xingli

xingli

猫娘爱好者

Linux最強dd腳本

dd 準備#

在下載之前,請記得更新源,安裝 wget 組件,以下命令僅對應原系統:

Debian 系(Debian Kali Ubuntu):

apt update
apt update install wget -y

紅帽系(CentOS AlmaLinux RockyLinux Fedora 等):

dnf install wget -y

AlpineLinux(需要安裝 wget bash 組件,並把系統默認的 shell 從 ash 改成 bash):

apk update
apk install wget bash
sed -i 's/root:\/bin\/ash/root:\/bin\/bash/g' /etc/passwd

下載並運行腳本:

wget --no-check-certificate -qO InstallNET.sh 'https://raw.githubusercontent.com/leitbogioro/Tools/master/Linux_reinstall/InstallNET.sh' && chmod a+x InstallNET.sh

國內機器現在可以從 Gitee 下載:

wget --no-check-certificate -qO InstallNET.sh 'https://gitee.com/mb9e8j2/Tools/raw/master/Linux_reinstall/InstallNET.sh' && chmod a+x InstallNET.sh

快速開始(當且僅當腳本不加 - pwd -port -mirror 等參數時有效,如果加了,必須指定對應系統的發行版版本號!):

不用再輸入使用何種架構(-v 選項已被 - version 替代,且兩者都已經被棄用),腳本會自動檢測架構、實現 Debian 系和 Redhat 系架構名相互智能轉換!

Debian 12(支持 9 至 12)

bash InstallNET.sh -debian

Kali rolling(支持 rolling/dev/experimental 三個分支,原則上推薦使用 rolling)

bash InstallNET.sh -kali

Alpine Linux edge(支持 3.16 至 3.18 和 edge,推薦 edge)

一個超輕量 Linux 發行版,但需要注意的是,Alpine Linux 運行的時候省內存,內存佔用僅 80m 左右,但安裝時不省,因為它會在內存中完成所有初始化操作,直到最後再全盤寫入硬盤,不像 Debian 紅帽系啟動內核在內存裡準備完畢,就開始進行格盤並從鏡像源往硬盤上寫入文件操作,這就導致安裝 Alpine Linux 的內存要求並不低,低於 1GB 內存的機器不要安裝,由於 Alpine Linux iPXE 啟動文檔裡僅描述了如何通過 dhcp 或靜態從 IPv4 網絡啟動,所以僅有 IPv6 公網訪問的機器也不要安裝。雙棧機 IPv6 部分會在安裝過程中自動配置好。

bash InstallNET.sh -alpine

CentOS 9 stream(支持 7-9)

bash InstallNET.sh -centos

AlmaLinux 9(支持 8-9)

bash InstallNET.sh -alma

RockyLinux 9(支持 8-9)

bash InstallNET.sh -rocky

Fedora 38(支持 37-38)

bash InstallNET.sh -fedora

Ubuntu 22.04(支持 20.04 或 22.04)

bash InstallNET.sh -ubuntu

Windows Server 2022(基於在 AlpineLinux 中介下 dd 實現,支持 BIOS UEFI 不同固件下自動識別對應的 dd 包,支持 Windows 10 Enterprise LTSC,Windows 11 Pro for Workstation 22H2,Windows Server 2012 R2,Windows Server 2016,Windows Server 2019,Windows Server 2022,重裝時輸入對應系統的數字版本號即可,如果能通過 VNC 登錄系統,可自動進行 IPv4 靜態配置和自動擴展系統盤分區,dd 包來自秋水逸冰,再次感謝他的無私奉獻)

bash InstallNET.sh -windows

開始 dd#

默認密碼如下:

LeitboGi0ro

由於 AlpineLinux 和 Ubuntu 採用明文(未經 openssl 加密過的密文,僅本地變量傳輸,不會傳到其他地方,放心)傳遞密碼參數到配置文件,附加特殊符號可能會導致 sed 處理時出錯,所以 AlpineLinux 和 Ubuntu 默認密碼統一為 LeitboGi0ro 且暫不支持修改。

密碼若要自定義,可添加 - pwd ' 密碼內容 ' 修改,密碼字段建議前後使用單英文引號(' ')括起來,以免 shell 將雙英文引號(" ")中帶特殊字符的密碼當做命令傳遞,造成錯誤,不要設置的過長過複雜,例:

-pwd 'xiaoming'

如果使用的是默認密碼,安裝後請立即修改!

默認 ssh 端口隨原系統,比如你機器原系統 ssh 為 65432,新裝好的系統端口號也為 65432,亦可添加 - port "端口號" 修改,支持全系受支持的 Linux 系統,範圍 “1-65535”,如果給錯或無法確定原系統端口,後備值為:

22

例:

-port "12345"

如何使用本腳本從 Linux dd 到 Windows?

  1. 任意基於 KVM QEMU 或 XEN 的機器,不管機器原系統是 Debian 系還是 Redhat 系,grub 引導菜單都能成功寫入並重啟後被啟動:
bash InstallNET.sh -dd 'DD鏡像鏈接'
  1. 某些支持多種啟動方式,如救援模式,正常模式等的獨服,如 Kimsufi 等:

將啟動模式轉換為救援模式,從郵箱裡獲取登陸賬戶密碼,進入救援模式臨時系統,執行:

wget -O- 'DD鏡像鏈接' | xzcat | dd of=/dev/sda

等待 dd 鏡像下載並解壓好,將啟動模式改為正常模式,輸入重啟命令,等待被 dd 的 Windows 系統初始化完成。

reboot
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。