Linux reinstall:一款功能强大的服务器系统一键重装脚本

脚本特色

  • 全自动无人值守安装;
  • 支持各主流VPS商家;
  • 重装前可预先指定 ssh 密码、端口、固件、镜像源等参数,执行重装命令时,如果未指定密码、端口。重装后的系统默认用户:root,默认端口:22,默认密码:LeitboGi0ro,首次 ssh 机器后请立即修改密码
  • 对于 Debian 系统,安装时附带的固件源为国外,国内 VPS 连接速度很慢,长时间连接无速度往往会下载失败,可指定 –cdimage “cn”,将源切换到国内中科大的,以提高下载速度;
  • 安装时避免进入低内存模式(Debian 特有)后需要进行手动配置,导致无法自动化部署安装的内存量检测阈值,256M 以上机型即使安装时进入低内存模式,也可以自动化进行,这点对内存少于 1GB 的机型尤为重要。已在搬瓦工 512M 机型做过测试,萌咖原版脚本重装 Debian 11 时,会跳出内核恐慌(Kernel Panic)或低内存模式,后者需要手动配置安装,首先必须手动选择需要加载的硬件驱动,项目多且复杂,不同机器的硬件各有差别,选择稍有错误,就会导致驱动安装不全,最后系统安装失败失去了自动化安装的特性,本脚本可保证小内存 VPS 低内存模式自动化安装过程顺利进行。低于 768M 小内存机型安装前执行脚本时,不要附带“-firmware”或“-firmware –cdimage”参数,否则重启后无法进入低内存模式安装界面,导致安装失败
  • 由于 Ubuntu 22.04 放弃了 netboot 安装方式,并且官方不再提供相关网络启动镜像,所以该脚本暂不支持 Ubuntu 22.04 及以上版本。经实测,市面上所有号称“支持”Ubuntu 22.04 一键重装的脚本都是假的,最后都会卡在无法下载“initrd.img”和“linuz”这两个必要文件,最后终止安装,请谨慎鉴别。

下载

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

可指定参数案例

bash InstallNET.sh  -d/u/c(系统种类,debian/ubuntu/centos) 11(系统版本) -v 64(系统位数,32 或 64 或 arm64) -port "ssh  登陆端口" -pwd "ssh 登录密码" -a(自动安装)/m(在 VNC 里手动安装) -mirror "系统镜像源,系统安装完成后的默认软件安装包源也是这个" -firmware(带固件) --cdimage "cn"(配合 firmware 参数使用,此项仅适用于在国内要重装成 Debian 的 VPS)

快速上手

Debian 8

bash InstallNET.sh -d 8 -v 64 -a

Debian 9

bash InstallNET.sh -d 9 -v 64 -a

Debian 10

bash InstallNET.sh -d 10 -v 64 -a

Debian 11 (中国大陆境内)

选择带固件安装(–firmware)时,推荐国内机器安装源的命令。

清华

bash InstallNET.sh -d 11 -v 64 -a -mirror "https://mirrors.tuna.tsinghua.edu.cn/debian/" -firmware --cdimage "cn" 

网易

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://mirrors.163.com/debian/" -firmware --cdimage "cn"

腾讯云

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://mirrors.cloud.tencent.com/debian/" -firmware --cdimage "cn"

阿里云

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://mirrors.aliyun.com/debian/" -firmware --cdimage "cn"

Debian 11 (海外)

如果你的机器在中国大陆以外,连接速度都不会差,就近选择官方源即可。

日本

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://ftp.riken.jp/Linux/debian/debian/" -firmware

香港

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://ftp.hk.debian.org/debian/" -firmware

新加坡

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://ftp.sg.debian.org/debian/" -firmware

韩国

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://studenno.kugi.kyoto-u.ac.jp/debian/" -firmware

台湾

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://ftp.tw.debian.org/debian/" -firmware

美国

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://debian.csail.mit.edu/debian/" -firmware

加拿大

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://ftp.ca.debian.org/debian/" -firmware

英国

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://ftp.uk.debian.org/debian/" -firmware

德国

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://ftp.de.debian.org/debian/" -firmware

法国

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://ftp.fr.debian.org/debian/" -firmware

俄罗斯

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://ftp.ru.debian.org/debian/" -firmware

澳大利亚

bash InstallNET.sh -d 11 -v 64 -a -mirror "http://ftp.au.debian.org/debian/" -firmware

Debian 当地源的格式基本上都是:

http://ftp.地区名称缩写.debian.org/debian/

如果以上例子里不包含你 VPS 所在地,去国家地区代码找到对应的缩写,替换掉上面链接里“地区名称缩写”位置,把新链接放浏览器里访问一下,如果出现一个文件服务器目录,即可使用。日本的源来自日本理化学研究所,是一所科研机构,下载带宽很足;韩国的本地官方源(ftp.kr.debian.org)总是宕机,故换成京都大学的;美国的源来自麻省理工学院,请放心使用。

20230303022753276
如:挪威 Debian 源

通用的 Debian 源链接:

http://ftp.debian.org/debian/

Ubuntu 16.04

bash InstallNET.sh -u 16.04 -v 64 -a

Ubuntu 18.04

bash InstallNET.sh -u 18.04 -v 64 -a

Ubuntu 20.04

bash InstallNET.sh -u 20.04 -v 64 -a

Cent OS 6

bash InstallNET.sh -c 6.10 -v 64 -a

故障排查

一个典型的正常安装界面

20230303022753615
可通过 VNC 查看,全程自动化运行,无需人工干预

通过 Ping 命令判断安装状态

启动 Windows Powershell,输入:

ping IP -t

对于无 VNC 功能的机器,中途建议始终 ping 机器,通过机器失联间隔来判断安装状态,连续的“请求超时”会出现两次,第一次是准备好镜像后重启的一段时间,第二次是系统重装流程结束后再次重启进入新系统的一段时间,整个重装流程时间在5分钟至20分钟左右不等,速度与机器 CPU 主频、RAM 容量、磁盘 I/O 性能等因素有关,请耐心等待。

如果 ping 过发现机器经历过第二次失联,第一次失联和第二次失联中间能始终正常 ping 通,最后却无法 ssh 连接,请通过网页或 API 进入服务商控制台,将机器重启一下即可。如果发现机器第一次重启后就彻底失联,请向我向萌咖提交反馈。

20230303022753684
20230303022753381

Oracle 机器使用脚本重装,第二次重启后失联,且过了很长一段时间,机器无法 ping 通,也无法 ssh,此时用 OCI-Help 脚本重启实例,问题解决。

© 版权声明
THE END
点赞5赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容