पैकेज की निर्भरता को नेत्रहीन कैसे प्रदर्शित करें?


31

यह सिर्फ मनोरंजन के और जिज्ञासा के लिए है: वहाँ का उपयोग कर जो मैं कर सकते हैं एक उपकरण है नेत्रहीन देख निर्भरता एक के पैकेज एक ग्राफ के रूप में?

यही है, पैकेज जो किसी दिए गए पैकेज पर निर्भर करता है। यह एक कमांड-लाइन टूल हो सकता है जो ASCII ग्राफिक्स (जैसे पेड़ या मर्क्यूरियल के ग्राफलॉग) या GUI टूल का उपयोग करके प्रदर्शित करता है जो निर्भरता ग्राफ को नेत्रहीन रूप से दिखाता है। उपकरणों का कोई अन्य संयोजन जो निर्भरता को नेत्रहीन रूप से भी काम कर सकता है।


और ग्राफ का अक्ष क्या होगा?

1
@ vasa1: कार्यक्षेत्र पैकेज होंगे और किनारों पर निर्भरताएं हैं।
अश्विन नंजप्पा

जवाबों:


34

debtree

एप्लिकेशन की वेबसाइट के अनुसार , debtreeपैकेज "स्टेरॉयड पर पैकेज निर्भरता ग्राफ" प्रदान करता है ।

नोट: सॉफ्टवेयर अपग्रेड की योजना बनाते समय यह भी बहुत उपयोगी है। यह एप्लिकेशन उन पैकेजों के विरुद्ध निर्भरता को ग्राफ़ करने में सक्षम है जो अभी तक आपके सिस्टम पर इंस्टॉल नहीं किए गए हैं। यह sources.listफ़ाइल से पढ़ा जाएगा (आमतौर पर स्थित है /etc/apt/sources.list) और यह उस सूची का उपयोग करके एक लाइव क्वेरी करेगा।

निम्नलिखित आरेख debtreeपैकेज के खिलाफ चलने का एक उदाहरण है dpkg। यहाँ इसकी निर्भरता का एक नक्शा है:

debtreeकमांड लाइन से स्थापित करने के लिए ( Ctrl- Alt- t) कमांड दर्ज करें:

sudo apt-get install debtree

प्रयोग

  • एक .dot फ़ाइल बनाएँ (एक निर्देशित ग्राफ ड्राइंग - man dotमैनपेज देखें )

    debtree --with-suggests <package> >out.dot
    
  • एक .dot फ़ाइल से एक ग्राफ़ (PNG) बनाएँ

    dot -T png -o out.png out.dot
    
  • एक ग्राफ (पोस्टस्क्रिप्ट) बनाएं और इसे ओकुलर का उपयोग करके देखें

    debtree <package> | dot -Tps | okular - &
    

विदित हो कि इस एप्लिकेशन को बड़े पैकेजों (यानी जीएडिट) के विरुद्ध चलाने पर, चित्र जल्दी से अस्पष्ट और अवैध हो सकते हैं।

ध्यान दें कि apt-rdependsएक समान तरीके से भी उपयोग किया जा सकता है, लेकिन एक ग्राफिक में पाइपिंग आउटपुट थोड़ा अधिक दृढ़ है, मेरी राय में।

इसे भी देखें: उबंटू डेट्री मैन पेज


1
--no-skipया यहां तक ​​कि --show-allअधिक पैकेज जैसे कि शामिल करने के लिए बहुत उपयोगी विकल्प हैं libc6
लॉगऑफ

2

शायद इतना "ग्राफिकल" नहीं है, लेकिन अगर आप कोई अतिरिक्त पैकेज स्थापित नहीं करना चाहते हैं, तो आपको बस चलाने की संभावना है

apt-cache rdepends <package>

आप dependsविकल्प पर एक नज़र रखना चाहते हैं ।

आपके पास भी है:


1

कमांड-लाइन टूल एप्टीट्यूड निर्भरता को देखने के लिए एक महान उपकरण है। कोई फैंसी रेखांकन नहीं है, लेकिन यह आपको एक विशिष्ट पैकेज के लिए निर्भरता का एक अच्छा पदानुक्रमित प्रतिनिधित्व देता है।


नाथन कैज़ेल: क्या आप विस्तृत कर सकते हैं कि मैं किसी दिए गए पैकेज के लिए इस श्रेणीबद्ध ग्राफ को कैसे देख सकता हूं?
अश्विन नंजप्पा

जब आप एप्टीट्यूड खोलते हैं, तो आप जिस पैकेज का उपयोग कर रहे हैं उसके लिए एक पैकेज खोजें / फिर हिट करें जो पैकेज आप चाहते हैं और यह पैकेज के बारे में सभी जानकारी दिखाएगा जिसमें एक आश्रित पेड़ के साथ एक आश्रित आश्रितों और परस्पर विरोधी पैकेज भी शामिल हैं।
५२

नाथन कैज़ेल: क्या आप कमांड-लाइन एप्टीट्यूड टूल की बात कर रहे हैं?
अश्विन नानप्पा

संपादित। पहले स्पष्ट नहीं करने के लिए खेद है
Ntc
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.