รับข้อมูลเกี่ยวกับแพ็คเกจ Ubuntu ที่ติดตั้ง


4

อะไรคือเครื่องมือที่ดีที่สุดที่จะได้รับข้อมูลต่อไปนี้:

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

คำตอบ:


4

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

  1. แพคเกจใช้สำหรับทำอะไร?
  2. ติดตั้งเมื่อไหร่?
  3. มีการติดตั้งแพคเกจนี้ด้วยตนเองหรือต้องการแพ็คเกจอื่นหรือไม่
  4. มีแพ็คเกจใดที่ติดตั้งอยู่ในปัจจุบันซึ่งขึ้นอยู่กับแพคเกจนี้คือจะมีบางสิ่งผิดปกติหรือไม่หากถูกลบออกไป
  1. ในบรรทัดคำสั่งaptitude show packageหรือapt-cache show package จะให้คำอธิบายของแพคเกจเช่นเดียวกับข้อมูลอื่น ๆ อีกมากมาย Synaptic ช่วยให้คุณค้นหารายการในรูปแบบต่างๆและให้คำอธิบายของแพคเกจ (คำอธิบายที่คุณได้รับจากวิธีการทั้งหมดนี้เหมือนกันพวกเขาทั้งหมดได้รับข้อมูลจากที่เดียวกันใน. deb ฉันเชื่อ)

  2. มันเป็นเรื่องง่าย แต่นอกจากขุดผ่านท่อนไม้ฉันไม่สามารถนึกถึงวิธีการทำเช่นนี้ได้ ดูเหมือนว่า Synaptic จะไม่เก็บข้อมูลนี้เป็นข้อมูลเมตา (นี่จะทำให้บั๊กรายการสิ่งที่ปรารถนาดี) นี่เป็นวิธีหนึ่งในการทำ:

    zgrep package /var/log/dpkg*
    

    นั่นเป็นความยุ่งเหยิงเล็กน้อยและมันจะให้ผลผลิตมาก แต่ก็ควรให้คุณได้รับวันที่ที่คุณต้องการ (คุณต้องใช้zgrepเนื่องจากไฟล์บันทึกเก่าจะเป็นไฟล์เก็บถาวรของ gunzipped) อย่างไรก็ตามคุณจะต้องรูทข้อมูลเพื่อค้นหาdpkgไฟล์

  3. หากคุณรันaptitude show package แพ็คเกจที่ติดตั้งไว้ให้ตรวจสอบฟิลด์ "ติดตั้งอัตโนมัติ" ถ้ามันบอกว่าใช่มันก็ถูกนำเข้ามาเป็นการพึ่งพาของแพ็คเกจอื่น ๆ (สำหรับเร็กคอร์ดมีสิ่งที่คุณสามารถทำได้เพื่อเปลี่ยนการตั้งค่านี้ด้วยตนเองนั่นคือคุณสามารถทำเครื่องหมายแพ็กเกจเพื่อดูการติดตั้งด้วยตนเองแม้ว่าจะถูกติดตั้งจริง ๆ แล้วเป็นการพึ่งพา แต่ส่วนใหญ่ผลลัพธ์ที่นี่ควร ถูกต้อง) คุณยังสามารถกรองการค้นหา Synaptic เพื่อค้นหาสิ่งที่ติดตั้งเป็นการอ้างอิง

  4. วิธีที่ดุร้ายในการตรวจสอบสิ่งนี้:

    aptitude -s remove package
    

    การ-sตั้งค่าสถานะจำลองคำสั่ง คุณสามารถเรียกใช้คำสั่งดังกล่าวในฐานะผู้ใช้ทั่วไปและไม่มีอันตรายจากการทำอันตรายระบบของคุณ ช่วยให้คุณเห็นสิ่งที่การกระทำที่เสนอจะทำได้อย่างง่ายดาย สิ่งหนึ่งที่ต้องจำไว้คือเช็คประเภทนี้จะแสดงให้คุณเห็นถึง ความเสียหายขั้นต้นแต่จะไม่แสดงข้อผิดพลาดที่กว้างขึ้น สิ่งที่ฉันหมายถึงคือคุณอาจลบแพคเกจ Foo โดยไม่ทำให้ระบบของคุณเสียหาย แต่อาจ จำกัด ประโยชน์ของแพคเกจบาร์อย่างรุนแรง โดยทั่วไปแพคเกจจะถูกล่ามโซ่ด้วยคำแนะนำเพื่อป้องกันเพียงแค่นี้ แต่มันก็คุ้มค่าในใจ คุณยังสามารถค้นหาการอ้างอิงและการย้อนกลับโดยใช้apt-cacheแต่ฉันพบว่าการจำลองนั้นเป็นวิธีที่ชัดเจนที่สุดในการดูว่าจะเกิดอะไรขึ้น

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

aptitude search '~i !~M' # Find things not installed as something else's dependency
aptitude search '~i ~M'  # Find things installed as something else's dependency

คำตอบที่ดี! ขอบคุณ ... ในขณะที่ดูเหมือนว่าเป็นไปได้ที่จะได้รับข้อมูลทั้งหมดที่ฉันต้องการฉันต้องการ gui เช่น Synaptic แต่สร้างขึ้นเพื่อการสำรวจแทนที่จะติดตั้ง / ลบ / อัปเกรด หลักสำคัญของคำถามคือวิธีตอบ "ฉันต้องการแพ็คเกจนี้จริง ๆ หรือไม่" เนื่องจากฉันมุ่งหวังที่จะทำความสะอาดระบบปฏิบัติการบนกล่องนี้เล็กน้อย
mizipzor

1

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

ตัวอย่างเช่นคำสั่งด้านล่างจะแสดงข้อมูลโดยละเอียดเกี่ยวกับแอปพลิเคชันที่ติดตั้งเฉพาะ

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