다른 패키지가 의존하지 않는 DNF를 사용하여 모든 패키지를 제거하는 방법

다른 패키지가 의존하지 않는 DNF를 사용하여 모든 패키지를 제거하는 방법

내 문제

저는 손으로 소프트웨어를 만들고 싶었습니다. 그래서 dnf install <a> <b> <c>.

그런 다음 해당 소프트웨어가 더 이상 필요하지 않았기 때문에 모든 종속성을 제거하고 싶었습니다. 그러나 yum remove <a> <b> <c>설치된 다른 패키지가 여전히 이러한 패키지 중 하나에 종속되어 있는 경우에도 모든 패키지를 제거합니다( <b>예: ).

내가 시도한 것

  • 을 읽었 man dnf지만 적합한 명령을 찾을 수 없습니다.

내 질문

가장 간단한 방법은 무엇입니까?

  1. 어떤 패키지가 <a>다른 패키지에 여전히 필요한지 <b>알아 보세요.<c>
  2. dnf remove더 이상 필요하지 않은 패키지 목록의 모든 패키지( <a>, <b><c>)를 제거하지만 지점에서 패키지를 제거하지 마십시오 (1.).

어떤 아이디어?

당신의 도움을 주셔서 감사합니다. 불분명한 부분이 있으면 댓글을 남겨주시면 자세한 내용을 추가하겠습니다.

답변1

Fedora의 경우 다음을 사용할 수 있습니다.패키지 정리, 예를 들어 --leaves옵션을 사용합니다.

--leaves 로컬 RPM 데이터베이스의 리프 노드를 나열합니다. 리프 노드는 다른 RPM에 의존하지 않는 RPM입니다.

답변2

package-cleanupYum 을 사용하면 yum-utils. 그러나 DNF에서는 명령으로 내장되어 있습니다 dnf autoremove. 에서문서:

dnf [options] autoremove

원래 사용자 설치 패키지의 종속성으로 설치되었지만 해당 패키지에 더 이상 필요하지 않은 모든 "리프" 패키지를 시스템에서 제거합니다.

dnf listautomremove 자체를 실행하기 전에 다음 명령을 사용하여 제거될 패키지를 확인할 수도 있습니다 .

dnf list autoremove

또한 DNF에는 유사한 상황(정확한 사례는 아님)에서 도움이 되는 또 다른 동작 차이가 있습니다. 주요 소프트웨어가 DNF에 의해 설치되고(DNF 외부가 아닌) 를 사용한 경우 dnf remove기본값(yum과 달리)은 해당 패키지에만 추가되었지만 사용되지 않는 종속성도 제거하는 것입니다. 다른 것.

관련 정보