คุณถามคำถามที่แตกต่างกันสองสามข้อที่นี่ฉันหวังว่าอย่างน้อยฉันจะสามารถช่วยได้ในหนึ่งหรือสอง
ในการแสดงรายการแพ็กเกจที่ติดตั้งทั้งหมดใช้dpkg
เพื่อแสดงผลในรายการที่คั่นด้วยฟิลด์
dpkg -l
หากต้องการรับรายการแพ็กเกจโดยไม่มีฟิลด์พิเศษดังนั้นคุณสามารถไปป์ที่อื่นได้
dpkg -l | awk '{print $2 }' # Pipe to grep after the awk, or glob from dpkg
ตัวอย่างเช่นถ้าฉันต้องการลบเคอร์เนลเก่า
apt-get purge `dpkg -l linux* | awk '{print $2}' | grep 3.0.0-12`
debfoster
วิธีที่ง่ายที่สุดที่จะไปผ่านการอ้างอิงที่ไม่จำเป็นทั้งหมดอยู่กับ มันทำงานแบบโต้ตอบและผ่านสิ่งที่คุณต้องการการอ้างอิงของพวกเขาและสามารถลบหรือแสดงรายการสิ่งที่ไม่ใช่การพึ่งพาแบบเรียกซ้ำ
ในการแสดงรายการการอ้างอิงซ้ำทั้งหมดของแพ็คเกจเฉพาะ
debfoster -d $PACKAGE ## PACKAGE is the specific package.
หลังจากที่คุณดำเนินการแล้วdebfoster
คุณสามารถตรวจสอบผู้ที่อยู่ในแพคเกจได้เช่นกัน
debfoster -e $PACKAGE ## PACKAGE is the specific package.
เป็นวิธีที่ดีมากที่จะได้รายชื่อแพคเกจ 'เด็กกำพร้า' deborphan
อยู่กับ วิ่งdeborphan
โดยไม่มีตัวเลือกและมันจะแสดงรายการแพคเกจ 'กำพร้า' ทั้งหมด 'เด็กกำพร้า' เป็นแพ็คเกจที่ไม่มีอะไรขึ้นอยู่กับคุณและคุณยังไม่ได้ติดตั้งอย่างชัดเจน
ฉันยังต้องการทำความสะอาดแพ็คเกจ 'กำพร้า' หลังจากติดตั้งใหม่ หลังจากฉันลบแพ็คเกจเฉพาะคุณสามารถพลาดอะไรก็ได้apt-get autoremove --purge
กับ
apt-get purge `deborphan`
ในที่สุดบางครั้งคุณไม่--purge
และท้ายที่สุดด้วยแพ็คเกจ 'ของเหลือ' รุ่นที่ใหม่กว่าapt-get
สามารถลบออกได้โดยอัตโนมัติ ในการลบ 'ของเหลือ' ออกจากแพ็คเกจที่ถอนการติดตั้งให้รัน
apt-get autoclean
หากคุณไม่มีเวอร์ชันใหม่apt-get
คุณสามารถลบออกได้ด้วยคำสั่งเหล่านี้ พวกเขาเกิดข้อผิดพลาดหากไม่มีไฟล์ 'เหลือ' ดูเหมือนว่า autoclean สามารถพลาดบางครั้งโดยไม่คำนึงถึง
dpkg --list |grep "^rc" | cut -d " " -f 3 | xargs dpkg --purge
apt-get --dry-run remove
มีลักษณะที่ถูกต้องโดยทั่วไป อาจพลาดแพ็คเกจที่ติดตั้งโดยอัตโนมัติบางตัวที่จำเป็นสำหรับแพ็คเกจที่ติดตั้งโดยอัตโนมัติซึ่งจำเป็นสำหรับแพ็คเกจที่คุณลบเท่านั้น นั่นเป็นเหตุผลที่คุณไม่คิดว่ามันเป็นคำตอบที่เหมาะสมหรือไม่?