在CentOS噶(gǎ)了之后

从接触Linux开始我一直在使用RHEL,发生的事情大家应该都知道,说实话很多人都有被背刺了的感觉,所以至今为止AlmaLinux和Rocky Linux到底谁才是CentOS的正统继任者的争论也一直没有停过。

因为我最近接触的一些IDC的机器有两种情况:

1.不提供CentOS 7以上的版本或AlmaLinux。

2.提供的CentOS 8次版本号低于4,无法更新,也就不能使用AlmaLinux的迁移脚本

甚至有一家IDC只提供了Debian,别无其他选择,基于这些情况我需要一个干净的RHEL社区版系统的DD镜像。我找到了一个提供AlmaLinux重装脚本的网站,但是要求RAM最低2GB,手头都是小鸡肯定没有办法使用,除此以外再没有任何网站有能用的办法。

所以我参考了Cosmic Cat †的教程,打算自己制作一个AlmaLinux的DD镜像。

[教程]制作Linux的DD包

 


我把能踩的坑全踩了一遍

折腾了三天三夜,我把基于以上教程时踩到的坑总结一下。

1.挂载boot分区的问题

在挂上ISO安装CentOS或AlmaLinux系统的时候需要给boot分区设置LABEL,编辑/etc/fstab时不要把boot分区的UUID=XXXXXXXX删掉,改成LABEL=你设置的LABEL。

不然就像他文章里写的你要在自启的时候手动挂载boot分区,否则更新一下装个内核的话就寄了。

2.RHEL 9磁盘无法扩容

首先表示下感谢,我在制作过程中使用了cxthhhhh.com的Disk_LVM_Partition.sh分区脚本,能够自动把未分配空间分区并添加到卷组。

问题是这样的,首先在我测试的过程中并不能直接使用resize2fs来添加到卷组,而是需要换成xfs_growfs。

9系统的问题在于使用分区命令时候会报错,因为将系统安装在VirtualBox里时,/etc/lvm/devices/system.devices里会把IDNAME生成名为sys_wwid的随机字符串,比如这样:

IDTYPE=devname IDNAME=sys_wwid t10.ATA_____VBOX_HARDDISK___________________________VBec743897-d6505ce8_ DEVNAME=/dev/vda2 PVID=vYhgX5El2a4AtdFpceVqWHDrG3yaDnq3 PART=2

解决办法也很简单,把IDNAME改成和DEVNAME一样的路径就OK了。


镜像做出来了

目前我做了三个版本,分别基于CentOS 7.9、AlmaLinux8.7和9.1的原版ISO制作,采用最小化安装,除必要修改以外无任何添加和私货。

如果您考虑安全问题,我也表示理解,那您只好自己去做了。建议您使用自建服务器储存镜像,减轻本站小水管的带宽负担。

所有镜像默认root密码均为zankyo.cc,安装后请立即修改

一键脚本

wget -N --no-check-certificate https://dl.zankyo.cc/dd/network-reinstall-os.sh && chmod +x network-reinstall-os.sh && ./network-reinstall-os.sh

CentOS 7

https://dl.zankyo.cc/dd/IMAGE/CentOS7.vhd.gz

MD5: 3B1BC61E46DC4202846F537866A8814F
SHA1: 9130F46C648220EE06BED99EF63A494B3178065E

AlmaLinux 8

https://dl.zankyo.cc/dd/IMAGE/AlmaLinux8.vhd.gz

MD5: 0024DF4CEEE4F5432F1BAD6FFD1E754D
SHA1: 8D6E23DE6087795000B458218A8E6596F483288A

AlmaLinux 9

https://dl.zankyo.cc/dd/IMAGE/AlmaLinux9.vhd.gz

MD5: AF388EA820A6A7CBF975154EF926677D
SHA1: C8EB874387363C35D0D26E3D78E42988DCD852DF

已知问题

以上三个镜像在本地VMWare虚拟机、Vultr和IDCF中完美测试通过,目前已知问题:

1.网卡默认设置为DHCP,在部分IDC重装后不能自动获取IP,可以自己进VNC手动修改/etc/sysconfig/network-scripts来添加IPADDR和GATEWAY。

2.安装后dracut提示无法找到硬盘分区,出现此问题的原因是镜像没有加载IDC设置的默认SCSI控制器驱动,请尝试在服务器面板上把SCSI控制器设置为Virtio SCSI,或详询您的服务商。

3.不能算问题,但是镜像并没有设置swap分区,如果需要的话可以自己设置。

4.使用本镜像安装的系统AlmaLinux8和9之间不能互相DD,也不能DD两次相同的镜像。

附:RHEL8内存显示和实际硬件内存大小不符

kdump服务为crashkernel保留保留了一部分内存,用于在系统崩溃时生成内核转储文件。

停止kdump服务:

systemctl stop kdump
systemctl disable kdump

修改grub文件,将crashkernel=auto改为crashkernel=0:

vi /etc/default/grub

更新grub配置文件、重启系统

grub2-mkconfig -o /boot/grub2/grub.cfg
reboot


期待反馈

如果有问题欢迎反馈或自己尝试解决,除非特别严重的问题否则我大概是不会去修了,这玩意太折腾人了。想用Rocky Linux的话自己找一下迁移脚本吧,真的不想再做了……

三天三夜在VirtualBox里折腾,同时开着三个甚至四个虚拟机,16G内存根本不够用让虚拟内存吃掉几十G的硬盘空间,而且在最小化安装的系统里,错一次全部木大。

很好玩,但下次绝对不做了。

写完了才想起来,今天是这个博客的第七个年头(笑)。

生日快乐,我的博客。