จะสร้างรายการแอพพลิเคชั่นทั้งหมดที่ติดตั้งด้วยตนเองได้อย่างไร?


10

ฉันใช้ Fedora และฉันต้องการมีชื่อแพ็คเกจทั้งหมดในรายการ แต่เฉพาะชื่อที่ฉันติดตั้งเองไม่ใช่ชื่อเริ่มต้น


ลองดูyum.logไฟล์ควรมีประวัติของแพ็คเกจที่ติดตั้งไว้ อย่างไรก็ตามฉันเชื่อว่ามีการพึ่งพาทั้งหมดเช่นกัน /var/log/yum.logผมเชื่อว่ามันอยู่ที่
Mr. Shickadance

เพียงแค่ FYI ฉันได้เพิ่มคำขอคุณลักษณะสำหรับ DNF เพื่อครอบคลุมกรณีการใช้งานนี้ DNF ติดตามข้อมูลนี้จริง ๆ แต่ความรู้ของฉันไม่มี UI สำหรับแสดงข้อมูล bugzilla.redhat.com/show_bug.cgi?id=1278124
mattdm

คำตอบ:


6

นั่นเป็นเรื่องยากเพราะเท่าที่ RPM เกี่ยวข้องนั้นมีความแตกต่างกันไม่มากนักระหว่างแพ็กเกจที่ติดตั้งอนาคอนดาซึ่งเป็นส่วนหนึ่งของการติดตั้งและที่คุณติดตั้งมาตั้งแต่นั้น แน่นอนถ้าคุณปรับแต่งการเลือกแพ็คเกจในระหว่างการติดตั้งแล้วเพียงแค่รู้ว่ามีการติดตั้งอะไรหลังจากนั้นไม่ช่วยให้คุณรู้ว่าจะใช้การปรับแต่งแบบใด

คุณสามารถใช้yum historyเพื่อเข้าถึงประวัติและดูว่ามีการติดตั้งแพคเกจใดบ้าง แต่จะรวมถึงการปรับปรุงใด ๆ กับแพ็คเกจที่ติดตั้งในเวลาติดตั้ง

เทคนิคอื่นจะสร้างรายการทันทีที่คุณติดตั้งเช่นนี้

rpm --queryformat="%{NAME}.%{ARCH}\n" -qa | sort > base.list

หลังจากนั้นคุณสามารถสร้างรายการใหม่ได้:

rpm --queryformat="%{NAME}.%{ARCH}\n" -qa | sort > new.list

จากนั้นใช้commเพื่อค้นหาความแตกต่าง:

comm -13 base.list new.list

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

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

yum install `cat package.list`

และมันจะไม่สนใจสิ่งที่ติดตั้งแล้ว


มันใช้งานได้เหมือนมีเสน่ห์!
sergiofbsilva


0

ฉันรู้ว่ามันเป็นคำถามเก่า แต่ฉันต้องการคำตอบเนื่องจากกระทู้นี้ไม่ได้ปิด

คุณสามารถใช้ได้:

dnf history userinstalled

ผลลัพธ์จะเป็นรายการธรรมดาของแอปพลิเคชันที่ผู้ใช้ติดตั้งทั้งหมด

ที่มา: https://linoxide.com/linux-how-to/list-installed-packages-fedora/

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