清理
make clean 删除大多数的编译生成文件, 但是会保留内核的配置文件.config, 还有足够的编译支持来建立扩展模块
make mrproper 删除所有的编译生成文件, 还有内核配置文件, 再加上各种备份文件
make distclean mrproper删除的文件, 加上编辑备份文件和一些补丁文件。
配置makefile
make menuconfig
可以通过最右下角的load可以读取本地的.config文件.
添加新添加NTFS文件系统支持模块:
File systems --->DOS/FAT/NT Filesystems --->NTFS file system support
make -j2
如果发生No rule to make target 'certs/rhel.pem', needed by 'certs/x509_certificate_list'. Stop错误,试试如下方法(我是通过方法三来解决的):
(一)
yum install *rhsm*
(二)
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm
pm2cpio python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm | cpio -iv --to-stdout ./etc/rhsm/ca/redhat-uep.pem | tee /etc/rhsm/ca/redhat-uep.pem
docker pull registry.access.redhat.com/rhel7/pod-infrastructure:latest
此时kubectl get pods 会显示running状态
[root@docker-master1 ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
mynginx 1/1 Running 0 13m
(三)
在makefile中搜索certs/rhel.pem,一共连着三行,注释掉
安装:
mkdir mod
make modules_install INSTALL_MOD_PATH=mod
make INSTALL_PATH=../root install
#The INSTALL_MOD_PATH variable is needed to install the modules in the target root filesystem instead of your host root filesystem.
清理内核
find . -type f -exec strip -g {} \;
生成文件initfs
cd mod/lib/modules/
tar cf 4.18.0+.tar.gz 4.18.0+/
cp 4.18.0+.tar.gz /lib/modules/
tar cf 4.18.0+.tar.gz 4.18.0+/
dracut -k /lib/modules/4.18.0+/ --kver 4.18.0+
dracut从一个已经安装的系统创建一个 initramfs 镜像,并将镜像与dracut框架结合在一起,通常在 /usr/lib/dracut/modules.d/. ,dracut的框架尝试有尽可能更少的硬编码进入initramfs。dracut的 initramfs 依赖 udev 去创建符号链接到设备节点,接着,当rootfs的设备节点出现的时候,它被挂载和根切换到rootfs设备。 这个有助于保持在initramfs里要求的时间尽可能的少。
修改grub.cfg:
方法一:
拷贝启动菜单一项改写;
方法二:
参考连接:https://blog.csdn.net/tong2357/article/details/103959992
dnf install grubby
查看默认启动项
grubby --default-kernel
/boot/vmlinuz-4.18.0-80.7.1.el8_0.x86_64
查看所有内核
grubby --info=ALL
查看指定内核启动项
grubby --info=/boot/vmlinuz-4.18.0-80.7.1.el8_0.x86_64
修改默认启动
grubby --set-default /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64
grubby --default-kernel
修改内核启动项参数
[root@aikaiyuan ~]# grubby --update-kernel=/boot/vmlinuz-4.18.0-80.7.1.el8_0.x86_64 --args=console=ttyS0,115200
[root@aikaiyuan ~]# grubby --info=/boot/vmlinuz-4.18.0-80.7.1.el8_0.x86_64