ทำไมแพ็คเกจในที่เก็บของ Ubuntu อย่างเป็นทางการที่เก่ากว่าเวอร์ชั่นล่าสุด (อัปสตรีม) จาก Debian Sid, PPAs ผู้แต่งเป็นต้น
ทำไมแพ็คเกจในที่เก็บของ Ubuntu อย่างเป็นทางการที่เก่ากว่าเวอร์ชั่นล่าสุด (อัปสตรีม) จาก Debian Sid, PPAs ผู้แต่งเป็นต้น
คำตอบ:
Ubuntu เปิดตัวผ่านหลายขั้นตอนก่อนที่จะเผยแพร่สู่สาธารณะในฐานะผลิตภัณฑ์สำเร็จรูป:
บางครั้งก่อนที่ Ubuntu จะเปิดตัวรีลีสมันจะหยุดแพ็คเกจในบางจุด
ก่อนที่จะวางจำหน่าย แต่หลังจากแช่แข็งแพ็กเกจงานส่วนใหญ่จะทำเพื่อแก้ไขข้อบกพร่องและปัญหาที่อาจมีในแพ็คเกจเหล่านั้น แพ็คเกจรุ่นใหม่จะไม่ถูกนำเข้าไปยังที่เก็บอีกต่อไปหลังจากแพ็คเกจหรือคุณลักษณะหยุดทำงาน
เมื่อรีลีสเกิดการเปลี่ยนแปลงเพิ่มเติมกับแพ็คเกจเหล่านี้จะเกิดขึ้นเฉพาะสำหรับการแก้ไขข้อบกพร่องและปัญหาด้านความปลอดภัย ไม่มีการอัพเกรดเพิ่มเติมที่ทำกับแพ็คเกจในที่เก็บอย่างเป็นทางการแม้ว่าจะมีการเปิดตัวแพ็คเกจใหม่
แพ็คเกจใหม่จะถูกนำเข้าอย่างต่อเนื่อง (จาก Debian) สำหรับ Ubuntu รุ่นถัดไปจนกว่าจะเกิดการค้างครั้งต่อไปและกระบวนการเดียวกันซ้ำตัวเอง
ตัวอย่างเช่นคุณสามารถมีลักษณะที่มีกำหนดการปล่อยของ 12.04
คุณจะเห็นได้ว่าแม้ว่าจะมีการปล่อย 12.04 ในเดือนเมษายน แต่ในเดือนมกราคม 12 มีบางสิ่งที่เรียกว่าการระงับการนำเข้า Debianเกิดขึ้น
นี่เป็นเพียงช่วงแรกของการหยุดหลายครั้งที่เกิดขึ้นก่อนการเปิดตัวจริงและหมายความว่า ณ จุดนั้นการนำเข้าแพคเกจจากการทดสอบ Debian หรือการหยุดที่ไม่เสถียรและการทำงานเริ่มที่พวกเขาเพื่อปรับแต่งและแก้ไขปัญหา
ไม่มีการอัพเกรดหลังจากเสร็จสิ้นแพคเกจจำนวนมากและเวอร์ชันที่แพ็กเกจมี ณ จุดนั้นคือเวอร์ชันปัจจุบันและการดูแลรักษาตลอดอายุการใช้งานของรีลีส
ดังนั้นแม้ว่าจะมีแพ็คเกจเดียวกันในเวอร์ชั่นที่สูงกว่าใน PPAs ของนักพัฒนาซอฟต์แวร์หรือในที่เก็บ Ubuntu + 1 ซึ่งจะรวมอยู่ใน Ubuntu รุ่นถัดไปเท่านั้น
สิ่งนี้ทำเพื่อความมั่นคงความปลอดภัยและฟังก์ชั่น แพคเกจตกเลือดใหม่ที่นำเข้ามาตลอดเวลาไปยังแหล่งเก็บข้อมูลหลักจะหมายถึงปัญหาและปัญหาที่ต้องแก้ไขอีกมากมาย การหยุดในแพคเกจรุ่นช่วยในการแยกแยะและทำให้ Ubuntu ปลอดภัยและมั่นคงยิ่งขึ้นสำหรับผู้ใช้
Ubuntu รุ่นใหม่ออกทุก 6 เดือนดังนั้นทุก ๆ 6 เดือนแพคเกจใหม่ได้เตรียมทดสอบปรับแต่งและเผยแพร่ด้วยเวอร์ชันใหม่ แพ็คเกจเวอร์ชันอนาคตสามารถติดตั้งในระบบของคุณผ่าน PPA หรือเพียงแค่ดาวน์โหลดจากเว็บไซต์ แต่เวอร์ชันของแพ็คเกจในที่เก็บอย่างเป็นทางการยังคงเหมือนเดิม
เพื่อความเข้าใจเพิ่มเติมและภาพรวมที่น่าสนใจของสิ่งที่เกิดขึ้นกับ Ubuntu ตั้งแต่ 10.04 จนถึงการเปิดตัว 12.04 ให้ดูที่ReleaseSchedule - หน้า LTS to LTSและStable Release Updatesเพื่อดูภาพรวมที่สมบูรณ์และคำอธิบายของ Ubuntu ที่เสถียร
ด้วยเหตุผลสองประการ สิ่งแรกคือความชัดเจน: มนุษย์ต้องการใช้เวลาในการอัปเดตแพ็กเกจเมื่ออัปสตรีมใหม่ออกมา อย่างที่สองก็คือถ้าคุณใช้งานรีลีสที่เสถียรซึ่งต่างจากเวอร์ชั่นการพัฒนาปัจจุบันแพคเกจจะไม่ได้รับการปรับปรุงโดยเจตนาเพื่อหลีกเลี่ยงการแตกหัก ดูhttp://wiki.ubuntu.com/StableReleaseUpdates
แพคเกจจะถูกแช่แข็งสำหรับการเปิดตัวและไม่ได้รับการปรับปรุงในภายหลังด้วยเหตุผลหลายประการ หากมีการนำออกมาใหม่ในรุ่นหลัง ๆ ดังนั้นรุ่นใหม่ ...
ทั้งหมดที่กล่าวว่าทราบว่ามีกรณีที่อูบุนตูไม่ทำการปรับปรุงเต็มรูปแบบของรุ่นในพื้นที่เก็บข้อมูล ตัวอย่างเช่น Firefox
นอกจากนี้ยังมีผู้ใช้พื้นที่เก็บข้อมูล ubuntu-backports สามารถเลือกที่จะอัพเดตซอฟต์แวร์แพ็คเกจที่จะไม่ทำให้เกิดปัญหาเหมือนกับที่กล่าวไว้ข้างต้น ไม่ได้เปิดใช้งานตามค่าเริ่มต้นดังนั้นผู้ใช้จึงต้องเลือกใช้ซึ่งทำเพื่อกำจัดความประหลาดใจที่ทำให้ซอฟต์แวร์ของคุณเปลี่ยนจากคุณ นอกจากนี้ยังไม่ได้รับการจัดวางอย่างแน่นหนาดังนั้นฉันไม่แน่ใจว่าบ่อยครั้งที่แพ็คเกจจะได้รับการอัพเดต
นอกจากนี้ทีม SRU ได้ปรับปรุงนโยบายของตำรวจเมื่อไม่นานมานี้ซึ่งหวังว่าจะทำให้ตรงไปตรงมามากขึ้นในการรับแพ็คเกจอัพเดตบั๊กเท่านั้น
โดยปกติการอัปเดตใน Ubuntu รุ่นที่วางจำหน่ายนั้นมีไว้เพื่อความปลอดภัยและแก้ไขข้อผิดพลาดตัวอย่างของข้อผิดพลาดดังกล่าว ได้แก่ :
ข้อบกพร่องที่อาจทำให้เกิดความเสี่ยงด้านความปลอดภัยโดยตรงภายใต้สถานการณ์จริง สิ่งเหล่านี้ทำโดยทีมรักษาความปลอดภัยและมีการบันทึกไว้ที่ SecurityTeam / UpdateProcedures
ข้อบกพร่องซึ่งแสดงถึงการถดถอยอย่างรุนแรงจาก Ubuntu รุ่นก่อนหน้า ซึ่งรวมถึงแพ็คเกจที่ใช้ไม่ได้โดยสิ้นเชิงเช่นถอนการติดตั้งหรือหยุดทำงานเมื่อเริ่มต้น
ข้อบกพร่องที่อาจทำให้ข้อมูลของผู้ใช้สูญเสียไปในทางที่เป็นจริงโดยตรงข้อบกพร่องที่ไม่เหมาะสมภายใต้หมวดหมู่ข้างต้น แต่ (1) มีแพทช์ที่ปลอดภัยอย่างเห็นได้ชัดและ (2) ส่งผลต่อแอปพลิเคชันมากกว่าแพ็คเกจโครงสร้างพื้นฐานที่สำคัญ หรือเคอร์เนล)
สำหรับการสนับสนุนในระยะยาวเราต้องการเปิดใช้งานฮาร์ดแวร์ใหม่เป็นประจำ การเปลี่ยนแปลงดังกล่าวมีความเหมาะสมโดยที่เราสามารถมั่นใจได้ว่าจะไม่ส่งผลกระทบต่อการอัพเกรดฮาร์ดแวร์ที่มีอยู่ ตัวอย่างเช่น modaliases ของไดรเวอร์ที่แนะนำใหม่ต้องไม่ซ้อนทับกับไดรเวอร์ที่จัดส่งก่อนหน้านี้ - ซอฟต์แวร์เชิงพาณิชย์รุ่นใหม่ในไฟล์เก็บถาวรของพันธมิตร Canonical
-FTBFS (ไม่สามารถสร้างจากแหล่งที่มา) ได้อีกด้วย โปรดทราบว่าในหลักกระบวนการปล่อยให้แน่ใจว่าไม่มีไบนารีที่ไม่ได้สร้างจากแหล่งปัจจุบัน โดยปกติแล้วข้อบกพร่องเหล่านั้นควรจะถูกใช้ร่วมกับการแก้ไขข้อผิดพลาดอื่นเท่านั้น
- สำหรับแพ็คเกจอัปสตรีมใหม่ที่มีคุณสมบัติใหม่ แต่ไม่แก้ไขข้อบกพร่องที่สำคัญควรขอ backport แทน
ฉันจะพยายามตอบคำถามของคุณตามประสบการณ์ที่ผ่านมาจากฟอรัม Ubuntu และดาวเคราะห์ Ubuntu
ฉันเดาว่าฉันแค่สงสัยว่าที่เก็บของ apt ได้รับการอัปเดตอย่างไรและโดยใคร
APT repos ได้รับการอัพเดตจากทีมบรรจุภัณฑ์ที่ Ubuntu ทีมบรรจุภัณฑ์ได้รับแพ็คเกจต้นน้ำทั้งหมดจากนักพัฒนาที่ทำการทดสอบบรรจุภัณฑ์เริ่มต้นและสิ่งอื่น ๆ จากนั้นทีมทดสอบทำการทดสอบขั้นสุดท้ายเพื่อส่งสัญญาณไป แต่ทีมบรรจุภัณฑ์และทีมทดสอบมีความระมัดระวังอย่างมากเกี่ยวกับการพึ่งพาและผลกระทบที่มีต่อระบบเสถียร
เมื่อมีความล่าช้าเป็นเพราะนักพัฒนาซอฟต์แวร์ไม่ได้ผลักดันการเปิดตัวล่าสุดไปยังเซิร์ฟเวอร์ที่เกี่ยวข้องหรือไม่?
หากคุณเห็นการเปลี่ยนแปลงต้นน้ำมีนักพัฒนาซอฟต์แวร์หลายพันคนที่ต้องการผลักดันแพ็คเกจของพวกเขา แต่ไม่ใช่ว่าทุกคนจะประสบความสำเร็จในกระแสหลักนี่เป็นเพราะเหตุผลหลายประการ สมมติว่าแอปพลิเคชัน Gedit รุ่น 2.2 นั้นเหมาะสมและใช้งานได้ดีกับ Dbus 2.1 และ Gtk 2.4 เป็นต้นซึ่งหากเป็นรุ่น Gedit 2.4 (ใหม่มาก) ต้องใช้ Gtk 2.5 และ Dbus2.3 ในการทำงาน ตอนนี้ทีมทดสอบและบรรจุภัณฑ์ (ทีมวางจำหน่ายยัง) ไม่ยอมรับสิ่งนี้เพราะการเปลี่ยนระบบที่มีอยู่เดิมซึ่งมี dbus และ gtk เก่าโดยที่ระบบใหม่จะหยุดทุกสิ่ง หวังว่าคุณจะได้รับจุดพึ่งพานรก
มีงานอีกมากสำหรับนักพัฒนาในการปล่อยให้เป็นแบบฟอร์มที่เก็บสามารถใช้?
ไม่ให้ช่องทางต้นน้ำ แต่ไปที่ช่องปล่อยใช่ :)
PS: อาจมีการเปลี่ยนแปลงเล็กน้อยในกระบวนการตอนนี้ในมาตรฐานซึ่งเป็นที่ยอมรับเมื่อเทียบกับสิ่งที่อธิบายไว้ข้างต้น แต่มันมากหรือน้อยเหมือนกัน
คำตอบที่ได้รับการยอมรับในลิงค์ fossfreedom โพสต์เป็นความคิดเห็นดีมาก
โดยทั่วไปรุ่นแพ็คเกจที่วางจำหน่ายหลังจากส่วนแรกของกระบวนการพัฒนารุ่นใหม่จะไม่ปรากฏในที่เก็บหลักของรุ่นนั้นเพื่อให้สามารถทดสอบเวอร์ชัน Ubuntu ที่เชื่อถือได้อย่างละเอียด
คุณอาจพบว่ามีการเปิดตัวแพคเกจบางส่วนไปยังที่เก็บของ backports หากมีการรวมอยู่ในการเปิดตัว Ubuntu ในอนาคตและหากนักพัฒนาเชื่อว่าจะสามารถใช้งานได้กับแพ็คเกจก่อนหน้า สามารถเปิดใช้งานและปิดการใช้งาน Backport ได้ในศูนย์ซอฟต์แวร์ (แก้ไข -> แหล่งซอฟท์แวร์ -> แท็บอัปเดต -> อัพเดตที่ไม่สนับสนุน)
คำตอบนั้นไม่เต็ม
มีบางแพ็กเกจซึ่งสามารถติดตั้งได้ในเวอร์ชัน backport จาก Software Center ที่ด้านขวาของหน้าต่างทางด้านซ้ายของปุ่มติดตั้ง / เปลี่ยนมีกล่องตัวเลือกที่คุณสามารถเปลี่ยนรุ่นได้
Exempli gratia: ค่าเริ่มต้นconky
คือตอนนี้1.8.x
และคุณมี1.9.0 (precise-backports)
เป็น backport แน่นอนว่าควรเปิดใช้งาน backport ก่อน
ที่มา: http://bugs.launchpad.net/ubuntu/+source/conky/+bug/1003727
แก้ไข: ตามที่ระบุไว้ด้านล่างไม่ใช่ทุกแพ็คเกจที่มี backport แต่คุณอาจเข้าใช้ก่อนเวลาได้หากคุณโชคดีพอ