เมื่อใช้การปักหมุดคุณสามารถเลือกแพ็คเกจที่มาจากผู้ไม่ฝักใฝ่ฝ่ายใดและรับการอ้างอิงโดยอัตโนมัติและทำให้พวกเขาทันสมัยอยู่เสมอผ่านผู้จัดการแพ็คเกจของคุณ https://help.ubuntu.com/community/PinningHowto
man
apt_preferences
คุณจะได้รับที่ดีมากออกสำรวจตรึงฉลาดดู
ดังนั้นสมมติว่าคุณอยู่ใน Oneiric และคุณต้องการรับแพ็คเกจเหล่านั้นจากแม่นยำ
หากคุณอ่านคนคุณจะเห็นว่าฉันคัดลอก / วางส่วนที่เกี่ยวข้องและเพิ่งแก้ไขชื่อรุ่น
/ etc / อพาร์ท / การตั้งค่า
Package: libccid
Pin: release n=precise
Pin-Priority: 990
Package: libpcsclite*
Pin: release n=precise
Pin-Priority: 990
Package: libusb*
Pin: release n=precise
Pin-Priority: 990
Package: opensc
Pin: release n=precise
Pin-Priority: 990
Package: pcscd
Pin: release n=precise
Pin-Priority: 990
Explanation: Uninstall or do not install any Ubuntu-originated
Explanation: package versions other than those in the oneiric release
Package: *
Pin: release n=oneiric
Pin-Priority: 900
Package: *
Pin: release o=Ubuntu
Pin-Priority: -10
จากนั้นฉันก็คัดลอกของฉัน/etc/apt/sources.list
ไปที่
/etc/apt/sources.list.d/precise.list
และแทนที่เหตุการณ์ทั้งหมดของ Oneiric ด้วยความแม่นยำ จากนั้นก็วิ่งและในที่สุดapt-get update
apt-get
upgrade
# apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be upgraded:
libpcsclite1 libusb-0.1-4 libusb-1.0-0 libusbmuxd1
4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 86.0 kB of archives.
After this operation, 88.1 kB disk space will be freed.
Do you want to continue [Y/n]? y
Do you want to continue [Y/n]? y
Get:1 http://us.archive.ubuntu.com/ubuntu/ precise/main libusb-0.1-4 amd64 2:0.1.12-20 [17.6 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu/ precise/main libusb-1.0-0 amd64 2:1.0.9~rc3-2 [30.9 kB]
Get:3 http://us.archive.ubuntu.com/ubuntu/ precise/main libpcsclite1 amd64 1.7.4-2ubuntu1 [23.5 kB]
Get:4 http://us.archive.ubuntu.com/ubuntu/ precise/main libusbmuxd1 amd64 1.0.7-2 [14.1 kB]
Fetched 86.0 kB in 0s (124 kB/s)
ด้วยเหตุผลบางอย่าง pcscd และ opensc ไม่ได้รับการติดตั้งอาจเป็นเพราะมันไม่ได้ถูกติดตั้งเพื่อเริ่มต้นดังนั้นจึงไม่มีอะไรที่ต้องอัพเกรดไม่มีเรื่องใหญ่เลยฉันสามารถติดตั้งเวอร์ชั่นนั้นได้อย่างแม่นยำโดยใช้การอ้างอิงเช่นนี้
$ apt-get install opensc pcscd -t precise
รับทราบการใช้งานของt- , packagename/precise
ก็จะทำงาน
และมีแพ็คเกจที่คุณต้องการตั้งแต่รุ่นล่าสุดและ
เฉพาะแพ็คเกจเหล่านั้นเท่านั้นแพ็คเกจเหล่านั้นจะได้รับการอัปเดตโดยอัตโนมัติ หากคุณไม่ต้องการอีกต่อไปเพียงแค่ลบรายการจาก
/etc/apt/preferences
และในครั้งต่อไปที่คุณเรียกใช้apt-get upgrade
พวกเขาจะถูกลบออก หากคุณลบไฟล์ prefs ทั้งหมดให้แน่ใจว่าได้ลบไฟล์แหล่งที่มาที่แม่นยำรายการนั้นเช่นกันระบบของเราจะพยายามอัปเดตแพคเกจชุดล่าสุด นอกจากนี้หากคุณตัดสินใจที่จะอัปเกรดในภายหลังคุณจะต้องลบไฟล์ prefs ทั้งหมดและอาจเป็นความคิดที่ดีที่จะลบแหล่งข้อมูลอื่นรายการที่น้อยกว่าการอัพเกรดจะพบได้เนื่องจากมีลำดับความสำคัญสูงกว่า ไม่มีแพ็คเกจที่จะอัปเดต
การปักหมุดที่ชาญฉลาดนั้นไม่ใช่เรื่องยากคุณเพียงแค่ขุดและทดลองสักหน่อย คำกริยาทั้งหมดสำหรับn=
ฯลฯ
apt-cache policy
จะพบได้โดยการตรวจสอบ
นี่คือเหตุผลที่ผู้ดูแลระบบเก๋าโวยวายและคลั่งเกี่ยวกับ apt vs yum คุณสามารถอัพเดตบริการอย่างย่อและทำให้ทันสมัยอยู่เสมอในลักษณะที่สะอาดกำหนดและบำรุงรักษาได้
ไม่มีแพ็คเกจการรวบรวมอีกต่อไป
ฉันขอแนะนำให้คุณอ่าน man page ทั้งหมดและทำความคุ้นเคยกับแนวคิดและอ่านคำแนะนำอื่น ๆ เกี่ยวกับการปักหมุดก่อนดำเนินการตามข้อเสนอนี้ ขอให้โชคดีและสนุก!
https://help.ubuntu.com/community/PinningHowto