วิธีลบเคอร์เนลเก่าที่ไม่ได้ใช้ใน Debian และ Ubuntu
ในบทความล่าสุดของเรา เราได้อธิบายวิธีลบเคอร์เนลเก่าที่ไม่ได้ใช้ใน CentOS/RHEL/Fedora ในบทความนี้ เราจะอธิบายวิธีลบเคอร์เนลเก่าที่ไม่ได้ใช้ในระบบ Debian และ Ubuntu แต่ก่อนที่จะดำเนินการต่อ คุณอาจต้องการติดตั้งเวอร์ชันล่าสุดเพื่อใช้ประโยชน์จาก: การแก้ไขด้านความปลอดภัย ฟังก์ชันเคอร์เนลใหม่ ไดรเวอร์ที่อัปเดต และอื่นๆ ล้นหลาม.
หากต้องการอัพเกรดเคอร์เนลของคุณเป็นเวอร์ชันล่าสุดใน Ubuntu และ Debian ให้ทำตามคำแนะนำนี้:
- วิธีอัปเกรดเคอร์เนลเป็นเวอร์ชันล่าสุดใน Ubuntu
ข้อสำคัญ: ขอแนะนำให้เก็บเคอร์เนลเก่าไว้อย่างน้อยหนึ่งหรือสองเคอร์เนลไว้ใช้ในกรณีที่มีปัญหาในการอัปเดต
หากต้องการค้นหาเคอร์เนล Linux เวอร์ชันปัจจุบันที่ทำงานบนระบบของคุณ ให้ใช้คำสั่งต่อไปนี้
uname -sr
Linux 4.12.0-041200-generic
หากต้องการแสดงรายการเคอร์เนลที่ติดตั้งทั้งหมดบนระบบของคุณ ให้ใช้คำสั่งนี้
dpkg -l | grep linux-image | awk '{print$2}'
linux-image-4.12.0-041200-generic
linux-image-4.8.0-22-generic
linux-image-extra-4.8.0-22-generic
linux-image-generic
ลบเคอร์เนลเก่าที่ไม่ได้ใช้บน Debian และ Ubuntu
เรียกใช้คำสั่งด้านล่างเพื่อลบ linux-image บางรายการพร้อมกับไฟล์การกำหนดค่า จากนั้นอัปเดตการกำหนดค่า grub2 และรีบูตระบบครั้งสุดท้าย
sudo apt remove --purge linux-image-4.4.0-21-generic
sudo update-grub2
sudo reboot
[sudo] password for tecmint:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
linux-generic linux-headers-4.8.0-59 linux-headers-4.8.0-59-generic linux-headers-generic linux-image-4.8.0-59-generic linux-image-extra-4.8.0-59-generic linux-image-generic
Suggested packages:
fdutils linux-doc-4.8.0 | linux-source-4.8.0 linux-tools
Recommended packages:
thermald
The following packages will be REMOVED:
linux-image-4.8.0-22-generic* linux-image-extra-4.8.0-22-generic*
The following NEW packages will be installed:
linux-headers-4.8.0-59 linux-headers-4.8.0-59-generic linux-image-4.8.0-59-generic linux-image-extra-4.8.0-59-generic
The following packages will be upgraded:
linux-generic linux-headers-generic linux-image-generic
3 upgraded, 4 newly installed, 2 to remove and 182 not upgraded.
Need to get 72.0 MB of archives.
After this operation, 81.7 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-headers-4.8.0-59 all 4.8.0-59.64 [10.2 MB]
Get:2 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-headers-4.8.0-59-generic amd64 4.8.0-59.64 [811 kB]
Get:3 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-generic amd64 4.8.0.59.72 [1,782 B]
Get:4 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-headers-generic amd64 4.8.0.59.72 [2,320 B]
Get:5 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-image-4.8.0-59-generic amd64 4.8.0-59.64 [23.6 MB]
Get:6 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-image-extra-4.8.0-59-generic amd64 4.8.0-59.64 [37.4 MB]
Get:7 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-image-generic amd64 4.8.0.59.72 [2,348 B]
Fetched 72.0 MB in 7min 12s (167 kB/s)
Selecting previously unselected package linux-headers-4.8.0-59.
(Reading database ... 104895 files and directories currently installed.)
Preparing to unpack .../0-linux-headers-4.8.0-59_4.8.0-59.64_all.deb ...
Unpacking linux-headers-4.8.0-59 (4.8.0-59.64) ...
Selecting previously unselected package linux-headers-4.8.0-59-generic.
Preparing to unpack .../1-linux-headers-4.8.0-59-generic_4.8.0-59.64_amd64.deb ...
Unpacking linux-headers-4.8.0-59-generic (4.8.0-59.64) ...
Preparing to unpack .../2-linux-generic_4.8.0.59.72_amd64.deb ...
Unpacking linux-generic (4.8.0.59.72) over (4.8.0.22.31) ...
Preparing to unpack .../3-linux-headers-generic_4.8.0.59.72_amd64.deb ...
Unpacking linux-headers-generic (4.8.0.59.72) over (4.8.0.22.31) ...
Selecting previously unselected package linux-image-4.8.0-59-generic.
Preparing to unpack .../4-linux-image-4.8.0-59-generic_4.8.0-59.64_amd64.deb ...
Done.
Removing linux-image-4.8.0-22-generic (4.8.0-22.24) ...
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.8.0-22-generic /boot/vmlinuz-4.8.0-22-generic
update-initramfs: Deleting /boot/initrd.img-4.8.0-22-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.8.0-22-generic /boot/vmlinuz-4.8.0-22-generic
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.12.0-041200-generic
Found initrd image: /boot/initrd.img-4.12.0-041200-generic
Found linux image: /boot/vmlinuz-4.8.0-59-generic
done
...
แม้ว่าวิธีนี้จะใช้ได้ผลดี แต่การใช้สคริปต์ที่มีประโยชน์ที่เรียกว่า “byobu” จะเชื่อถือได้และมีประสิทธิภาพมากกว่า ซึ่งรวมคำสั่งทั้งหมดข้างต้นเป็นโปรแกรมเดียวพร้อมตัวเลือกที่มีประโยชน์ เช่น การระบุจำนวนเมล็ดที่จะเก็บไว้ บนระบบ
ติดตั้งแพ็คเกจสคริปต์ byobu ซึ่งมีโปรแกรมชื่อ purge-old-kernels ที่ใช้สำหรับลบเคอร์เนลและแพ็คเกจส่วนหัวเก่าออกจากระบบ
sudo apt install byobu
จากนั้นจึงลบเคอร์เนลเก่าออก (คำสั่งด้านล่างอนุญาตให้เก็บเคอร์เนล 2 ไว้ในระบบ)
sudo purge-old-kernels --keep 2
คุณอาจต้องการอ่านบทความที่เกี่ยวข้องต่อไปนี้เกี่ยวกับเคอร์เนล Linux
- วิธีโหลดและยกเลิกการโหลดโมดูลเคอร์เนลใน Linux
- วิธีการเปลี่ยนพารามิเตอร์รันไทม์เคอร์เนลในลักษณะถาวรและไม่ถาวร
ในบทความนี้ เราได้อธิบายวิธีลบอิมเมจเคอร์เนลเก่าที่ไม่ได้ใช้บนระบบ Ubuntu และ Debian คุณสามารถแบ่งปันความคิดใด ๆ ผ่านข้อเสนอแนะจากด้านล่าง