本文档中,不同操作系统下的操作若有不同,会进行说明区分,若未说明,则该操作在两个操作系统下一致。
1 2 |
mkdir -p /home/kernel-bcache cd /home/kernel-bcache |
1
|
uname -a
|
查询到如下版本内核
1
|
Linux ceph3 4.14.0-115.el7a.0.1.aarch64 #1 SMP Sun Nov 25 20:54:21 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux |
1 2 |
rpm2cpio kernel-alt-4.14.0-115.10.1.el7a.src.rpm | cpio -divm tar -xvf linux-4.14.0-115.10.1.el7a.tar.xz |
1
|
yum -y install rpm-build m4 gcc xmlto asciidoc openssl-devel hmaccalc python-devel newt-devel perl-ExtUtils-Embed elfutils-devel zlib-devel binutils-devel bison audit-libs-devel java-devel numactl-devel pciutils-devel ncurses-devel createrepo genisoimage net-tools git bc |
1 2 |
cd /home/kernel-bcache/linux-4.14.0-115.10.1.el7a cp ../kernel-alt-4.14.0-aarch64.config .config |
1
|
make menuconfig
|
1
|
cp .config ../kernel-alt-4.14.0-aarch64.config |
输入“y”确认。
1 2 3 |
cd /home mkdir -p /home/bcache_patch tar -zxvf bcache_patch.tar.gz -C /home/bcache_patch |
1
|
cp /home/bcache_patch/* /home/kernel-bcache/linux-4.14.0-115.10.1.el7a/drivers/md/bcache |
1 2 |
make binrpm-pkg -j48 make rpm-pkg -j |
1 2 |
mkdir -p /home/kernel-bcache cd /home/kernel-bcache |
1
|
uname -a
|
查询到如下版本内核
1
|
Linux localhost.localdomain 4.19.90-2109.1.0.0108.oe1.aarch64 #1 SMP Mon Sep 6 03:51:48 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux |
1 2 |
rpm2cpio kernel-4.19.90-2109.1.0.0108.oe1.src.rpm | cpio -divm tar -zxvf kernel.tar.gz |
通过SFTP工具将“openEuler-***-everything-aarch64-dvd.iso”上传到服务器上“/root”目录下。
1
|
mkdir -p /iso |
此处以在根目录下创建iso文件夹为例。
1
|
mount /root/openEuler-***-everything-aarch64-dvd.iso /iso |
1
|
vi /etc/yum.repos.d/openEuler.repo
|
1 2 3 4 5 6 |
[Base] name=Base baseurl=file:///iso enabled=1 gpgcheck=0 priority=1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
[openEuler-source] name=openEuler-source baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/source/ enabled=1 gpgcheck=1 gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS/source/RPM-GPG-KEY-openEuler [openEuler-os] name=openEuler-os baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/OS/aarch64/ enabled=0 gpgcheck=1 gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS/OS/aarch64/RPM-GPG-KEY-openEuler [openEuler-everything] name=openEuler-everything baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/everything/aarch64/ enabled=0 gpgcheck=1 gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS/everything/aarch64/RPM-GPG-KEY-openEuler [openEuler-EPOL] name=openEuler-epol baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/EPOL/aarch64/ enabled=1 gpgcheck=0 [openEuler-update] name=openEuler-update baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/update/aarch64/ enabled=1 gpgcheck=0 |
1
|
dnf -y install ncurses-devel bison m4 flex rpm-build rpmdevtools asciidoc audit-libs-devel binutils-devel elfutils-devel elfutils-libelf-devel gtk2-devel java-1.8.0-openjdk-devel xz-devel libbabeltrace-devel libunwind-devel newt-devel numactl-devel openssl-devel pciutils-devel perl-generators python3-devel python3-docutils xmlto zlib-devel mkeuleros createrepo genisoimage |
1 2 |
cd /home/kernel-bcache/kernel cp arch/arm64/configs/openeuler_defconfig .config |
1
|
make menuconfig
|
1
|
cp .config arch/arm64/configs/openeuler_defconfig |
输入“y”确认。
1 2 |
make binrpm-pkg -j48 make rpm-pkg -j |