젠투에서 특정 패키지를 제거하고 emerge 맨 페이지를 탐색하고 싶었습니다. --unmerge
옵션을 찾았습니다 .
경고 :이 조치는 중요한 패키지를 제거 할 수 있습니다! 일치하는 모든 패키지를 제거합니다. 이것은 종속성을 검사하지 않으므로 시스템의 올바른 작동에 필요한 패키지를 제거 할 수 있습니다. 인수는 원자 또는 ebuild 일 수 있습니다. 종속성 인식 버전
–unmerge 의 경우 –depclean 또는 –prune을 사용 하십시오 .
그러나 제거하려는 패키지가 시스템에 설치된 다른 패키지에 필요한지 확인하고 싶습니다. --depclean
및 --prune
해당 기능을 제공하지 않습니다 :
--depclean
종속성으로 설치되었지만 더 이상 필요하지 않은 패키지를 제거합니다.--prune
“시스템에서 가장 높은 버전의 패키지를 제거합니다”
의 종속성 검사 버전이 --unmerge
없습니까?
답변
나는 depclean
당신이 설명한대로 작동 하지 않는다고 생각 합니다. 인수가 없으면 패키지 이름을 전달 unmerge
하면 추가 종속성 검사와 같이 작동합니다 . 보낸 사람 emerge(1)
:
Depclean은의 종속성 인식 버전으로 사용
--unmerge
됩니다. 하나 이상의 원자가 주어지면 역 종속성이없는 일치 패키지를 병합 해제합니다. 역방향 종속성을 표시 하려면--depclean
함께 사용하십시오--verbose
.
나는 항상 --depclean
( -c
)를 사용 하여 개별 패키지를 병합 해제합니다. 잘 작동합니다
답변
gentoolkit이 도와줍니다.
equery d <atom>
종속성을 먼저 확인한 다음 종속성을 검사 한 후 패키지 제거를 진행할 수 있습니다.
답변
동일한 결과를 얻는 또 다른 방법 (종속성 검사와 병합되지 않는 명령은 아니지만) : emerge --deselect package
. 월드 파일에서 패키지를 제거합니다. 이제 실행 emerge --depclean
하면 다른 패키지에 필요하지 않은 경우 해당 패키지가 제거됩니다.
답변
때때로이 emerge --unmerge
경고 메시지가 나타납니다.
* This action can remove important packages! In order to be safer, use
* `emerge -pv --depclean <atom>` to check for reverse dependencies before
* removing packages.
패키지를 병합 해제하기 전에 종속성 검사를 수행하는 것이 권장되는 방법 인 것 같습니다. 그래도 나는 이것을 달성하기위한 더 좋고 자동화 된 방법이 있기를 희망한다.