神代綺凜

[Linux] 网络脚本一键重装 Ubuntu/CentOS/Debian
【更新:补充重装成 CentOS 7 的方法】 适用于由 GRUB 引导的系统,使用官方发行版去掉模板预装的软件,...
扫描右侧二维码阅读全文
31
2018/07

[Linux] 网络脚本一键重装 Ubuntu/CentOS/Debian

【更新:补充重装成 CentOS 7 的方法】

适用于由 GRUB 引导的系统,使用官方发行版去掉模板预装的软件,同时也可以解决内核版本与软件不兼容的问题。
只要有 root 权限,还您一个纯净的系统。

转载自萌咖,原文在文章底部版权声明处

Head Pic: 「★」/「しろゆき」のイラスト [pixiv]

网络重装 Ubuntu/CentOS/Debian 一键脚本

  • 能够全自动重装 Debian/Ubuntu/CentOS 等系统
  • 同时提供dd安装镜像功能,例如:全自动无救援dd安装windows系统
  • 全自动安装 CentOS 时默认提供 VNC 功能,可使用 VNC Viewer 查看进度,VNC 端口为1或者5901,可自行尝试连接(成功后 VNC 功能会消失)
  • 目前 CentOS 系统只支持任意版本重装为 CentOS 6.9 及以下版本(欲重装成 CentOS 7 请看后续补充内容)

全自动安装模式的默认 root 密码为Vicer,安装完成后请立即使用passwd命令更改密码。

此脚本不能用于 OpenVZ 架构的机子!

准备

确保安装了脚本所需软件

#Debian/Ubuntu:
apt-get install -y xz-utils openssl gawk file

#RedHat/CentOS:
yum install -y xz openssl gawk file

如果报错,请运行下面的命令后再试

#Debian/Ubuntu:
apt-get update

#RedHat/CentOS:
yum update

下载一键脚本

wget --no-check-certificate -qO InstallNET.sh 'https://moeclub.org/attachment/LinuxShell/InstallNET.sh' && chmod a+x InstallNET.sh
# 本站备份脚本地址:https://lolico.moe/files/scripts/vicer/InstallNET.sh

然后根据你需要重装到的系统和下文给出的说明执行对应命令即可。

重装过程需要10~30分钟,请耐心等待。

使用

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 为提示。

示例

一般

#使用默认镜像全自动安装 Debian 8 x64
bash InstallNET.sh -d 8 -v 64 -a

#使用自定义镜像全自动安装 CentOS 6.9 x64
bash InstallNET.sh -c 6.9 -v 64 -a --mirror 'http://mirror.centos.org/centos'

进阶

# 以下示例中,将X.X.X.X替换为自己的网络参数.
--ip-addr x.x.x.x   #IP地址
--ip-gate x.x.x.x   #网关
--ip-mask x.x.x.x   #子网掩码

#使用自定义镜像自定义网络参数全自动安装
bash InstallNET.sh -u 16.04 -v 64 -a --ip-addr x.x.x.x --ip-gate x.x.x.x --ip-mask 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/get-win7embx86-auto'

#使用自定义网络参数全自动dd方式安装存储在谷歌网盘中的镜像(调用文件ID的方式)
bash InstallNET.sh --ip-addr x.x.x.x --ip-gate x.x.x.x --ip-mask x.x.x.x -dd "$(echo "11fr_LcgY_qSEDbWvBel0S0fjYAX_lKL0" |xargs -n1 bash <(wget --no-check-certificate -qO- 'https://moeclub.org/get-gdlink'))"

#使用自定义网络参数全自动dd方式安装存储在谷歌网盘中的镜像
bash InstallNET.sh --ip-addr x.x.x.x --ip-gate x.x.x.x --ip-mask x.x.x.x -dd "$(echo "https://drive.google.com/open?id=11fr_LcgY_qSEDbWvBel0S0fjYAX_lKL0" |xargs -n1 bash <(wget --no-check-certificate -qO- 'https://moeclub.org/get-gdlink'))"

注意

在 VNC 手动安装 Ubuntu 时,可能会遇到:
Getting the time form a network time server...
界面进度条很长时间不会动,可以等待它超时或者更换别的版本
该问题是Ubuntu系统的问题

在全自动安装CentOS时:
如果看到“Starting graphical installation”或者类似表达,则表示正在安装
正常情况下只需要耐心等待安装完成即可
如果需要查看进度,使用 VNC Viewer(或者其他 VNC 连接工具)
连接提示中的IP地址:端口进行连接(端口一般为1或者5901

【补充】如何重装成 CentOS 7

在下载了InstallNET.sh

bash InstallNET.sh -dd 'https://opendisk.cxthhhhh.com/OperatingSystem/CentOS/CentOS_7.X_NetInstall.vhd.gz'

使用此方法须知

  1. root 密码为cxthhhhh.com
  2. 安装需耗时 15-45 分钟,并且系统首次启动后,请等待自动安装完成,系统将自动重启,然后才能使用(安装过程中的手动干预可能会导致错误)【一句话:耐心等就完事了(。】
  3. IPv4 和 IPv6 为 DHCP 获取 IP 的模式(如果用在必须手动指定 IP 信息的机器上,你也许需要使用 VNC 修改网络配置,或者使用 VPS 面板的“重置网络配置”,如果有的话)
  4. 系统 DNS 为1.1.1.18.8.8.8
  5. 系统使用官方 CentOS 镜像
  6. 登录信息标准化,易于管理,您需要在登录后修改它
  7. 默认分配磁盘大小为 4.5G,你需要扩展磁盘(请看下方)

方法来源:【Technical Blog | 技術博客】[原创] 一键网络重装CentOS 7 (官方,纯净,安全,高效)

磁盘扩容

Vicer 的脚本声明不支持自动安装 CentOS 7 的原因是 7 只能使用grub2引导,与我们常见的其他系统的grub不同

而此方法是直接使用dd镜像的方式安装,即实际上是直接拿一个装有 CentOS 7 的磁盘镜像来覆写硬盘(与dd安装 Win 同理),解决了这个问题

由于分区表也会被覆写,因此安装完成后你会发现硬盘分区大小小于原本的大小,只需使用fdisk修改分区大小扩容即可

可以参考:如何扩展 Linux 硬盘,或者自行百度fdisk的用法

我的文章对您有帮助吗?
我很可爱 请给我钱
扫一扫拿红包 → 扫商家收款码 → 转账与红包相等的金额
即可免费赞赏,又可拿支付宝奖励金!
现在支付宝超抠门的,红包只给一两分钱了
Last modification:July 31st, 2018 at 03:23 pm
If you think my article is useful to you, please feel free to appreciate

Leave a Comment

9 comments

  1. zephyru  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 68.0.3440.7(Google Chrome 68.0.3440.7)

    博主...有没有不需要显示重装x86电脑为Linux的...
    我有一台小主机,但是我没有VGA的显示器...启动的过程时HDMI显示器没有输出.....
    一直到系统加载出来的时候HDMI屏幕上才有..它现在装的是win10...有没有什么脚本一运行..就能把win10换成linux比如centos一类的东西?

    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 68.0.3440.75(Google Chrome 68.0.3440.75)
      @zephyru

      没有

  2. 秋叶风夏  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 65.0.3325.181(Google Chrome 65.0.3325.181)

    不知道用的是什么镜像,刚刚测试了一下,zsh安装出现问题,zsh安装后还是提示未安装。 有点问题哦

    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 65.0.3325.162(Google Chrome 65.0.3325.162)
      @秋叶风夏

      你可以跟原作者反馈一下

  3. Zero  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 66.0.3359.139(Google Chrome 66.0.3359.139)

    这样重装感觉好慢

    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 65.0.3325.162(Google Chrome 65.0.3325.162)
      @Zero

      主要的用途是用来重装纯净的系统,应对比如阿里腾讯这种给你加一堆监控或者AWS那种辣鸡自改内核的情况

      1. Zero  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 66.0.3359.139(Google Chrome 66.0.3359.139)
  4. NA_keshu  Android 6.0.1(Android 6.0.1) / Google Chrome 65.0.3325.109(Google Chrome 65.0.3325.109)

    个人感觉Linux系统安装并不是什么问题(毕竟曾经日常重装系统
    相比之下把系统配置成习惯的样子才是最麻烦的
    期待博主写一个自动配置系统的程序or脚本

    1. 神代綺凜  Mac OS X(Mac OS X) / Safari(Safari)
      @NA_keshu

      Linux面板了解一下