ฉันมี Debian Jessie และได้เพิ่ม backport (ตามคำแนะนำเหล่านี้ ):
echo "deb http://http.debian.net/debian jessie-backports main contrib non-free" | sudo tee /etc/apt/sources.list.d/backports.list
(ฉันทำสิ่งนี้เพื่อให้ได้เคอร์เนลที่ใหม่กว่าตามที่ต้องการสำหรับฮาร์ดแวร์บางอย่างในแล็ปท็อปของฉัน)
คำแนะนำบอกว่าไม่มีอะไรจะเกิดขึ้นเว้นแต่ฉันขอแพคเกจ backported อย่างชัดเจน apt-get -t jessie-backports install "package"
เช่น
อย่างไรก็ตามตอนนี้ฉันดูเหมือนจะมีการโหลดระบบทั้งหมดของฉันจาก backport และมีแพ็คเกจหนึ่งที่ไม่ได้ติดตั้งเพราะมันขึ้นอยู่กับเวอร์ชันที่แน่นอนของสิ่งที่อัปเดตเป็นพอร์ตด้านหลัง
ดังนั้นคำถามของฉัน:
- ฉันจะหยุดมันก่อนได้อย่างไรเพื่อไม่ให้ติดตั้ง backport เพิ่มเติมอีก?
- ฉันจะลบ backport ที่มีอยู่ได้อย่างไร
หมายเหตุ: สิ่งนี้จะได้รับรายชื่อของแพ็คเกจที่ติดตั้งซึ่งมาจาก backports (และในรูปแบบที่สามารถส่งผ่านไปapt-get install
ได้ด้วยเหตุผลบางประการที่ทำให้sudo apt-get install
echo ที่จุดสิ้นสุดของไพพ์ไลน์ไม่ทำงาน):
cat /var/log/dpkg.log.1 |grep -v linux | grep -v xserver | grep -v firmware | grep "status installed" | grep bpo | cut -d" " -f 5 | cut -d: -f 1 | xargs -i{} -n1 bash -c "dpkg-query -s {} >/dev/null && echo {}" | sed -r -e "s~.*~\0/jessie~" | xargs echo
ข้อควรระวัง:
แพคเกจบางส่วนได้รับการติดตั้งโดยอัตโนมัติดังนั้นหากคุณติดตั้งใหม่ทั้งหมดแพคเกจที่ติดตั้งโดยอัตโนมัติเหล่านี้จะถูกทำเครื่องหมายว่าติดตั้งด้วยตนเอง ดังนั้นจึงไม่ถูกลบออกเมื่อไม่ต้องการ
มีใครมีความคิดเห็นเกี่ยวกับวิธีการแก้ปัญหานี้บ้าง?
apt-get
dpkg
ตราบใดที่คุณไม่ต้องตกใจไม่มีอะไรต้องกังวล ปัญหาส่วนใหญ่ที่เกิดขึ้นกับระบบบรรจุภัณฑ์นั้นเกิดจากการที่คนตื่นตระหนกและตอบโต้โดยไม่คิด ... ลองคิดให้ช้าก่อนคิด