อูบุนตู 21.10.
ฉันกำลังสร้างเมล็ดตามที่บันทึกไว้ที่ https://help.ubuntu.com/community/Kernel/Compile และ https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel.
DEB_BUILD_OPTIONS=ขนาน=$(getconf _NPROCESSORS_ONLN) AUTOBUILD=1 NOEXTRAS=1 \
เดเบียนปลอม / กฎไบนารีอาร์ค
คำสั่งการรวบรวมนี้มีผลลัพธ์เหมือนกัน:
ทำ --jobs=$(getconf _NPROCESSORS_ONLN) bindeb-pkg \
LOCALVERSION=-custom-$(git อธิบาย | tr '[:บน:]' '[:ล่าง:]')
สิ่งนี้สร้างบางส่วน .deb
แพ็คเกจ:
$ ls -hal ../*.deb
-rw-r--r-- 1 amedee amedee 8,2M ก.พ. 26 02:17 ../linux-headers-5.13.19-ubuntu-5.13.0-22.22_5.13.19-ubuntu-5.13.0-22.22- 6_amd64.deb
-rw-r--r-- 1 amedee amedee 70M 26 กุมภาพันธ์ 02:18 ../linux-image-5.13.19-ubuntu-5.13.0-22.22_5.13.19-ubuntu-5.13.0-22.22-6_amd64 หนี้
-rw-r--r-- 1 amedee amedee 1,2M 26 กุมภาพันธ์ 02:17 ../linux-libc-dev_5.13.19-ubuntu-5.13.0-22.22-6_amd64.deb
ฉันติดตั้งดังนี้:
sudo dpkg --ติดตั้ง \
../linux-headers-5.13.19-ubuntu-5.13.0-22.22_5.13.19-ubuntu-5.13.0-22.22-6_amd64.deb \
../linux-image-5.13.19-ubuntu-5.13.0-22.22_5.13.19-ubuntu-5.13.0-22.22-6_amd64.deb
นี่คือเนื้อหาของ /บูต
:
$ ls -hal /boot/*5.13*
-rw-r--r-- 1 รูทรูท 252K 5 พฤศจิกายน 10:21 /boot/config-5.13.0-22-generic
-rw-r--r-- 1 รูทรูท 251K 26 ก.พ. 02:15 /boot/config-5.13.19-ubuntu-5.13.0-22.22
-rw-r--r-- 1 รูทรูท 40M 22 ก.พ. 16:21 /boot/initrd.img-5.13.0-22-generic
-rw-r--r-- 1 รูทรูท 37M ก.พ. 26 02:20 /boot/initrd.img-5.13.19-ubuntu-5.13.0-22.22
-rw------- 1 รูทรูท 5,7M 5 พ.ย. 10:21 /boot/System.map-5.13.0-22-generic
-rw-r--r-- 1 รูทรูท 5,6M ก.พ. 26 02:15 /boot/System.map-5.13.19-ubuntu-5.13.0-22.22
-rw------- 1 รูทรูท 9,8M 5 พ.ย. 13:51 /boot/vmlinuz-5.13.0-22-generic
-rw-r--r-- 1 รูทรูท 8,5M ก.พ. 26 02:15 /boot/vmlinuz-5.13.19-ubuntu-5.13.0-22.22
อัปเดต initramfs (ซึ่งพูดอย่างเคร่งครัดไม่จำเป็นเพราะได้ทำไปแล้ว แต่สำหรับมาตรการที่ดี):
$ sudo update-initramfs -u -k ทั้งหมด
อัปเดต initramfs: กำลังสร้าง /boot/initrd.img-5.13.19-ubuntu-5.13.0-22.22
update-initramfs: กำลังสร้าง /boot/initrd.img-5.13.0-22-generic
จากนั้นฉันก็วิ่ง ปรับปรุงด้วง
:
amedee@kerbol:~/repos/ubuntu-impish$ sudo update-grub
การจัดหาไฟล์ `/etc/default/grub'
การจัดหาไฟล์ `/etc/default/grub.d/init-select.cfg'
กำลังสร้างไฟล์การกำหนดค่าด้วง ...
พบอิมเมจ linux: /boot/vmlinuz-5.13.0-22-generic
พบภาพ initrd: /boot/initrd.img-5.13.0-22-generic
พบอิมเมจ linux: /boot/vmlinuz-5.13.0-22-generic
พบภาพ initrd: /boot/initrd.img-5.13.0-22-generic
การเพิ่มรายการเมนูบู๊ตสำหรับการตั้งค่าเฟิร์มแวร์ UEFI
เสร็จแล้ว
เคอร์เนลที่รวบรวมของฉัน 5.13.19-อูบุนตู-5.13.0-22.22
ไม่ถูกเพิ่มในเมนู Grub โดย ปรับปรุงด้วง
. ฉันรู้ว่าฉันสามารถเพิ่มด้วยตนเองได้ แต่นั่นก็มีความเสี่ยงที่จะพิมพ์ผิด ฉันต้องรวบรวมเมล็ดจำนวนมากด้วยเพราะฉันพยายามค้นหาจุดบกพร่องที่เป็นไปได้โดยใช้ คอมไพล์แบ่งครึ่ง
. ปัญหาเคอร์เนลที่ฉันกำลังแก้ไขไม่ได้เกิดขึ้นในเคอร์เนล mainline ล่าสุด เฉพาะในเคอร์เนล Ubuntu 21.10 (บางส่วน แต่ไม่ใช่ทั้งหมด) ดังนั้นฉันจึงทำเช่นนี้เพื่อเรียนรู้บางสิ่งและเพื่อตอบสนองความอยากรู้อยากเห็นของฉันเท่านั้น
ฉันต้องทำอะไรเพื่อที่ ปรับปรุงด้วง
เพิ่มเคอร์เนลที่คอมไพล์แล้วของฉันจากไฟล์ /บูต
ไดเร็กทอรีไปยังเมนู Grub?