시간이 지남에 따라 더 이상 필요없는 많은 i386 패키지를 설치했습니다. 시스템을 정리하고 amd64 패키지로만 유지하려면 어떻게해야합니까?
답변
그들이 당신의 방식으로 있지 않다면, 나는 그들이있는 곳에 남겨 둘 것입니다.
삭제를 주장하는 경우 dpkg -l | grep i386
i386 패키지 목록을 작성하는 데 사용 하십시오. 와 같은 것을 신중하게 확인한 후에 삭제할 수 있습니다 sudo apt-get purge <package-name>
.
답변
자동화 된 상위 솔루션은 위험하며 항상 작동하지는 않습니다 (1).
sudo aptitude purge `dpkg --get-selections | grep ":i386" | awk '{print $1}'`
또는
sudo apt-get purge `dpkg --get-selections | grep ":i386" | awk '{print $1}'`
(항상 하나의 도구 만 사용하십시오. 종속성 문제가있는 경우 적성이 더 좋으므로 선호합니다.)
또한 좋은 생각
dpkg --remove-architecture i386
그리고 아마도
dpkg --print-foreign-architectures
(1) 이전 명령은 이름에 i386 만있는 패키지를 나열하지만 (64 비트 아키텍처 용이지만) 정규 표현식이 작동하지 않으며 dpkg는 이미 제거되었지만 여전히 구성 파일이 남아있는 패키지를 표시합니다 ( dpkg -l 상태로 “ii”대신 “rc”를 표시합니다.
답변
나는 다음과 같이 모든 32 비트 패키지를 공포했다.
sudo apt-get remove `dpkg --get-selections | grep i386 | awk '{print $1}'`
답변
누군가 궁금해하는 경우에는 훨씬 더 깔끔하고 우아한 방법이 있습니다. 마지막 이전 답변은 동일한 작업을 수행하려고하지만 아키텍처는 특별한 경우를 제외하고 실제로 패키지 이름의 일부가 아니기 때문에 검색이 실패합니다.
루트로 (또는 sudo로) 다음을 실행하십시오.
aptitude remove ~i~ri386
apt-get보다 적성을 아직 사용하지 않았다면 그렇게하십시오. 정말 훌륭합니다. 적성의 검색어 목록은 여기 에서 찾을 수 있습니다 .
답변
위험이 더 낮은 다른 방법은 다음과 같습니다.
apt-get remove "^.*:i386$"
이것은 ":i386"
모든 i386
아키텍처 데비안 패키지에 대한 표준 명명 규칙 인로 끝나는 패키지 만 일치 합니다.
답변
데비안의 multiarch 가이드 :이 명령 언급 apt-get purge ".*:<arch>"
이 같은 것 외모 i386
:
apt-get purge ".*:i386"
그런 다음 dpkg에서 아키텍처를 제거 할 수 있습니다.
dpkg --remove-architecture i386