หลายท่านดูเหมือนจะมีปัญหาในการติดตั้งไฟล์ เคอร์เนลพรีคอมไพล์ด้วยแพตช์ 200 บรรทัด บนเครื่องของคุณสิ่งนี้เป็นสิ่งที่คาดหวังได้ดังนั้นจึงควรมีไฟล์ เมล็ด คอมไพล์โดยตรงในเครื่องของเรามากกว่าในเครื่องจากต่างประเทศดังนั้นจึงต้องใช้สถาปัตยกรรมของเครื่องของเราและการกำหนดค่าทั่วไปของฮาร์ดแวร์อย่างถูกต้อง
ด้วยเหตุนี้ฉันจึงสอนคนที่กล้าหาญที่สุดวิธีรวบรวมเคอร์เนลของตัวเอง (2.6.36.2) ใน Ubuntu (ทดสอบใน อูบุนตู 10.10) พร้อมกับแพทช์ 200 บรรทัดที่รวมอยู่ในนั้น โปรดจำไว้ว่ากระบวนการนี้ควรทำด้วยความเสี่ยงของคุณเองต้องใช้แพ็คเกจจำนวนมากในการดาวน์โหลดและใช้เวลารวบรวมค่อนข้างนาน
ในการเริ่มต้นสิ่งแรกที่เราต้องทำคือติดตั้งการอ้างอิงที่จำเป็นสำหรับการคอมไพล์เคอร์เนลโดยดำเนินการบรรทัดต่อไปนี้ในเทอร์มินัล:
sudo apt-get ติดตั้ง fakeroot build-essential crash kexec-tools makedumpfile kernel-wedge kernel-package
ตอนนี้ให้ดำเนินการบรรทัดต่อไปนี้ในเทอร์มินัลซึ่งจำเป็นในการคอมไพล์เคอร์เนล (จาก กล้าหาญ)
sudo apt-get build-dep ลินุกซ์
เราจบขั้นตอนแรกนี้ด้วยการติดตั้งแพ็คเกจอื่น ๆ ที่จำเป็นสำหรับการคอมไพล์
sudo apt-get ติดตั้ง libncurses5 libncurses5-dev libelf-dev asciidoc binutils-dev
เพื่อดำเนินการติดตั้งเคอร์เนลต่อไปเราต้องดาวน์โหลดซอร์สของเคอร์เนลที่เสถียรล่าสุด (2.6.36.2) และแพตช์ ไมค์ galbraith และค้นหาภายในไดเรกทอรีส่วนตัวของเรา
มาสร้างไดเร็กทอรีสำหรับการคอมไพล์เคอร์เนลเราค้นหาตัวเองในนั้นและดาวน์โหลดแหล่งเคอร์เนลจาก kernel.org:
mkdir kernel-2.6.36.2 cd kernel-2.6.36.2 wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.36.2.tar.gz
ตอนนี้เราสร้างไฟล์ข้อความใหม่และเราจะคัดลอกรหัสที่เราจะพบในโพสต์ของ Mike Galbraith หรือเราสามารถดาวน์โหลดได้จาก MediaFire บันทึกและปิดไฟล์:
gedit ~ / autogroup.patch
โพสต์อย่างเป็นทางการของ Mike Galbraith
Mike Galbraith Patch จาก MediaFire
ตอนนี้เรากำลังจะคลายซิปเคอร์เนลที่เราเพิ่งดาวน์โหลดมา kernel.org:
tar xzvf linux-2.6.36.2.tar.gz cd linux-2.6.36.2 patch -p1 <~ / autogroup.patch
ณ จุดนี้ทุกอย่างควรดำเนินไปด้วยดีและไม่มีข้อผิดพลาดในกรณีที่เกิดข้อผิดพลาดจำเป็นต้องเริ่มกระบวนการใหม่
ต่อไปเราจะโหลดการกำหนดค่าปัจจุบันของเคอร์เนลเพื่อให้เคอร์เนลใหม่รับการกำหนดค่าโดยตรงจากระบบของเราและเราจะไม่มีปัญหาใด ๆ ในการคอมไพล์ ถึงกระนั้นหากคุณมีความรู้เพียงพอคุณสามารถปรับแต่งการกำหนดค่าเคอร์เนลเพื่อให้ได้ระบบที่เหมาะกับความต้องการของคุณมากขึ้นคุณสามารถทำได้
หากคุณไม่ทราบว่าคุณกำลังทำอะไรอยู่จะเป็นการดีกว่าที่จะไม่แก้ไขการกำหนดค่าเคอร์เนลด้วยตนเอง
เราคัดลอกการกำหนดค่าโดยดำเนินการคำสั่งต่อไปนี้ในเทอร์มินัลและหลังจากนั้นเราก็ดำเนินการ
lsmod
เพื่อให้โมดูลทั้งหมดที่โหลดในระบบของเราได้รับการดำเนินการและเราตรวจสอบให้แน่ใจว่าฮาร์ดแวร์ทั้งหมดของเราได้รับการยอมรับ
cp -vi / boot / config-`uname -r` .config ทำให้ localmodconfig
ณ จุดนี้ขั้นตอนการรวบรวมจะถามคำถามหลายข้อเกี่ยวกับโมดูลให้คุณยอมรับคำถามทั้งหมดที่ถามต่อไปโดยการกด เข้าสู่ จนกว่ากระบวนการตั้งค่าจะเสร็จสมบูรณ์
เราดำเนินการคอมไพล์เคอร์เนลต่อไปโดยดำเนินการบรรทัดต่อไปนี้ในเทอร์มินัลเพื่อเปิดเมนูการกำหนดค่าเคอร์เนล:
cp / boot / config - $ (uname -r) .config && ใช่ "" | ทำให้ oldconfig ทำ menuconfig
ตอนนี้เราสามารถเลือกแพตช์ที่เราต้องการเปิดใช้งานในเคอร์เนลของเราได้แล้วเนื่องจากเราสนใจแพตช์ 200 บรรทัด
ในการทำเช่นนี้เราไปที่เมนูการกำหนดค่าเคอร์เนลที่ปรากฏขึ้นจนถึง
General Setup
และเรามองหาบรรทัดที่มีชื่อ
Automatic process group scheduling
เราเปิดใช้งานได้โดยกดแป้นเว้นวรรคบนแป้นพิมพ์เราวางตำแหน่งตัวเองบนตัวเลือก
Exit
โดยใช้ปุ่มลูกศรบนแป้นพิมพ์และกดปุ่ม เข้าสู่ จากแป้นพิมพ์ของเราเพื่อออกจากเมนู
General Setup
.
ตอนนี้เราไปที่เมนู
Kernel hacking
และป้อนโดยการกดปุ่ม เข้าสู่เรามองหาตัวเลือก
Compile the kernel with debug info
และเรายกเลิกการเลือกโดยกดแป้นเว้นวรรคบนแป้นพิมพ์อีกครั้งเราไปที่ตัวเลือก
Exit
และเรากด เข้าสู่ เพื่อออกจากเมนูหลัก
เรากำหนดค่าเคอร์เนลเสร็จแล้วดังนั้นเราจึงต้องกลับไปที่
Exit
ในเมนูหลักแล้วกด เข้าสู่ เพื่อเสร็จสิ้นการกำหนดค่าเคอร์เนล เรายอมรับเมื่อถามเราว่าต้องการบันทึกการเปลี่ยนแปลงที่เกิดขึ้นกับการกำหนดค่าเคอร์เนลหรือไม่โดยการกด Enter บนตัวเลือกใช่
ใช่แล้วเราจะรวบรวมเคอร์เนลโดยดำเนินการบรรทัดต่อไปนี้ในเทอร์มินัล:
fakeroot make-kpkg --initrd --append-to-version = -20101209 kernel-image kernel-headers
โปรดทราบว่าขั้นตอนการสร้างอาจแตกต่างกันไปขึ้นอยู่กับฮาร์ดแวร์ของคุณ
สิ่งนี้จะสร้างแพ็คเกจ. deb สองแพ็คเกจภายในไดเร็กทอรี kernel-2.6.36.2 ซึ่งเราจะใช้เพื่อติดตั้งเคอร์เนลใหม่ใน Ubuntu ของเราเพื่อให้สามารถติดตามได้โดย synaptic และถอดออกได้ง่าย
เรามาถึงส่วนสุดท้ายของบทช่วยสอนนี้ซึ่งเราจะติดตั้งและทดสอบการทำงานที่เหมาะสมของเคอร์เนลใหม่ที่เราเพิ่งติดตั้ง
ในการติดตั้งแพ็คเกจ. deb สองชุดที่เราเพิ่งสร้างขึ้นเราต้องดำเนินการคำสั่งต่อไปนี้ในเทอร์มินัล:
cd .. sudo dpkg -i * .deb
หากทุกอย่างเป็นไปด้วยดีเรารีสตาร์ทเครื่องและในรายการ ด้วงเราเลือกเคอร์เนลใหม่ (2.6.36.2) และกด เข้าสู่ เพื่อเริ่มระบบ
เมื่อเรากลับมาที่เดสก์ท็อปเราจะตรวจสอบว่าใช้โปรแกรมแก้ไข 200 บรรทัดอย่างถูกต้องและทำงานได้โดยดำเนินการตามบรรทัดต่อไปนี้ในเทอร์มินัล:
แมว /usr/src/linux-headers-2.6.36.2-20101219/.config | grep -i อัตโนมัติ
และมันต้องกลับบรรทัดดังนี้:
CONFIG_SCHED_AUTOGROUP = y
ถ้าเป็นเช่นนั้นเราให้ระบบของเราทำงานร่วมกับมัน เคอร์เนล 2.36.6.2 และ y "การตั้งเวลากลุ่มกระบวนการอัตโนมัติ" เปิดใช้งาน
เราสามารถเน้น Ubuntu ได้สูงสุดแล้ว ...
คู่มือนี้มาถึงคุณด้วยความพยายามของ ฟรานโกเบป.
สวัสดีเดวิด
คำถามของฉันคือ:
ฉันมักจะใช้เมล็ดของ ubuntu ppa (https://launchpad.net/~kernel-ppa/+archive/ppa)
สิ่งเหล่านี้ไม่มาพร้อมกับแพทช์ 200 บรรทัดอีกต่อไป?
ขอบคุณ
ดูฉันยังคงตรวจสอบเพื่อดูว่าเคอร์เนล Ubuntu PPA มีแพตช์รวมอยู่หรือไม่ แต่นี่เป็นเรื่องง่ายที่จะค้นหาด้วยตัวคุณเองเพียงแค่เรียกใช้คำสั่ง
cat /usr/src/[versión del último kernel]/.config | grep -i AUTOGROUP
ซึ่งคุณจะเปลี่ยนข้อความภายในวงเล็บสำหรับเวอร์ชันของเคอร์เนลล่าสุดบนเครื่องของคุณหากคุณได้รับข้อความตอบกลับเช่นนี้
CONFIG_SCHED_AUTOGROUP=y
จากนั้นคุณได้ติดตั้งโปรแกรมแก้ไขแล้วหมายเหตุ: หากต้องการทราบเวอร์ชันของเมล็ดทั้งหมดที่ติดตั้งในคอมพิวเตอร์ของคุณคุณต้องดำเนินการคำสั่ง
ls /usr/src/
ในเทอร์มินัลHoracio เคอร์เนล Ubuntu PPA ปัจจุบันมีแพทช์ V4 ของ ไมค์ glabraith ในคำพูดของตัวเขาเอง ทิมการ์ดเนอร์ (ผู้พัฒนาบัญญัติ).
ฉันรวบรวมมันแล้วและติดตั้งแล้ว…. อย่างน้อยระบบก็ยังไม่ตายในตอนนี้เพื่อดูว่ามันทำงานอย่างไร
กวดวิชาที่ยอดเยี่ยม ฉันทำตามขั้นตอนของจดหมายและทุกอย่างทำงานได้อย่างสมบูรณ์ ฉันมีเคอร์เนลใหม่
หมายเหตุ: ฉันทำการเปลี่ยนแปลงเพียงครั้งเดียวที่ฟังดูมีเหตุผลสำหรับฉันและมันอยู่ที่นี่:
cp -vi / boot / config-`uname -r` .config
ทำให้ localmodconfig
ฉันทำแบบนี้:
cp -vi / boot / config-`uname -r` .config
lsmod
ทำให้ localmodconfig
ตอนนี้ฉันรู้ว่าฉันทำผิดพลาดเล็กน้อยดังนั้นฉันจะติดตั้งใหม่ ... และเพิ่มการปรับเปลี่ยน irving
ฉันอยู่ที่จุดเริ่มต้น a:
init: กระบวนการหลักที่ยังไม่ได้อ่าน (362) สิ้นสุดด้วยสถานะ 5
ดูเหมือนว่าจะทำงานได้ดีอะไรจะเป็นไปได้ ??? '
คู่มือดีมากพวกเขายังโพสต์ไว้ใน taringa ในขณะนี้มันกำลังรวบรวมเคอร์เนลฉันหวังว่ามันจะไปได้ดีฉันแค่เปลี่ยนประเภทของโปรเซสเซอร์ใน menuconfig ฉันหวังว่าคุณจะเลือกได้ดีโดยการเลือก Intel core / ใหม่กว่า xeon เนื่องจากฉันมีโปรเซสเซอร์ intel core i3 คำทักทายและขอบคุณสำหรับอินพุต
สวัสดีคำสั่งดูเหมือนจะดีกว่าสำหรับฉัน
cp / boot / config-`uname –kernel-release` ./.config
เนื่องจากใช้การกำหนดค่าเคอร์เนลล่าสุดที่ติดตั้ง
สวัสดีคุณเป็นอย่างไรฉันมีข้อสงสัยเล็กน้อย ... ในไฟล์เคอร์เนลมีทั้งเวอร์ชัน 32 บิตและ 64 บิต? หรือจะดาวน์โหลดเวอร์ชัน amd64 ได้ฉันต้องดาวน์โหลดเวอร์ชันอื่นหรือไม่…โดยการหักคะแนนทั้งสองเวอร์ชันควรจะมาเหมือนกันใช่หรือไม่…คำอธิบายที่ดีมาก!
ขอบคุณ!