จะอัพเดตเคอร์เนลให้เป็นเวอร์ชั่นล่าสุดได้อย่างไรโดยไม่ต้องทำการอัพเกรด Distro?


146

ขณะนี้ฉันกำลังใช้ Linux-3.0 และฉันต้องการที่จะปรับปรุงมันให้กับลินุกซ์ 3.3.1 ปล่อยเคอร์เนลล่าสุดที่มั่นคงเป็นที่กล่าวถึงในhttp://www.kernel.org ฉันสามารถอัปเดตเป็น 3.3.1 ใน Ubuntu ได้โดยไม่เสี่ยงต่อการล่มหรือไม่ ฉันอัปเดตเคอร์เนลเป็นประจำตามที่ Update Managerกำหนดไว้ในขณะนี้ฉันมี Linux -.0.0.17 .. ฉันสามารถอัปเดตได้หรือไม่

บันทึก:

เคอร์เนลรุ่นล่าสุดที่ผู้ใช้ควรใช้ในอูบุนตูได้รับการอัพเดตโดยอัตโนมัติผ่าน Update Manager ดังนั้นผู้ใช้ไม่จำเป็นต้องดำเนินการใด ๆ ตามปกติเกี่ยวกับการอัพเกรดเคอร์เนล สิ่งที่ผู้เขียนคำถามที่อ้างถึงคือเคอร์เนล mainlineดู: ฉันควรอัพเกรดเป็นเมล็ด "mainline" หรือไม่


คำตอบ:


121

ชุดคำสั่งที่ง่ายที่สุดที่ฉันเคยใช้สำหรับอัพเกรดเคอร์เนล / ดาวน์เกรดคือโดยผู้ใช้ubuntuforums.orgโดยชื่อของ lykwydchykyn (url ที่แก้ไขโดยฉันสำหรับโพสต์นี้):

  1. ไปที่นี่: http://kernel.ubuntu.com/~kernel-ppa/mainline/
  2. ดาวน์โหลด 3 (อาจจะ 4) debs ไปยังโฟลเดอร์บางแห่ง:

    linux-headers-VERSION-NUMBER_all.deb
    linux-headers-VERSION-NUMBER_amd64.deb
    linux-image-VERSION-NUMBER_amd64.deb
    linux-image-extra-VERSION-NUMBER_amd64.deb   # if available
    
  3. ติดตั้ง debs ด้วย front-end package manager ใด ๆ ที่คุณใช้ (gdebi ยังอยู่หรือไม่?) หรือใช้คำสั่งเหล่านี้:

    cd /path/to/folder/where/you/put/the/debs
    sudo dpkg -i *.deb
    

แหล่งที่มา:


3
เช่นที่นี่คุณจะพบสองรุ่นสำหรับแต่ละสถาปัตยกรรม: lowlatencyและgenericสิ่งที่จะใช้ kernel.ubuntu.com/~kernel-ppa/mainline/v3.14.1-trusty
rubo77

ไม่มีโชค. ฉันมาจากเคอร์เนลต่ำสุด Utopic 64 บิต (3.16.0-31) ใน repo มาตรฐาน ฉันอัพเกรดเป็น v3.16.7-ckt8 (linux-image-3.16.7-031607-lowlatency_3.16.7-031607.201503111033_amd64.deb) ซึ่งทำงานอยู่ แต่ยังไม่มีแทร็คแพด นี่คือสำหรับ Acer C710
Ubuntourist

ฉันมีปัญหาเกี่ยวกับทัชแพด ไบออสเริ่มต้นของฉันถูกตั้งค่าเป็นโหมดขั้นสูง มันบอกว่าในไบออสอาจมีปัญหาในการใช้โหมดขั้นสูงโดยไม่มีไดรเวอร์ อย่างไรก็ตามโหมดพื้นฐานทำงานได้ดีใน Ubuntu น่าเสียดายที่โหมดพื้นฐานทำงานได้แย่มากใน Windows! ฉันหวังว่าสิ่งนี้จะช่วยในวิธีที่ง่าย
Bhikkhu Subhuti

1
เพื่อความสมบูรณ์นอกเหนือจากขั้นตอนของ @ Bucic - (4) ยอมรับตัวโหลดบูต grub ใหม่ (ตัวเลือกที่ 1) นี่อาจเป็นสิ่งที่คนส่วนใหญ่ต้องการ ในกรณีที่คุณต้องการเห็นสิ่งที่เปลี่ยนแปลงให้ทำการเปรียบเทียบเพื่อตรวจสอบ แต่มันอาจจะเขียนไฟล์ Grub conf ของคุณใหม่ด้วยข้อมูลเคอร์เนลใหม่ที่คุณต้องการ (5) รีบูต sudo apt-get update && sudo apt-get dist-upgrade && sudo rebootนอกจากนี้เป็นเส้นทางที่ปลอดภัยมากซึ่งจะปรับรุ่นลินุกซ์ของคุณ: ในสถานการณ์ใด ๆ หลังจากรีบูตให้รันecho $(uname -r)เพื่อยืนยันว่าคุณบูตเข้าสู่เคอร์เนลใหม่ได้สำเร็จ
Manuel J. Diaz

1
@ rubo77 เมื่อเทียบกับ lowlatency ทั่วไป: askubuntu.com/questions/126664/ …
Noremac

70

คุณสามารถทำสิ่งต่อไปนี้ได้เสมอ:

apt-cache search linux-image

เลือกสิ่งที่คุณต้องการแล้วทำ:

sudo apt-get install linux-image-your_version_choice linux-headers-your_version_choice linux-image-extra-your_version_choice

4
ที่จะไม่ให้เคอร์เนลฉีด ; ค่อนข้างจะให้การสร้าง Ubuntu (หมายเลขรุ่นที่ระบุ)
Eliah Kagan

14
น่าจะดีกว่าไปกับการฉีดครั้งแรกเนื่องจากมีการนวดสำหรับระบบปฏิบัติการเป้าหมาย
quickshiftin

ทำงานเหมือนมีเสน่ห์ใน Debian 8 ขอบคุณ!
GTodorov

9
อย่าลืมติดตั้งส่วนหัวเคอร์เนลด้วย: sudo apt-get install linux-headers- [version] -generic [เวอร์ชั่น] ควรเหมือนกับเคอร์เนลเวอร์ชัน
mauek unak

1
รายการนี้ควรมีการเปลี่ยนแปลงดังนั้นจึงแนะนำให้ผู้ใช้ติดตั้งแพ็กเกจ linux-image-extra เพราะไม่ได้มีบางสิ่งที่อาจไม่ทำงานเช่นแป้นพิมพ์ USB ที่คุณใช้สำหรับป้อนรหัสผ่านเพื่อถอดรหัสดิสก์ของคุณ
wojci

24

คำตอบของฉันคือใช่คุณทำได้ รุ่นเสถียรคือ 3.4 แต่ในบทช่วยสอนนี้ฉันใช้ 3.3.1

รุ่นทั่วไป PAE ของ Ubuntu (32 บิต):

รันคำสั่งต่อไปนี้:

mkdir kernel\ v3.3.1-precise && cd kernel\ v3.3.1-precise
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-headers-3.3.1-030301-generic-pae_3.3.1-030301.201204021435_i386.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-headers-3.3.1-030301_3.3.1-030301.201204021435_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-image-3.3.1-030301-generic-pae_3.3.1-030301.201204021435_i386.deb
sudo dpkg -i linux-*.deb 
sudo update-grub
sudo reboot now

Ubuntu (64- บิต):

รันคำสั่งต่อไปนี้:

mkdir kernel\ v3.3.1-precise && cd kernel\ v3.3.1-precise
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-headers-3.3.1-030301-generic_3.3.1-030301.201204021435_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-headers-3.3.1-030301_3.3.1-030301.201204021435_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-image-3.3.1-030301-generic_3.3.1-030301.201204021435_amd64.deb
sudo dpkg -i linux-*.deb 
sudo update-grub
sudo reboot now

สนุก!


ฉันติดตั้งเคอร์เนล 3.8.5-raring ตามที่คุณพูดบน Ubuntu 12.04 ของฉัน แต่ตอนนี้ระบบปฏิบัติการของฉันไม่ทำงานและไม่มี cli หรือเมนูด้วงใด ๆ แค่คิด
shgnInc

ดี แต่ต้องอัปเดต ฉันแนะนำให้หาเวอร์ชั่นแล้ว google วิธีติดตั้ง คลิกที่หน้าจนกว่าคุณจะพบสิ่งนี้ สำหรับ rc6 ฉันพบสิ่งนี้yourownlinux.com/2016/03/…
Bhikkhu Subhuti

12

ตรงกันข้ามกับคำตอบที่นี่ Ubuntu ปล่อยเคอร์เนลใหม่ภายในหนึ่งหรือสองวันของทีมเคอร์เนลหลัก ฉันเคยอัพเกรดวิธีที่ยากเหมือนคำตอบที่แนะนำบางส่วน แต่ฉันพบว่านี่เป็นวิธีที่ง่ายกว่า

ผลกระทบของการติดตั้งเมล็ดด้วยตนเอง

การติดตั้งเมล็ดด้วยตนเองต้องใช้งานพิเศษ

มีเหตุผลที่คุณต้องการติดตั้งเคอร์เนล mainline ล่าสุด:

  • ข้อผิดพลาดในการอัพเดตเคอร์เนล Ubuntu LTS และคุณไม่สามารถปรับลดรุ่นได้
  • คุณมีฮาร์ดแวร์ใหม่ที่ไม่รองรับในกระแสการอัพเดตเคอร์เนล Ubuntu LTS หรือการอัพเดท HWE
  • คุณต้องการอัพเกรดความปลอดภัยหรือฟีเจอร์ใหม่เฉพาะในเคอร์เนล mainline รุ่นล่าสุด

ณ 15 มกราคม 2018 4.14.13ล่าสุดเคอร์เนลฉีดมีเสถียรภาพ ในช่วงเวลาของการเขียนหลายคนมีความสนใจที่จะติดตั้งเพื่อป้องกันช่องโหว่ความปลอดภัย Meltdown หากคุณเลือกที่จะติดตั้งด้วยตนเองคุณควรทราบ:

  • เมล็ดเก่า LTS จะไม่ได้รับการปรับปรุงจนกว่าพวกเขาจะสูงกว่าเมนูหลักเลือกแรกชื่ออูบุนตู
  • เมล็ดที่ติดตั้งแบบแมนนวลจะไม่ถูกลบด้วยsudo apt auto-removeคำสั่งปกติ คุณต้องปฏิบัติตามสิ่งนี้: ฉันจะลบเคอร์เนลเวอร์ชันเก่าเพื่อล้างข้อมูลเมนูการบูตได้อย่างไร
  • ตรวจสอบการพัฒนาในเคอร์เนลที่เก่ากว่าเมื่อคุณต้องการกลับไปใช้วิธีการอัพเดตเคอร์เนล LTS ปกติ จากนั้นลบเคอร์เนล mainline ที่ติดตั้งด้วยตนเองดังอธิบายในลิงก์สัญลักษณ์แสดงหัวข้อก่อนหน้า
  • หลังจากการลบเคอร์เนล mainline ใหม่ล่าสุดด้วยตนเองsudo update-grubแล้วเคอร์เนล LTS ล่าสุดของ Ubuntu จะเป็นตัวเลือกแรกที่เรียกว่าUbuntuบนเมนูหลักของ Grub

ค้นหาเคอร์เนลล่าสุด

ไปที่ ( kernel.ubuntu.com - Kernel PPA Mainline ) และกดEndปุ่ม:

เคอร์เนลฉีด 1

ตอนนี้คลิกที่ลิงค์4.9.8(หรือใหม่กว่าถ้ามีเมื่อคุณอ่านนี้) และต่อไปนี้จะปรากฏขึ้น:

เคอร์เนล mainline 2

หมายเหตุลิงก์ที่มีเครื่องหมายพู่กันสีดำ เหล่านี้เป็นสามเราจะดาวน์โหลดสำหรับUbuntu 16.04 64 บิตโดยใช้Intel หรือ AMDโปรเซสเซอร์

การติดตั้งโดยใช้ Terminal

เปิดเทอร์มินัลเซสชันด้วยCtrl+ Alt+ Tและใช้:

cd ~/Downloads # Change to your downloads directory
ll linux*.deb  # Check if any previous downloads still exist
rm linux*.deb  # Use this command if any previous downloads found

ตอนนี้สลับกลับไปที่หน้าจอดาวน์โหลดด้านบนและคลิกเพียงครั้งเดียวในการ.debดาวน์โหลดเคอร์เนลทั้งสาม หลังจากดาวน์โหลดเสร็จสมบูรณ์ (คุณจะเห็นสถานะในเบราว์เซอร์ของคุณ) สลับกลับไปที่เซสชันเทอร์มินัลและใช้:

sudo dpkg -i linux*.deb
rm linux*.deb
sudo reboot

Voila! - คุณใช้เคอร์เนลล่าสุดเมื่อมีการเลือกตัวเลือกแรกในเมนูการบูตด้วง เคอร์เนลเวอร์ชันเก่าของคุณยังคงมีอยู่ในเมนูตัวเลือกขั้นสูงของด้วง

หลังจากติดตั้งเคอร์เนลใหม่ล่าสุดโหลครั้งที่คุณจะถามคำถามที่ว่า " ฉันจะลบเคอร์เนลรุ่นเก่าได้อย่างไร? " และคุณจะได้พบกับคำตอบเหล่านั้นที่นี่ในถามอูบุนตู


คุณควรตอบคำถามนี้ว่า "อย่าทำให้ชีวิตของคุณวุ่นวาย"
Fabby

9

สาย แต่คำตอบใหม่

ฉันจะเพิ่มข้อมูลเพิ่มเติมในคำตอบของฉันตอนนี้เคอร์เนลเก่าของฉันคือlinux-headers-4.8.0-53การหาเคอร์เนลที่คุณพิมพ์uname -rใน terminal. ตอนนี้พิมพ์คำสั่งนี้เพื่อรับรายการของเมล็ดที่มีอยู่

apt-cache search linux-image

สิ่งนี้จะให้ผลลัพธ์ที่ยอดเยี่ยมแก่คุณตอนนี้เลือกหนึ่งในสิ่งที่คุณต้องการติดตั้งและติดตั้งโดยทำตามคำสั่ง (อย่าพิมพ์คำสั่งเหล่านี้เช่นนี้แทนที่คำว่า kernal_version ด้วยเคอร์เนลเวอร์ชันที่คุณต้องการติดตั้ง)

sudo apt-get install linux-image-kernal_version
sudo apt-get install linux-image-extra-kernal_version
sudo apt-get install linux-headers-kernal_version

ตอนนี้ในกรณีของฉันฉันเลือกlinux-image-4.10.0-22-genericดังนั้นคำสั่งของฉันจะมีลักษณะเช่นนี้

sudo apt-get install linux-image-4.10.0-22-generic 
sudo apt-get install linux-image-extra-4.10.0-22-generic
sudo apt-get install linux-headers-4.10.0-22-generic

ตอนนี้ในตอนท้ายลบเคอร์เนลเก่าโดยคำสั่ง

sudo apt-get autoremove

ตอนนี้เมื่อครั้งแรกที่ผมทำมันผมไม่ทราบว่ามันเป็นปัญหาฮาร์ดแวร์ของฉันหรือเพราะเอาเคอร์เนลเก่า แต่แล็ปท็อปของฉันแสดงให้เห็นฉันหน้าจอสีดำที่เกิดขึ้นกับแล็ปท็อปของฉันบางครั้ง .Thus ฉันลบมันเป็นแบตเตอรี่และรีบูตและพิมพ์คำสั่ง . นอกจากนี้ฉันไม่ต้องทนทุกข์ทรมานจากปัญหาหน้าจอสีดำของฉันอีกต่อไป

uname -r

และมันทำให้ฉัน

linux-image-4.10.0-22-generic

ซึ่งหมายความว่าเคอร์เนลถูกอัพเดต


3
ปัญหาหน้าจอสีดำของคุณอาจเป็นเพราะคุณลบเคอร์เนลที่ใช้งานอยู่ หลังจากคุณติดตั้งเคอร์เนลใหม่คุณต้องรีบูต จากนั้นลบเคอร์เนลเก่า
ravery

คำตอบที่ดี แม้ว่าตอนนี้สิ่งต่าง ๆ จะเปลี่ยนไปนิดหน่อย แต่ฉันก็ต้องเปลี่ยนlinux-image-extraเป็นlinux-modules-extraเวอร์ชั่น4.18.0-22-genericเพื่อใช้งานนี้
Deerchao

7

มีวิธีที่ง่ายกว่ามากในการทำเช่นนี้และเป็นวิธีที่ฉันใช้ เพียงดาวน์โหลดสคริปต์Ubuntu Mainline Kernel Updaterและเรียกใช้จากเทอร์มินัล มันจะดาวน์โหลด. deb สำหรับคุณติดตั้งเคอร์เนลใหม่และเลือกลบอันเก่า (ไม่แนะนำ) จากนั้นเลือกที่จะรีบูต

ตัวอย่างเอาต์พุต (คัดลอกจากเทอร์มินัลของฉัน):

evilsupahfly@the-black-beast:~$ sudo KernelUpdateChecker -no-rc -r utopic
Run this command to install the new kernel
/tmp/kernel-update
root@the-black-beast:~# /tmp/kernel-update
Config Notes:
Rejecting Release Candidates
Accepting Latest Kernel
Accepting kernels compiled for utopic
Accepting kernels with a version higher than 3.15.0-031500-lowlatency

Information:
Origin: 
    http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.15.1-utopic
Kernel Version:
    3.15.1-031501
Release Date:
    2014/06/16 @ 18:41 (YYYY/MM/DD @ HH:MM)

Care to look at the change log? (y=Yes, n=No) (n)

(download output skipped)    

Greetings root
    I (the-black-beast) am now self aware and a sentient being, have a nice day.
    Oh and by the way SKYNET is now active.

Installing Linux 3.15.1-031501:

(installer output skipped)

The New Kernel looks to have been installed

WARNING: If the new kernel does not boot you may regret saying yes here.
Would you like to remove the current one? (y=Yes, n=No) (n): n

Are you ready to Reboot? (y=Yes, n=No) (n): n

อัตโนมัติเกือบทั้งหมดและไม่มีปัญหาอย่างสมบูรณ์


6

ฉันเขียนสคริปต์และจะทันสมัยอยู่เสมอ

ukupgrade: อัพเกรดเคอร์เนล Ubuntu

  • เปิดเทอร์มินัลที่คุณชื่นชอบและเรียกใช้คำสั่ง follwing
  • ให้สิทธิ์อนุญาตในการเรียกใช้ไฟล์

    chmod +x ./ukupgrade

  • โทรหาสคริปต์

    ./ukupgrade


1
นี่คือสิ่งที่ดีที่สุด
อาลี

ยังคงติดตั้งรุ่นเวลาแฝงต่ำเมื่อถามผู้ใช้งานทั่วไป ~
2413

ฉันไม่รู้เกี่ยวกับเครื่องมือนี้ดังนั้นฉันจึงเขียนเครื่องมือที่คล้ายกันซึ่งสนับสนุนการเลือกรสทั่วไป / เวลาแฝงต่ำ คุณสามารถค้นหาได้ที่นี่: github.com/cristim/kernel-update
Cristian Măgherușan-Stanciu

6

เรียกใช้คำสั่งต่อไปนี้เทอร์ที่จะติดตั้งใหม่Ubuntu ฉีดเคอร์เนล

sudo apt-get update
sudo apt-get install python-bs4 python-apt
cd /tmp
rm -rf medigeek-kmp*
wget https://github.com/medigeek/kmp-downloader/tarball/master -O kmpd.tar.gz
tar xzf kmpd.tar.gz
cd medigeek-*
python kmpd.py -d

สคริปต์เป็นเจ้าภาพที่Github เพียงกดEnterแทนตัวเลขถ้าคุณติดกับคำถามบางอย่างในสคริปต์ Python


3
ฉันเป็นผู้เขียนบทนั้น ฉันเพิ่งแก้ไขมัน กรุณายื่นรายงานข้อผิดพลาดนักเขียนโปรแกรมส่วนใหญ่ไม่รู้ว่ามีบั๊กอยู่จนกว่าจะมีคนรายงาน :)
Savvas Radevic

อะไรคือข้อได้เปรียบของสคริปต์ของคุณจากเพียงแค่ทำการติดตั้งdebแพคเกจอย่างที่อธิบายโดยคำตอบที่ดีที่สุดที่นี่?
rubo77

ฉันแค่คิดถึงเครื่องมือประเภทนี้มาตั้งแต่ที่เกิดข้อผิดพลาดเพราะ apt ไม่ได้ติดตั้งการพึ่งพาสำหรับฉัน คุณจะคิดว่าฉลาดเป็นเรื่องของการพึ่งพา ไม่ถูกต้อง. สคริปต์สามารถอัปเดตสำหรับรุ่นล่าสุดหรือค้นหาหนึ่งและให้ผู้ใช้เลือก ทั้งหมดที่กล่าวว่าถ้าฉันทำให้ระบบของฉันขึ้นอีกครั้งฉันจะตรงไปตั้งแต่ฉันพบคำสั่งเทอร์มินัลสำหรับ rc6
Bhikkhu Subhuti

@SavvasRadevicImportError: No module named apt_pkg
Yahya

1
@SavvasRadevic ฉันได้ทำไปแล้ว แต่เพียงรายงานตามคำขอของคุณ
Yahya

5

หากคุณไม่ต้องการยุ่งยากในการอัพเกรดเคอร์เนลด้วยตนเองคุณสามารถลองใช้ UUKU ทำงานได้ดีแม้ใน Ubuntu ที่ซื้อขายตราสารอนุพันธ์เช่นองค์ประกอบมิ้นท์

ฉันใช้มันเพื่อแก้ไขปัญหา WiFi ของฉันเพราะบางครั้งฮาร์ดแวร์ใหม่บางตัวจะไม่ถูกตรวจพบโดยเคอร์เนลเก่า นอกเหนือจากการอัพเดทไดรเวอร์ฮาร์ดแวร์ฉันไม่คิดว่าจะต้องอัพเกรดเคอร์เนล เมล็ดใหม่มีการรักษาความปลอดภัยและการอัพเกรดประสิทธิภาพเล็กน้อย แต่ก็มีแนวโน้มที่จะทำลายสิ่งต่าง ๆ เช่น VM ของคุณ

sudo apt-add-repository -y ppa:teejee2008/ppa
sudo apt-get update
sudo apt-get install ukuu
ukuu-gtk

แหล่งข่าว:

http://www.makeuseof.com/tag/upgrade-kernel-ukuu-ubuntu/

http://www.teejeetech.in/2016/07/ukuu-v167.html?m=1


3

ตัวเลือกอื่นคือลองสร้างและปรับแต่งการปรับแต่งเช่น i3 / i5 / i7 นี้ปรับเคอร์เนล 3.2.1 สำหรับ Ubuntu:

DuoPetalFlower การทดลองของฉันกับ Linux - เคอร์เนล 3.2.1

นอกจากนี้เขายังมีโครงสร้างอะตอมของ Intel ที่ได้รับการปรับปรุงซึ่งสามารถทำงานได้ค่อนข้างดีหากคุณกำลังพยายามบีบประสิทธิภาพการทำงานทุก ๆ ออนซ์จากเน็ตบุ๊ก

มีเมล็ดอื่นเช่นLiquorixที่อ้างว่าได้รับการปรับให้เหมาะสมที่สุดสำหรับประสิทธิภาพเดสก์ท็อป

แม้ว่าจะไม่ได้รับคำแนะนำจากบางคน แต่คุณก็สามารถเรียกใช้เคอร์เนลอย่างเป็นทางการจาก Ubuntu รุ่นที่ใหม่กว่าได้โดยไม่มีปัญหา ปัจจุบันฉันใช้เคอร์เนลที่แม่นยำ 3.3.3 บน Oneiric และเครื่องของฉันทำงานได้ดีกว่าที่เคย ประสิทธิภาพและอายุการใช้งานแบตเตอรี่เพิ่มขึ้นในขณะที่อุณหภูมิลดลงไม่กี่องศา ปัญหาหน้าจอสีดำของฉันเมื่อทำงานต่อจากโหมดสแตนด์บายก็หายไปเช่นกัน แม้ว่าโดยส่วนตัวแล้วฉันจะไม่มีปัญหาในการใช้เมล็ดใหม่ แต่คุณจะพบว่ามีบางคนที่ต่อต้านการทำเช่นนี้


2

อย่างที่คุณเคยเห็น Ubuntu ให้บริการเคอร์เนลรุ่นลินุกซ์ แต่ไม่เร็วเท่าที่วางจำหน่ายต้นน้ำคุณสามารถรวบรวมเคอร์เนล 3.3.1 ด้วยตัวคุณเองได้เสมอ แต่นั่นอาจเป็นความพยายามมากกว่าที่คุณมองหา ถ้าไม่ได้ค้นหารอบ ๆ และฉันแน่ใจว่าคุณจะได้พบกับการกวดวิชาที่คุณสามารถปฏิบัติตามเช่นนี้ (โปรดทราบว่าฉันไม่ได้ตรวจสอบอย่างละเอียดว่าควรระวังเพราะเมล็ดเป็นสัตว์ร้าย)


2

คำตอบข้างต้นไม่พอใจกับปัญหาของฉันในการอัพเดตเคอร์เนลเป็นเวอร์ชั่นเสถียรล่าสุดด้วยตนเอง (แล็ปท็อปปัจจุบันของฉันไวต่อ RCs มาก Dell XPS 9365)

ฉันสร้างเชลล์สคริปต์ที่ค้นหาเคอร์เนลเวอร์ชันที่ใหม่กว่าและแสดงเป็นตัวเลือกที่จะติดตั้ง คุณสามารถลองดูได้ที่GitHubโปรดอ่าน README


2

ฉันสร้างสคริปต์นี้kernel-upgrade.shที่ดาวน์โหลดและติดตั้งเคอร์เนลที่เลือกจากhttp://kernel.ubuntu.com/~kernel-ppa/mainline :

TMP=/var/tmp/kernel
mkdir -p "$TMP" && cd "$TMP"
rm -f "$TMP"/*
F=v4.16-rc6
V=4.16.0-041600rc6
R=$(wget -qO - "http://kernel.ubuntu.com/~kernel-ppa/mainline/$F/0005-debian-changelog.patch" | sed -ne '/^+linux/{s/.*\.\([0-9]\+\)).*/\1/p;q}')
B="$V.$R"
URL=http://kernel.ubuntu.com/~kernel-ppa/mainline
set -x
wget "$URL/$F/linux-headers-$V-generic_${B}_amd64.deb" \
    "$URL/$F/linux-headers-${V}_${B}_all.deb" \
    "$URL/$F/linux-image-$V-generic_${B}_amd64.deb"
sudo dpkg -i "linux-headers-$V-generic_${B}_amd64.deb" \
    "linux-headers-${V}_${B}_all.deb linux-image-$V-generic_${B}_amd64.deb"
# now enter: sudo reboot now

ในกรณีที่ Ubuntu ไม่ได้เริ่มต้นด้วยเคอร์เนลใหม่คุณสามารถเลือก "การตั้งค่าขั้นสูง" ในเมนูด้วงของคุณและเลือกที่จะเริ่มเคอร์เนลที่ทำงานล่าสุดที่นั่น


หมายเหตุ:ตั้งแต่ 4.15-rc7 เคอร์เนลมีการแก้ไข KPTI จากการโจมตีแบบล่มสลายและตั้งแต่ 4.15.1 สำหรับ "Specter Variant 2, Mitigation 2" (ตรวจสอบกับhttp://github.com/speed47/spectre-meltdown-checker/ )


ฉันมีปัญหาในการเรียกใช้สคริปต์นี้ ฉันอาจจะทำอะไรผิดพลาดเพื่อให้ที่นี่เป็นขั้นตอนของฉัน: 1. ผู้พิการบูตที่เชื่อถือได้ใน BIOS, 2. บันทึกสคริปต์เพื่อและkernel-upgrade.sh จากนั้นผมก็วิ่งไปว่ามันเป็นchmod 777 kernel-upgrade.sh sudo ./kernel-upgrade.shฉันได้รับข้อผิดพลาด: rm: cannot remove '/var/tmp/kernel/*': No such file or directory; จากนั้น++ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.16...<ตัดทอน URL> `กำลังเชื่อมต่อกับ kernel.ubuntu.com (kernel.ubuntu.com) | 91.189.94.216 |: 80 ... เชื่อมต่อ ส่งคำขอ HTTP แล้วกำลังรอการตอบกลับ ... 404 ไม่พบ `404 เกิดขึ้น 3x
สลัดที่เหลือ

คำเตือนแรกโดยrmอาจถูกละเว้น (ฉันเพิ่มrm -fตอนนี้) ส่วนที่เหลือไม่ชัดเจนปัญหาคืออะไร การตัดทอน URL ที่นี่ไม่ได้ช่วยแก้ปัญหา คุณสามารถโพสต์ผลลัพธ์ในpastebin.com ได้หรือไม่เพื่อให้เราเห็นว่า URL ที่ได้นั้นเป็นอย่างไร
rubo77

แน่นอนว่าวางที่นี่แล้ว pastebin.com/KcdVdKQr
สลัดที่เหลือ

นอกจากนี้ถ้ามันเป็นเรื่องสำคัญฉันกำลังเรียกใช้อูบุนตู 17.10
สลัดที่เหลือ

มันบอกว่านี่เป็นเส้นทางที่ผิด: kernel.ubuntu.com/~kernel-ppa/mainline/v4.16-rc6/ ......ตรวจสอบเส้นทางที่ถูกต้องนี้: kernel.ubuntu.com/~kernel-ppa/mainline/v4 16-rc6
rubo77

2

การติดตั้งเคอร์เนลล่าสุดติดตั้ง Ubuntu Kernel Update Utility

$ sudo add-apt-repository ppa:teejee2008/ppa

$ sudo apt-get install ukuu

ปิดใช้งานการควบคุมการเข้าถึงด้วยคำสั่งต่อไปนี้:

$ sudo xhost +

จากนั้นติดตั้งด้วย ukuu

$ sudo ukuu

$ sudo ukuu --install-latest

จากนั้นเรียกใช้เพื่อความปลอดภัย

$ sudo xhost -

และรีบูต

$ sudo reboot

หากคุณต้องการดูรายการรุ่นเคอร์เนลทั้งหมดให้ใช้ 'sudo ukuu --list'
Vitaliy LiBrus

หากคุณต้องการดูตัวเลือกอื่น ๆ ของประเภท ukuu 'ukuu --help'
Vitaliy LiBrus

คุณไม่ควรทำsudo xhost -หลังจากทำเสร็จแล้ว? (เปรียบเทียบ: github.com/teejee2008/ukuu/issues/25#issuecomment-341501666 )
นักเรียน

@ นักเรียนใช่ขอบคุณ! ฉันเพิ่มลงในรายการขั้นตอน
Vitaliy LiBrus

0

ตรวจสอบเวอร์ชั่นเคอร์เนลของคุณ $ uname -sr

ดาวน์โหลด Kernel v5 เป็น 32 บิต

$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000_5.0.0-050000.201903032031_all.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-image-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-modules-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb

ดาวน์โหลด Kernel v5 สำหรับ 64 บิต

$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000_5.0.0-050000.201903032031_all.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-image-unsigned-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-modules-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb

ติดตั้ง

$ sudo dpkg -i *.deb

จากนั้นรีบูท

sudo reboot

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.