前言
继上文 记一次DD安装Fedora系统 后 出现了新的问题 发现Fedora的内核即便是系统更新 也无法升级内核版本
所以这决定自制一个Fedora的DD镜像
用到的工具
1、virtualBox
2、Fedora32镜像文件(虽然可以使用网络版但是感觉不如直接dvd反正没差别)
步骤
1、打开 VirtualBox
2、新建
(名称随意)
(文件夹放一个你能找到的)
(内存大小 这里选的是2G但是似乎没有什么关系)
点击创建
3、创建
文件大小这里3G够用了
虚拟硬盘文件类型选择 VHD
选择固定大小 然后点击创建
4、安装系统
对刚才创建的系统点击右键 -> 存储 -> 没有盘片 -> 选择刚才下载的镜像文件 -> OK
然后启动系统 选择 Install Fedora 32
等待进入该界面 选择好语言 点击下一步
选择 软件选择 选择 Fedora定制操作系统(因为是最小化安装)
进入到磁盘界面 选择完磁盘后 下面选择 自定义 ->完成
进行如下配置
点击完成->点击开始安装->等待安装完成后 重启系统
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文件放出来
登录密码为: nmxcltd
存放于onedrive中 :fedora32-x86-64-minimal.gz
不知道是否可用的直链:fedora32-x86-64-minimal.gz
2022-03-18 00:03:16 星期五
Fedora35
补:
boot建议设置为500M
cockpit一些功能无法使用的解决方法:dnf install polkit
Nginx编译安装时出现
`Can't locate FindBin.pm in @INC (you may need to install the FindBin module)`
解决:
`dnf install perl`
挂载那一步 个人实测可以不用处理