ฉันจะแสดงรายการแพ็กเกจทั้งหมดที่ติดตั้งบนระบบ Debian ของฉันได้อย่างไร?


11

ฉันจะรับรายการแพ็คเกจทั้งหมดที่ติดตั้งในระบบ Debian ของฉันได้อย่างไร (ฉันรู้ว่าแพ็คเกจนี้ง่าย) และยังมีรายการของแพ็คเกจทั้งหมดที่ทำเครื่องหมายว่าเป็นคู่มือหรือไม่ ฉันกำลังคิดเกี่ยวกับการอัปเกรดระบบ แต่ฉันจำสิ่งเหล่านี้ไม่ได้เลยที่ฉันติดตั้งในช่วงหลายปีที่ผ่านมา :)

คำตอบ:


10

การรับรายการแพ็กเกจที่ติดตั้งนั้นง่ายมาก:

dpkg --get-selections | grep "[[:space:]]install$" >  installed_pkgs

คุณสามารถติดตั้งแพ็กเกจภายหลังในรายการโดยใช้คำสั่งนี้:

dpkg --set-selections < installed_pkgs
sudo apt-get -u dselect-upgrade

หากคุณใช้ความถนัดเป็นพิเศษในการติดตั้งแพ็คเกจด้วยตนเองมันเป็นเรื่องง่ายมากที่จะได้รับรายการแพ็คเกจที่ติดตั้งด้วยตนเอง มิฉะนั้นรายการนี้จะมีทั้งแพ็คเกจที่คุณติดตั้งและการอ้างอิง

ในทั้งสองกรณีอ่านบทความนี้และแสดงความคิดเห็นสำหรับการแก้ปัญหาที่สอดคล้องกันในการสร้างรายการแพคเกจติดตั้งด้วยตนเอง: การทำความสะอาดระบบ Debian GNU / Linux

คุณอาจพบdeborphanและdebfosterของความช่วยเหลือในการรักษารายการนี้ในอนาคต


deborphan เหนือสิ่งอื่นใดกลับต่างและแพ็คเกจสำคัญอื่น ๆ - ดังนั้นฉันจะไม่แนะนำให้ใช้
Grzenio

3
dpkg -l

เพื่อแสดงรายการแพ็คเกจที่ติดตั้งทั้งหมด


2

นี่คือวิธีที่ฉันจะทำมัน ในฐานะ root ให้รันสิ่งต่อไปนี้:

dpkg --get-selections | sed 's/\t.*//' > packages-list.txt

นี่จะสร้างรายการแพคเกจที่ติดตั้งที่ดีและสะอาดเหมาะสำหรับใช้กับ apt-get install

หรือวิธีที่หยาบคายเพื่อรับรายการแพคเกจที่คุณติดตั้งด้วยตนเองด้วยความถนัดคุณสามารถ grep บันทึกด้วยสิ่งที่ชอบ

zcat /var/log/aptitude.* | grep INSTALL] && cat /var/log/aptitude| grep INSTALL]

(แต่ระวังการติดตั้งด้วย aot-get หรือ dpkg จะไม่ได้รับการบันทึกที่นี่รวมทั้ง logrotate อาจเก็บส่วนหนึ่งของบันทึกซึ่งวิธีนี้จะไม่รับ!)


1

dpkg -lจะแสดงรายการแพ็กเกจที่ติดตั้งตามที่แนะนำ

ฉันขอแนะนำให้ใช้ระบบอัพเกรดสำหรับการอัปเกรดแพ็กเกจเนื่องจาก (การตัดเด บอร์แฟน ) จะกำจัดแพ็คเกจเก่าที่ไม่ต้องการเช่นกัน นี้จะใช้เวลาพอสมควรในระบบของคุณทั้งสองขึ้นไปวันที่และทำความสะอาด

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.