สามวิธีในการอัปเกรดเคอร์เนลของระบบ CentOS สำหรับคอมพิวเตอร์อุตสาหกรรม
ในการใช้งาน CentOS นั้น การอัปเกรดเคอร์เนลเป็นสิ่งที่หลีกเลี่ยงไม่ได้ แต่บางครั้งเนื่องจากปัญหาการพึ่งพาการคอมไพล์ซอร์สโค้ด ทำให้โปรแกรมบางโปรแกรมไม่รองรับเคอร์เนลเวอร์ชันล่าสุด ดังนั้นต่อไปนี้จะแนะนำสามวิธีในการอัปเกรดเคอร์เนล
บันทึก:
เกี่ยวกับประเภทของเคอร์เนล:
ตัวอักษร ml ใน kernel-ml เป็นตัวย่อของ [mainline stable] ในภาษาอังกฤษ และเวอร์ชัน mainline ที่เสถียรล่าสุดจะแสดงอยู่ใน elrepo-kernel
lt ใน kernel-lt เป็นตัวย่อของ [long term support] ในภาษาอังกฤษ และเวอร์ชันที่ได้รับการสนับสนุนระยะยาวจะแสดงอยู่ใน elrepo-kernel
ตรวจสอบเวอร์ชันเคอร์เนล
อูนาเมะ -อาร์

สารบัญ
1. การติดตั้ง Yum
1. นำเข้าซอร์สโค้ดของที่เก็บข้อมูล
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
2. ดูแพ็กเกจที่สามารถติดตั้งได้
yum --enablerepo="elrepo-kernel" list --showduplicates | sort -r | grep
เคอร์เนล-ml.x86_64
3. เลือกเวอร์ชัน ML หรือ LT เพื่อทำการติดตั้ง
หากไม่ได้ระบุเวอร์ชัน ระบบจะติดตั้งเวอร์ชันล่าสุดโดยค่าเริ่มต้น
ติดตั้งเวอร์ชัน ML
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
ติดตั้งเวอร์ชัน LT เลือกตัวเลือกนี้สำหรับ K8S ทั้งหมด
yum --enablerepo=elrepo-kernel install kernel-lt-devel kernel-lt -y
4. ตรวจสอบลำดับการบูตเคอร์เนลปัจจุบัน
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
5. แก้ไขรายการบูตเริ่มต้น
xxx คือหมายเลขลำดับ ซึ่งระบุว่ารายการใดในรายการบูตเป็นรายการบูตลำดับที่ x โดยที่ x เริ่มนับจาก 0
grub2-set-default xxxx
ตัวอย่างเช่น หากคุณต้องการตั้งค่าให้บูตด้วยเคอร์เนลเวอร์ชัน 4.4
จากนั้นให้ป้อนคำสั่ง "grub2-set-default 0" โดยตรง แล้วคุณจะสามารถเริ่มต้นจากเวอร์ชัน 4.4 ได้ในครั้งต่อไปที่คุณเริ่มระบบ
ตรวจสอบลำดับการบูตเคอร์เนล
[root@localhost ~] awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (4.4.179-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-6d4c599606814867814f1a8eec7bfd1e) 7 (Core)
ตั้งค่าหมายเลขลำดับการบูต
[root@localhost ~] grub2-set-default 0
รีบูต
รีบูต
ตรวจสอบเวอร์ชันเคอร์เนล
อูนาเมะ -อาร์
2. การติดตั้ง RPM
ตรวจสอบเวอร์ชันเคอร์เนล
อูนาเมะ -อาร์
1. ค้นหาเวอร์ชัน
เนื่องจากซอร์สโค้ดของ ELRepo เป็นเวอร์ชันล่าสุด เวอร์ชันเก่าของเคอร์เนลจึงต้องดาวน์โหลดด้วยตนเองเท่านั้น
ค้นหาเวอร์ชันเก่าของ kernel rpm:
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/
2. คุณต้องดาวน์โหลดไฟล์ rpm สามประเภท
วเก็ต
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt
devel-4.4.215-1.el7.elrepo.x86_64.rpm
วเก็ต
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt
headers-4.4.215-1.el7.elrepo.x86_64.rpm
วเก็ต
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-
4.4.215-1.el7.elrepo.x86_64.rpm
3. ติดตั้งเคอร์เนล
rpm -ivh kernel-lt-4.4.215-1.el7.elrepo.x86_64.rpm
rpm -ivh kernel-lt-devel-4.4.215-1.el7.elrepo.x86_64.rpm
หรือ
#ติดตั้งทั้งหมดในคลิกเดียว
rpm -Uvh *.rpm
4. ตรวจสอบเวอร์ชันเคอร์เนลที่ติดตั้งไว้
[root@localhost ~]# rpm -qa | grep kernel
ส่วนหัวของเคอร์เนล 3.10.0-1160.15.2.el7.x86_64
kernel-devel-3.10.0-1160.49.1.el7.x86_64
kernel-tools-libs-3.10.0-957.el7.x86_64
เคอร์เนล-3.10.0-957.el7.x86_64
เคอร์เนล-เอ็มแอล-4.9.9-1.el7.elrepo.x86_64
kernel-lt-4.4.215-1.el7.elrepo.x86_64
kernel-tools-3.10.0-957.el7.x86_64
kernel-lt-devel-4.4.215-1.el7.elrepo.x86_64
5. ตั้งค่าการเริ่มต้นระบบ
ตรวจสอบลำดับการเริ่มต้นระบบ
[root@localhost ~]# awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (4.4.215-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (4.9.9-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-b91f945269084aa98e8257311ee713c5) 7 (Core)
ตั้งค่าลำดับการบูต
[root@localhost ~]# grub2-set-default 0
รีบูตเครื่องเพื่อให้มีผล
[root@localhost ~]# รีบูต
3. การติดตั้งซอร์สโค้ด
1. ติดตั้งแพ็คเกจซอฟต์แวร์หลัก
yum install -y gcc make git ctags ncurses-devel openssl-devel
yum install -y bison flex elfutils-libelf-devel bc
2. สร้างไดเร็กทอรีสำหรับการคอมไพล์เคอร์เนล
ใช้ไดเร็กทอรี kernelbuild ภายใต้ home
mkdir ~/kernelbuild
3. ดาวน์โหลดซอร์สโค้ดของเคอร์เนล
เว็บไซต์สำรองของมหาวิทยาลัยชิงหัว:
https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/?C=M&O=D
แหล่งดาวน์โหลดแพ็คเกจติดตั้งซอร์สโค้ดอื่นๆ:
https://mirrors.edge.kernel.org/pub/linux/kernel/
linux-4.xx.xx.tar.xz
linux-4.xx.xx.tar.gz
ทั้งสองรูปแบบสามารถใช้งานได้ แต่ tar.xz มีอัตราการบีบอัดสูงกว่าและขนาดไฟล์เล็กกว่า
ดาวน์โหลดออนไลน์: wget https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/linux-4.17.11.tar.xz
4. แตกไฟล์โค้ดเคอร์เนล
หลังจากแตกไฟล์แล้ว ให้เข้าไปในไดเร็กทอรีต้นทาง:
tar -xvJf linux-4.17.11.tar.xz
เพื่อให้แน่ใจว่าโครงสร้างเคอร์เนลสะอาดหมดจด ให้เข้าไปในไดเร็กทอรีเคอร์เนลแล้วเรียกใช้คำสั่ง make mrproper:
cd linux-4.17.11
ทำความสะอาดและทำให้คุณเรียบร้อย
5. การกำหนดค่าเคอร์เนล
คัดลอกไฟล์การกำหนดค่าเคอร์เนลปัจจุบัน
config-3.10.0-862.el7.x86_64 คือไฟล์การกำหนดค่าเคอร์เนลของสภาพแวดล้อมปัจจุบันของฉัน โปรดแก้ไขตามสถานการณ์จริง
cp /boot/config-3.10.0-862.el7.x86_64 .config
การกำหนดค่าขั้นสูง
y ถูกเปิดใช้งาน, n ถูกปิดใช้งาน และ m จะถูกเปิดใช้งานเมื่อจำเป็น
make menuconfig: อินเทอร์เฟซ ncurses แบบเก่า ถูกแทนที่ด้วย nconfig
make nconfig: อินเทอร์เฟซ ncurses บรรทัดคำสั่งใหม่
6. คอมไพล์และติดตั้ง
คอมไพล์เคอร์เนล
หากคุณมีเครื่องคอมพิวเตอร์แบบควอดคอร์ ค่า x สามารถเป็น 8 ได้
สร้าง -jx
ติดตั้งเคอร์เนล
หลังจากคอมไพล์เคอร์เนลเสร็จแล้ว ให้ติดตั้ง: คำเตือน: จากนี้ไป คุณต้องมีสิทธิ์ระดับรูทในการเรียกใช้คำสั่ง มิเช่นนั้นจะเกิดข้อผิดพลาด
make modules_install install
7. ตั้งค่าการเริ่มต้นระบบ
ตรวจสอบลำดับการเริ่มต้นระบบ
[root@localhost ~]# awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (4.17.11-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (4.9.9-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-b91f945269084aa98e8257311ee713c5) 7 (Core)
ตั้งค่าลำดับการบูต
[root@localhost ~]# grub2-set-default 0
รีบูตเครื่องเพื่อให้มีผล
[root@localhost ~]# รีบูต
LET'S TALK ABOUT YOUR PROJECTS
- sinsmarttech@gmail.com
-
3F, Block A, Future Research & Innovation Park, Yuhang District, Hangzhou, Zhejiang, China
Our experts will solve them in no time.

พีซีแบบแร็คเมาท์
การประมวลผลแบบฝังตัว
คอมพิวเตอร์พกพาสำหรับงานอุตสาหกรรม
แท็บเล็ตทนทาน
แล็ปท็อปที่ทนทาน
คอมพิวเตอร์แบบแผงอุตสาหกรรม
อุปกรณ์พกพาที่ทนทาน
คอมพิวเตอร์อุตสาหกรรม Advantech