前言

继上文 记一次DD安装Fedora系统 后 出现了新的问题 发现Fedora的内核即便是系统更新 也无法升级内核版本
所以这决定自制一个Fedora的DD镜像

用到的工具

1、virtualBox
2、Fedora32镜像文件(虽然可以使用网络版但是感觉不如直接dvd反正没差别)

步骤

1、打开 VirtualBox

2、新建


(名称随意)
(文件夹放一个你能找到的)
(内存大小 这里选的是2G但是似乎没有什么关系)
点击创建

3、创建


文件大小这里3G够用了
虚拟硬盘文件类型选择 VHD
选择固定大小 然后点击创建

4、安装系统

对刚才创建的系统点击右键 -> 存储 -> 没有盘片 -> 选择刚才下载的镜像文件 -> OK

a90a55ea5b0961f117b13ec2ae7ac09b.png

然后启动系统 选择 Install Fedora 32

fc37ec3eba6ef09b22c91c971ba01c61.png

等待进入该界面 选择好语言 点击下一步

b4f60052536be6075604773e93cb6fc0.png

选择 软件选择 选择 Fedora定制操作系统(因为是最小化安装)

97ca5895095f07a622551d6017b33e60.png

进入到磁盘界面 选择完磁盘后 下面选择 自定义 ->完成

0a4b8ef18b0e773ab0d4d0e10a27e6c8.png

进行如下配置

2d388a08474b6e9bfc0a9e5a80a3eb38.png
5903cc71f5c5072deb9b8bc187c534a3.png

点击完成->点击开始安装->等待安装完成后 重启系统

5、收尾工作

修改 /etc/default/grub

在 在GRUB_CMDLINE_LINUX 行值内容中添加
net.ifnames=0 biosdevname=0
保存退出
保存退出
然后运行grub2-mkconfig -o /boot/grub2/grub.cfg 重新生成grub配置文件
然后重启系统

cd /etc/sysconfig/network-scripts来查看当前ifcfg-*文件是否为 ifcfg-eth0
如果不是则修改
vi /ifcfg-eth0

仅需保留一下选项其他删掉即可

TYPE=Ethernet
BOOTPROTO=dhcp
IPV6INIT=yes
IPV6_AUTOCONF=yes
NAME=eth0
DEVICE=eth0
ONBOOT=yes

然后检查/etc/udev/rules.d/70-persistent-net.rules是否存在 存在则删除

修复启动(这个如果是跟我一模一样步骤的话 是不需要修改的 所以可以忽略 当然仅限Fedora32 其他版本 其它系统我不知道)

最后修改 /etc/fstab 将/boot/使用的分区那一行删除

然后在 rc.local (或其他自启选项)中添加如下代码(关于这个具体是什么可以百度一下~有比较详细的说明 这里文章简短 就不详说了)

mount /dev/*da1 /boot

在/etc/dracut.conf里添加

add_drivers+="virtio_blk virtio_scsi xen_blkfront xenfs xen_privcmd hv_storvsc hv_vmbus hv_utils mptspi scsi_transport_spi mptscsih mptbase"
这段代码
然后输入 dracut -f
如果正常则无输出

cd ~
echo "" > .bash_history

清理历史记录
然后就可以关机 找到创建的vhd文件 进行打包 成gz文件 (建议选择极限压缩 主要是小)
打包完成后上传到任何一个可以使用直链的地方 例如对象存储

yum install -y xz openssl gawk file glibc-common wget screen && screen -S os
wget --no-check-certificate -O AutoReinstall.sh https://git.io/betags && chmod a+x AutoReinstall.sh && bash AutoReinstall.sh
#选择(99)即自定义镜像
#输入你上传的镜像直链地址

安装完成后即可

这里我将我的fedora32的dd文件放出来
登录密码为: nmxc.ltd

存放于onedrive中 :fedora32-x86-64-minimal.gz
不知道是否可用的直链:fedora32-x86-64-minimal.gz


补:
boot建议设置为500M
cockpit一些功能无法使用的解决方法:
dnf install polkit
挂载那一步 个人实测可以不用处理


沉淪在無盡的深淵當中...