全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 10772|回复: 154

一键重装支持 raid0 CentOS AlmaLinux RockyLinux Fedora,不同系统互装

  [复制链接]
发表于 2022-11-28 05:12:39 | 显示全部楼层 |阅读模式
本帖最后由 天权璇玑 于 2022-11-28 21:19 编辑

抱歉再来水一贴。

原贴和使用方法地址:
https://hostloc.me/forum.php?mod=viewthread&tid=1094336

以下是简略使用版,更多高级使用方法,自己阅读项目 readme,欢迎 star
https://github.com/leitbogioro/Tools

下载:
  1. wget --no-check-certificate -qO InstallNET.sh 'https://raw.githubusercontent.com/leitbogioro/Tools/master/Linux_reinstall/InstallNET.sh' && chmod a+x InstallNET.sh
复制代码


安装依赖:
Debian 系列(Debian/Ubuntu):

  1. apt update -y
复制代码

  1. apt install wget -y
复制代码


Redhat 系列(CentOS/Almalinux/Rockylinux/Oraclelinux/Fedora):

  1. yum update --allowerasing -y
复制代码

  1. yum install wget -y
复制代码


快速上手:

Debian
  1. bash InstallNET.sh -debian
复制代码

CentOS
  1. bash InstallNET.sh -centos
复制代码

RockyLinux
  1. bash InstallNET.sh -rockylinux
复制代码

AlmaLinux
  1. bash InstallNET.sh -almalinux
复制代码

Fedora
  1. bash InstallNET.sh -fedora
复制代码

Ubuntu
  1. bash InstallNET.sh -ubuntu
复制代码


  • 支持 raid 0,仅限 Debian,要使用 raid 0 请添加 -raid "0"参数。单硬盘请不要添加此参数。有效性尚待测试。
  • DD Windows 方法和原版萌咖功能一样,该怎么用就怎么用,如果 DD 包无后缀名,默认使用 gz 解压方式,支持 xz 结尾的压缩包,如果要解压 xz 压缩包请添加参数 -filetype "xz"。
  • 本次更新全面支持 RedHat 系新系统,包括 CentOS 9 Stream,RockyLinux 8+,AlmaLinux 8+,Fedora 34+,也支持从 OracleLinux/VzLinux 装到脚本支持的系统。
  • Debian 9+ 支持 xfs,这也是 Redhat 系默认的文件系统,抛弃老旧的默认 ext2。
  • 如果要指定其他参数,比如镜像地址,系统后面必须带上版本,比如:-debian 11,不然会出错。
  • 默认采用 DHCP 配置网络,如果确认是静态地址,请附带 --dhcp-static 参数,不过脚本仍然会自动检测,如果是 DHCP,还会改回来。确认用户不会手动作死。
  • 由于 RedHat 7 以后默认采用 firewalld 做防火墙,防火墙不放行的端口都用不了,所以通过强改 firewalld 配置文件来对 RedHat 系列的系统自定 ssh 端口号进行支持。此前旧版本仅支持 22 端口,不支持自定。
  • 脚本对当前与运行系统的硬件架构作了判断和对要装的系统硬件架构名称做了自动转换,并且 -v 参数已经被废弃,用 -version 替代,如果不懂,不要再使用这个参数。
  • 国内机器不用指定安装源,脚本自动监测并切换到国内源。
  • 脚本完善了对 grub2 的处理,使 Debian 和 Redhat 系可以无限互装而不受影响,萌咖的脚本只支持处理 grub1,这就导致从 Debian 系装到 Redhat 系,grub1 变成了 grub2,导致从 Redhat 系没法再装回 Debian 系。这是老历史遗留问题了,本脚本从头到尾一并解决。
  • AMD64 legacy boot 和 AMD64 UEFI boot 以及 ARM64 UEFI boot 的启动项处理参数完全不同,处理错了就是坑,能解决好才是支持主流各 CPU 架构和主板固件启动的基础。
  • 市面上其他脚本对 grub1 和 grub2 的处理没一个比我完善的,用他们的在某个平台装到某个 Linux 系,再装回其他 Linux 系必然出问题,无法丝滑互装,而我的不会。敢说这话是因为我有这实力。
  • 已进行了大量测试,确认 Oracle 机器上跑没问题。
  • 为什么 Debian IPv6 为什么没配置正确(双栈机)?检查一下你原系统是不是 /etc/default/grub 文件里哦是不是 GRUB_CMDLINE_LINUX="" 里面带 net.ifnames=0 biosdevname=0 参数?如果带,系统网卡名称会统一变成 eth0 eth1 eth2 这种的,这样会干扰新系统里写入网络配置。有能力的自己在原系统里把相关配置清掉,确保网卡显示的是真实物理网卡的名称,而不是被系统重定向过的,脚本获取手段就是这个,你原系统配置不对,不要怪脚本怎么没在新系统内写入正确的。
  • 多网卡,多ip请进新系统内手工配置,单网卡双栈机自动配置 ipv6 仅限 debian
  • 由于 CentOS 6 的 grub1 脚本语法和其他系统 grub1 grub2 的完全不同,所以不再对装回 CentOS 6 和将 CentOS 6 重装成别的系统的支持。
  • Redhat 8 要求 2.5GB 内存,Redhat 9 要求 2GB 内存,不要怪我为什么有这要求,你去问红帽,是他们要求的。你不按照他们要求来强装,安装程序就会崩溃。


对于有些颐指气使的教师爷,抱怨不喜欢定制的,怎么这系统不支持,那系统不支持的,我的意见是:这个脚本是我想满足我个人的需求才写出来,觉得不错才分享给各位的,你们没支付我任何费用,也不是我的父母和上司,你们有什么资格对我指指点点?能做到更新是因为我愿意这么做,我能这么做,我有这个技术水平这么做,因为我比你们聪明,而不是为了迎合你们,我发了,你们才有的用,我不发,你们什么都没有。

有 bug 尽管提,对 features 不满意的赶紧和吴yf一块呆着去,不要找我。社会大家有各种事忙,没人能对一个开源的产品做任何品质保证,你应当对使用它的后果自己负责。

如果你不满意我以上说的,don't talk, show me your code.

如果你拿不出比我更牛的解决方案的代码,不爱用别用,没人惯着你。

比方有个说萌咖的支持 Ubuntu 22.04 的,Canonical 官方明明就没放出 netboot 文件,只支持死妈的 Cloud init,CPU 没虚拟化支持用不了,这就导致一大堆廉价 VPS 根本跑不了。20.04 没出当时论坛里一堆抱怨的,当时官方磨了很久才放出来,https://discourse.ubuntu.com/t/netbooting-the-live-server-installer/14510/18。到 22.04 官方压根装死不提了。萌咖的能跑张口就来?用自制镜像 DD 实现又不是从官方镜像源扒的文件,和 DD Win 没有本质差别,别人私自做的镜像有没有加料,你敢信吗?敢你就用,没人拦着你,我没那个财力提供服务器和带宽给你们提供 DD 包,别来我帖子里拉翔,呵呵。
发表于 2022-11-28 22:17:02 | 显示全部楼层
大佬 快点闭源了 不然司马5k狗又要抄袭代码了
发表于 2022-11-28 20:31:00 | 显示全部楼层
本帖最后由 华盛顿 于 2022-11-28 20:32 编辑

大佬气儿真大呀,

也买见着谁跟你杠呀,
一顿死马,拉翔
 楼主| 发表于 2022-11-29 12:07:20 | 显示全部楼层
本帖最后由 天权璇玑 于 2022-11-29 12:11 编辑
腾讯云6折购 发表于 2022-11-28 22:25
请问用的是哪个源的 大佬


如果不指定 -mirror "xxxx",脚本里自带的国内源:
MirrorBackup=(["debian0"]="" ["debian1"]="https://mirrors.tencent.com/debian/" ["debian2"]="https://mirrors.aliyun.com/debian/" ["debian3"]="https://mirrors.aliyun.com/debian-archive/debian/" ["ubuntu0"]="" ["ubuntu1"]="http://mirrors.tencent.com/ubuntu/" ["ubuntu2"]="http://mirrors.aliyun.com/ubuntu/" ["centos0"]="" ["centos1"]="https://mirrors.cloud.tencent.com/centos/" ["centos2"]="https://mirrors.aliyun.com/centos-stream/" ["centos3"]="http://mirror.nju.edu.cn/centos-altarch/" ["centos4"]="http://mirrors.aliyun.com/centos-vault/" ["fedora0"]="" ["fedora1"]="https://mirrors.aliyun.com/fedora/" ["fedora2"]="https://mirrors.bfsu.edu.cn/fedora/" ["rockylinux0"]="" ["rockylinux1"]="http://mirrors.163.com/rocky/" ["rockylinux2"]="https://mirrors.aliyun.com/rockylinux/" ["almalinux0"]="" ["almalinux1"]="https://mirrors.aliyun.com/almalinux/" ["almalinux2"]="https://mirror.sjtu.edu.cn/almalinux/")

国外源:

MirrorBackup=(["debian0"]="" ["debian1"]="http://deb.debian.org/debian/" ["debian2"]="http://ftp.kddilabs.jp/pub/debian/" ["debian3"]="http://archive.debian.org/debian/" ["ubuntu0"]="" ["ubuntu1"]="http://archive.ubuntu.com/ubuntu/" ["ubuntu2"]="http://ports.ubuntu.com/" ["centos0"]="" ["centos1"]="http://mirror.centos.org/centos/" ["centos2"]="http://mirror.stream.centos.org/" ["centos3"]="http://mirror.math.princeton.edu/pub/centos-altarch/" ["centos4"]="http://vault.centos.org/" ["fedora0"]="" ["fedora1"]="https://download-ib01.fedoraproject.org/pub/fedora/linux/" ["fedora2"]="https://download-cc-rdu01.fedoraproject.org/pub/fedora/linux/" ["rockylinux0"]="" ["rockylinux1"]="http://download.rockylinux.org/pub/rocky/" ["rockylinux2"]="http://ftp.riken.jp/Linux/rocky/" ["almalinux0"]="" ["almalinux1"]="http://repo.almalinux.org/almalinux/" ["almalinux2"]="http://ftp.iij.ad.jp/pub/linux/almalinux/")

每个源都带一个以上同类源的备份,防止首个源突然宕机,有后备撑着,这些网址都来自哪里,权不权威,你应该比我清楚
 楼主| 发表于 2022-11-29 05:23:10 | 显示全部楼层
疯狂痴呆 发表于 2022-11-28 21:46
bash InstallNET.sh -debian 11 -raid "0" -pwd testhostloc -port 55
刚试了这条,失联了

还有一种可能,你机器原先环境是不是非dhcp而是静态地址?如果是,强制启用dhcp会导致网络配置失败,试试带上--dhcp-static参数,用静态分配的方式执行网络配置
 楼主| 发表于 2022-11-28 20:40:01 | 显示全部楼层
本帖最后由 天权璇玑 于 2022-11-28 20:41 编辑
沙龙 发表于 2022-11-28 20:32
请问,-v改如何指定呢?我测试--ver -v都不行。


系统会自动检测当前硬件平台,并自动转换对应的系统,比如 amd64 to x86_64,arm64 to aarch64,转回来也没问题,你直接选择要装什么系统就行了,端口默认就是22,不用额外指定,最简单的:

bash InstallNET.sh -pwd "xxx" -mirror "http://ftp.riken.jp/Linux/debian/debian/"
发表于 2022-11-28 17:00:49 | 显示全部楼层
 楼主| 发表于 2022-11-28 16:06:52 | 显示全部楼层

支持 raid 0 了,我没有环境,你跑一下试试:bash InstallNET.sh -debian 11 -raid "0"
 楼主| 发表于 2022-11-28 15:35:14 | 显示全部楼层
huanx 发表于 2022-11-28 14:15
-debian 11  可能需要改成这个了..

不定制任何内容,直接 bash InstallNET.sh -debian 最简单,如果要加其他参数,必须要指定版本号,比如 -debian 11
 楼主| 发表于 2022-11-28 12:57:48 | 显示全部楼层
xjack 发表于 2022-11-28 12:29
ORACLE ARM 可以DD成WIN2022吗?

DD Win 特性和萌咖的脚本功能一致,确保 DD 镜像包可用就行
发表于 2022-11-28 06:34:02 | 显示全部楼层
来个raid0 安装
发表于 2022-11-28 05:20:14 来自手机 | 显示全部楼层
前排膜拜大佬 已fork
发表于 2022-11-28 06:00:45 | 显示全部楼层
这个默认时区是日本还是上海???
发表于 2022-11-28 06:07:02 | 显示全部楼层
我的直连链接下载的时候文件名会变成乱码,没有扩展名
这时候会跳出
  1. Please input vaild URL, Only support gz or xz file
复制代码

我明确知道这个文件是 .xz 的可用镜像,这时候能不能让我手动输入扩展名。
 楼主| 发表于 2022-11-28 06:25:37 | 显示全部楼层
loveqianool 发表于 2022-11-28 06:07
我的直连链接下载的时候文件名会变成乱码,没有扩展名
这时候会跳出

可以,加个 -filetype 参数,指定 gz 或 xz 来解包文件,比如 -filetype "xz"
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-3-29 20:14 , Processed in 0.071090 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表