패키지의 종속성을 시각적으로 표시하는 방법은 무엇입니까?


31

이것은 재미와 호기심을위한 것 입니다. 패키지종속성 을 그래프로 시각적으로 볼 수있는 도구가 있습니까?

즉, 주어진 패키지가 의존하는 패키지입니다. 이것은 ASCII 그래픽 (트리 또는 Mercurial의 graphlog와 같은)을 사용하여 표시하는 명령 줄 도구이거나 종속성 그래프를 시각적으로 표시하는 GUI 도구 일 수 있습니다. 종속성을 시각적으로 보여줄 수있는 다른 도구 조합도 작동합니다.


그리고 그래프의 축은 무엇입니까?

1
@ vasa1 : 꼭짓점은 패키지이고 가장자리는 종속성입니다.
Ashwin Nanjappa

답변:


34

부채

응용 프로그램의 웹 사이트 에 따르면 , 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
    
  • 그래프 (Postscript)를 만들고 Okular를 사용하여 봅니다.

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

더 큰 패키지 (예 : gedit)에 대해이 응용 프로그램을 실행하면 이미지가 다루기 쉽고 읽기 어려워 질 수 있습니다.

참고 apt-rdepends도 유사한 방식으로 사용되지만 그래픽으로 출력을 파이프하는 것은 내 의견으로는, 좀 더 뒤얽힌입니다 수 있습니다.

참고 : Ubuntu 채무자 맨 페이지


1
--no-skip또는 --show-all더 많은 패키지를 포함하는 매우 유용한 옵션 libc6입니다.
로그 오프

2

아마도 "그래픽"은 아니지만 추가 패키지를 설치하지 않으려면 그냥 실행할 수도 있습니다.

apt-cache rdepends <package>

depends옵션을 살펴볼 수도 있습니다 .

당신은 또한 :

  • apt rdepends <package>
  • 이 스크립트를 사용하십시오 .apt-rdepends-tree <package>
  • apt-rdepends <package>또는 채무자 apt-rdepends --dotty package | springgraph > dependencies.png

1

명령 행 도구 Apitude는 종속성을 보는 데 유용한 도구입니다. 멋진 그래프는 아니지만 특정 패키지의 종속성을 계층 적으로 멋지게 표현합니다.


Nathan Cazell : 주어진 패키지에 대해이 계층 그래프를 어떻게 볼 수 있는지 자세히 설명해 주시겠습니까?
Ashwin Nanjappa

Aptitude를 열면 /를 사용하여 패키지를 검색 한 다음 원하는 패키지를 입력하십시오. 종료되지 않은 종속성이있는 종속성 트리와 충돌하는 패키지를 포함하여 패키지에 대한 모든 정보가 표시됩니다.
Ntc

Nathan Cazell : 명령 줄 적성 도구를 언급하고 있습니까?
Ashwin Nanjappa

편집했습니다. 죄송 이전 명확히하지 않는
NTC
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.