有时候,可能因为种种原因需要更换VPS的系统,而商家提供的系统很有限,亦或者商家提供的系统装了很多平时我们不需要的软件,这时我们就需要一个纯净的、可定义的系统了,那么,本篇文章将利用dd来给大家演示怎么进行VPS系统的重装。
dd命令的解释
dd命令是Linux下用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换的一个命令。通过dd命令,我们可以将指定文件覆盖到指定位置,包括启动引导和内核等,这正是dd安装系统的核心。注意,此方法仅限于初始系统为Linux系统
开始之前的一些条件配置
为了顺利的进行,需要安装一些必要的软件,需在root用户下进行,如不在,请切换到root或者使用sudo
##Debian/Ubuntu系统 apt-get update apt-get install -y xz-utils openssl gawk file wget screen ##RedHat/Centos系统 yum update yum install -y glibc-common xz openssl gawk file glibc-common wget screen
进入到screen模式,防止因连接、网络原因中断:
screen -S DD
适用于由GRUB引导的CentOS,Ubuntu,Debian等系统。
一、MoeClub版
1.下载及说明
wget --no-check-certificate -qO InstallNET.sh 'https://moeclub.org/attachment/LinuzShell/InstallNET.sh' && chmod a+x InstallNET.sh
Usage:
bash InstallNET.sh -d/--debian [dist-name] -u/--ubuntu [dist-name] -c/--centos [dist-version] -v/--ver [32/i386|64/amd64] --ip-addr/--ip-gate/--ip-mask -apt/-yum/--mirror -dd/--image -a/-m # dist-name: 发行版本代号 # dist-version: 发行版本号 # -apt/-yum/--mirror : 使用定义镜像 # -a/-m : 询问是否能进入VNC自行操作. -a 为不提示(一般用于全自动安装), -m 为提示
2.使用方法
用默认镜像全自动安装 bash InstallNET.sh -d 8 -v 64 -a #使用自定义镜像全自动安装 bash InstallNET.sh -c 6.10 -v 64 -a --mirror 'http://mirror.centos.org/centos' # 以下示例中,将X.X.X.X替换为自己的网络参数. # --ip-addr :IP Address/IP地址 # --ip-gate :Gateway /网关 # --ip-mask :Netmask /子网掩码 #使用自定义镜像全自动安装 #bash InstallNET.sh -u 9 -v 64 -a --mirror 'http://mirrors.ustc.edu.cn/debian/' #使用自定义镜像自定义网络参数全自动安装 #bash InstallNET.sh -u 16.04 -v 64 -a --ip-addr x.x.x.x --ip-gate x.x.x.x --mirror 'http://archive.ubuntu.com/ubuntu' #使用自定义网络参数全自动dd方式安装 #bash InstallNET.sh --ip-addr x.x.X.X --ip-gate x.X.X.X --ip-mask x.x.x.x -dd 'https : / /moeclub.org/onedrive/IMAGE/Windows/win7emb_x86.tar.gz #使用自定义网络参数全自动dd方式安装存储在谷歌网盘中的镜像(调用文件ID的方式) #bash InstallNET.sh --ip-addr x.x.X.X --ip-gate x.x.X.X --ip-mask x.x.x.x -dd "https : / / image.moeclub.org/GoogleDrive/1cqVl2wSGx92UTdhoxU9pW3wJgmvZMT_J' #国内推荐使用USTC源 #――mirror 'http: / /mirrors.ustc.edu.cn / debian/ '
3.可用镜像地址
# 推荐使用带有 /GoogleDrive/ 链接, 速度更快. # 当然也可以使用自己GoogleDrive中储存的镜像,使用方式: https://image.moeclub.org/GoogleDrive/ # win7emb_x86.tar.gz: https://image.moeclub.org/GoogleDrive/1srhylymTjYS-Ky8uLw4R6LCWfAo1F3s7 https://moeclub.org/onedrive/IMAGE/Windows/win7emb_x86.tar.gz # win8.1emb_x64.tar.gz: https://image.moeclub.org/GoogleDrive/1cqVl2wSGx92UTdhOxU9pW3wJgmvZMT_J https://moeclub.org/onedrive/IMAGE/Windows/win8.1emb_x64.tar.gz # win10ltsc_x64.tar.gz: https://image.moeclub.org/GoogleDrive/1OVA3t-ZI2arkM4E4gKvofcBN9aoVdneh https://moeclub.org/onedrive/IMAGE/Windows/win10ltsc_x64.tar.gz
4.说明
①.全自动安装默认root密码: MoeClub.org,安装完成后请立即更改密码
②.远程登陆账号为: Administrator ,远程登陆密码为: Vicer
③.建议通过加参数 -p 密码 的方式自定义密码
二、Meowlove版
1.使用方法
### 下载脚本
wget --no-check-certificate -qO ~/Network-Reinstall-System-Modify.sh https://github.com/MeowLove/Network-Reinstall-system-Modify/raw/master/Network-Reinstall-system-Modify.sh & & chmod a+x ~/Network-Reinstall-System-Modify.sh
### 两种方案
#### 安装裸机系统部署平台 #### 仅适用于高端用户,手动安装任意系统。可通过网络 ISO 或 iPXE 安装任意系统。 bash ~/Network-Reinstall-System-Modify.sh -CXT_Bare-metal_System_Deployment_Platform #### 安装DD系统 #### 如果您不了解这意味着什么,请不要进行操作。%ULR%应该替换为您自己的映像地址。 bash ~/Network-Reinstall-System-Modify.sh -DD "%ULR%"
通用解决方案
一键网络重装纯净CentOS 7(推荐) bash ~/Network-Reinstall-System-Modify.sh -CentOS_7 一键网络重装纯净Debian 9(推荐) bash ~/Network-Reinstall-System-Modify.sh -Debian_9 一键网络重装纯净Ubuntu 18.04(推荐) bash ~/Network-Reinstall-System-Modify.sh -Ubuntu_18.04 一键网络重装纯净Windows Server 2019(推荐) bash ~/Network-Reinstall-System-Modify.sh -Windows_Server_2019
2.说明
①注意:重复重装此系统前,在主机上面板重装一次系统,在一些主机商上安装的成功率似乎并不是很高。
②如果安装成功无法联网,vnc手动修改为静态ip:vi /etc/sysconfig/networkscripts/ifcfg-eth0 ,修改之后保存并重启:
BOOTPROTO=static #dhcp改为static IPADDR=192.168.1.100 #静态IP GATEWAY=192.168.1.255 #默认网关 NETMASK=255.255.255.0 #子网掩码
③默认系统账号:Administrator 默认系统密码:cxthhhhh.com 默认远程端口:3389
三、Teddysun 版
1.使用方法
wget -q0 DebianNET.sh qiu.sh/dd a& bash DebianNET.sh -dd "DD download URL" ###后面跟的是dd包直链地址
2.镜像地址
https://delivery.yuntu.moe/teddysun/cn_windows2019.gz https://delivery.yuntu.moe/teddysun/en_windows2019.gz https://delivery.yuntu.moe/teddysun/ja_windows2019.gz https://delivery.yuntu.moe/teddysun/cn_windows2016.gz https://delivery.yuntu.moe/teddysun/en_windows2016.gz https://delivery.yuntu.moe/teddysun/ja_windows2016.gz https://delivery.yuntu.moe/teddysun/cn_windows2012r2.gz https://delivery.yuntu.moe/teddysun/en_windows2012r2.gz https://delivery.yuntu.moe/teddysun/ja_windows2012r2.gz
3.说明
远程桌面的默认用户名为administrator ,密码为Password147
四、汇总版
集合了Linux和WIN包,Linux版本包括CentOS6-7、Ubuntu 14 16 18、Debian 7-10,Windows系统集合了萌咖大佬、老司机、MeowLove等人的系统,包含win7 2003 2006 2012 2008 2016 2019等,同时也支持自定义。
使用方法
##镜像文件在OneDrive wget -N --no-check-certificate https://raw.githubusercontent.com/veip007/dd/master/dd-od.sh && chmod +x dd-od.sh && ./dd-od.sh ##镜像文件在GoogleDrive wget -N --no-check-certificate https://raw.githubusercontent.com/veip007/dd/master/dd-gd.sh && chmod +x dd-gd.sh && ./dd-gd.sh
码:MoeClub.org或cxthhhhh.com
Windows to Linux的系统重装教程
把下面的命令保存为win32loader.bat后执行即可:
@ECHO OFF&@PUSHD %~DP0 &TITLE Win32Loader setlocal enabledelayedexpansion ::Author MoeClub.org color 87 cd.>%windir%\GetAdmin if exist %windir%\GetAdmin (del /f /q "%windir%\GetAdmin") else ( echo CreateObject^("Shell.Application"^).ShellExecute "%~s0", "%*", "", "runas", 1 >> "%temp%\Admin.vbs" "%temp%\Admin.vbs" del /s /q "%temp%\Admin.vbs" exit /b 2) cls echo * Init Win32Loader. set download=0 set try_download=1 set URL=https://moeclub.org/attachment/WindowsSoftware :InitCheck mkdir "%SystemDrive%\win32-loader" >NUL 2>NUL if exist "%SystemDrive%\Windows\System32\WindowsPowerShell" ( set use_ps=1 ) else ( set use_ps=0 echo Not found PowerShell. ) :Init if %use_ps% equ 1 ( goto InitIt ) else ( goto InitFail ) :InitIt set try_download=0 call:DownloadFile "!URL!/g2ldr/g2ldr","%SystemDrive%\g2ldr" call:DownloadFile "!URL!/g2ldr/g2ldr.mbr","%SystemDrive%\g2ldr.mbr" call:DownloadFile "!URL!/g2ldr/grub.cfg","%SystemDrive%\win32-loader\grub.cfg" goto InitDone :InitFail echo. echo Go to "!URL!/g2ldr", echo Please download them by yourself. echo '%SystemDrive%\g2ldr' echo '%SystemDrive%\g2ldr.mbr' echo '%SystemDrive%\win32-loader\grub.cfg' echo Press [ENTER] when you finished. pause >NUL 2>NUL goto InitDone :InitDone if !try_download! equ 0 ( set InitOption=InitFail ) else ( set InitOption=Init ) if not exist "%SystemDrive%\g2ldr" goto !InitOption! if not exist "%SystemDrive%\g2ldr.mbr" goto !InitOption! if not exist "%SystemDrive%\win32-loader\grub.cfg" goto !InitOption! :Image echo. echo * Please select initrd mode. echo [1] Online download echo [2] Local file choice /n /c 12 /m Select: if errorlevel 2 goto LocalMode if errorlevel 1 goto OnlineMode goto Image :OnlineMode echo. echo * Please select source. echo [1] by MoeClub [Linux](Debian8, DHCP or VNC Support) echo [2] by MoeClub [Windows](Win7EMB, DHCP or VNC Support) echo [3] by MoeClub [Windows](Win8.1EMB, DHCP or VNC Support) echo [4] by yourself choice /n /c 1234 /m Select: if errorlevel 4 goto Yourself if errorlevel 3 goto MoeClub_Win8.1EMB if errorlevel 2 goto MoeClub_Win7EMB if errorlevel 1 goto MoeClub goto OnlineMode :Yourself echo. echo if 'initrd.img' URL is 'https://moeclub.org/onedrive/IMAGE/Loader/DebianJessie/initrd.img', echo Please input 'https://moeclub.org/onedrive/IMAGE/Loader/DebianJessie'. set /p IMG_URL_TMP=URL : if defined IMG_URL_TMP ( set IMG_URL=%IMG_URL_TMP% goto Download ) else ( goto MoeClub ) :MoeClub_Win8.1EMB set IMG_URL=https://moeclub.org/onedrive/IMAGE/Loader/Win8.1EMB set INITRD_SHA1=473617320316CCB5A88EDE72CBA6AF501B148071 set VMLINUZ_SHA1=C84BF89869868B0325F56F1C0E62604A83B9443F goto Download :MoeClub_Win7EMB set IMG_URL=https://moeclub.org/onedrive/IMAGE/Loader/Win7EMB set INITRD_SHA1=C1BF2A50802BC23A7EC7373AB4CB8F5A905D5860 set VMLINUZ_SHA1=C84BF89869868B0325F56F1C0E62604A83B9443F goto Download :MoeClub set IMG_URL=https://moeclub.org/onedrive/IMAGE/Loader/DebianJessie set INITRD_SHA1=934CFCD5DC855F360AE72AFCB8E6276FABFBCDD5 set VMLINUZ_SHA1=C84BF89869868B0325F56F1C0E62604A83B9443F goto Download :Download if %use_ps% equ 1 ( echo. echo Downloading 'initrd.img'... call:DownloadFile "!IMG_URL!/initrd.img","%SystemDrive%\win32-loader\initrd.img" call:CheckFile "%SystemDrive%\win32-loader\initrd.img" call:CheckSUM "%SystemDrive%\win32-loader\initrd.img","%INITRD_SHA1%" echo Downloading 'vmlinuz'... call:DownloadFile "!IMG_URL!/vmlinuz","%SystemDrive%\win32-loader\vmlinuz" call:CheckFile "%SystemDrive%\win32-loader\vmlinuz" call:CheckSUM "%SystemDrive%\win32-loader\vmlinuz","%VMLINUZ_SHA1%" set download=1 ) else ( echo Not support online download, auto change Local initrd. goto LocalMode ) :LocalMode if !download! equ 0 ( echo. echo Please put 'initrd.img' and 'vmlinuz' to '%SystemDrive%\win32-loader' . echo Press [ENTER] when you finished. pause >NUL 2>NUL ) :Done0 set download=0 if exist "%SystemDrive%\win32-loader\initrd.img" ( goto Done1 ) else ( echo Not found '%SystemDrive%\win32-loader\initrd.img' . goto LocalMode ) :Done1 set download=0 if exist "%SystemDrive%\win32-loader\vmlinuz" ( goto Done ) else ( echo Not found '%SystemDrive%\win32-loader\vmlinuz' . goto LocalMode ) :Done echo. echo Press [ENTER] to continue... echo IT WILL REBOOT IMMEDIATELY pause >NUL 2>NUL echo. call:CheckFile "%SystemDrive%\g2ldr" call:CheckFile "%SystemDrive%\g2ldr.mbr" call:CheckFile "%SystemDrive%\win32-loader\grub.cfg" call:CheckFile "%SystemDrive%\win32-loader\initrd.img" call:CheckFile "%SystemDrive%\win32-loader\vmlinuz" call:CheckSUM "%SystemDrive%\g2ldr","2FCB1009A64C127AD3CC39FF0B5E068B38CBA772" call:CheckSUM "%SystemDrive%\g2ldr.mbr","29401C8BC951F0AEFD30DC370A3797D1055D64B4" call:CheckSUM "%SystemDrive%\win32-loader\grub.cfg","58C499EFEE7E60790B3FE2166B536C04B6717B14" set id={01234567-89ab-cdef-fedc-ba9876543210} bcdedit /create %id% /d "Debian GUN/Linux" /application bootsector >NUL 2>NUL bcdedit /set %id% device partition=%SystemDrive% >NUL 2>NUL bcdedit /set %id% path \g2ldr.mbr >NUL 2>NUL bcdedit /displayorder %id% /addlast >NUL 2>NUL bcdedit /bootsequence %id% /addfirst >NUL 2>NUL shutdown -r -t 0 :CheckSUM for /f "delims=: tokens=2" %%i in ('powershell.exe "& {Get-FileHash -Algorithm SHA1 -Path %1|Format-List -Property HASH}"') do (set tmp_var=%%i) set var=%tmp_var:~1% if "%var%" == %2 ( echo Check %1 SHA1 OK. ) else ( if "%var%" == "CommandNotFoundException" ( echo Check %1 SHA1 SKIP. ) else ( echo Check %1 SHA1 FAIL. call:ErrorExit ) ) GOTO:EOF :CheckFile if not exist %1 ( echo Not found %1 . call:ErrorExit ) GOTO:EOF :DownloadFile powershell.exe -command "& {$client = new-object System.Net.WebClient; $client.DownloadFile('%1','%2')}" >NUL 2>NUL GOTO:EOF :ErrorExit echo. echo Error, Clear CACHE... del /S /F /Q "%SystemDrive%\g2ldr" >NUL 2>NUL del /S /F /Q "%SystemDrive%\g2ldr.mbr" >NUL 2>NUL rd /S /Q "%SystemDrive%\win32-loader" >NUL 2>NUL echo Press [ENTER] to exit. pause >NUL 2>NUL exit 1 GOTO:EOF
管理员身份打开命令提示符,执行
slmgr /skms kms.03k.org #也可以更换为其它的 KMS 激活服务器。
slmgr /ato
slmgr /xpr
还没有评论,来说两句吧...