원하는 기능을 제공하는 데 필요한 파일, 패키지 등의 최소 개수로 시스템을 제거하려고 합니다.
나는 내가 유지하고 싶은 많은 패키지가 종속성이라는 사실을 제외하고 내가 구축하고 있는 배포판에 완전히 불필요하거나 필요하지 않은 패키지에 의존한다는 것을 발견했습니다.
나는 각 패키지의 소스 코드를 추출하고, 원치 않는 종속성에서 함수 목록을 컴파일하고, 해당 함수가 호출되는 위치(있는 경우)를 찾기 위해 유지하려는 패키지의 소스 코드를 스캔한 다음, 라이브러리 기능, 가능한 경우 API 또는 유지하려는 패키지에 해당 기능을 제공하는 데 필요한 다른 모든 항목으로 제거되었습니다.
이제 이걸 해냈어한 번가능한지 확인해보세요. 이것은. 그러나 시간이 많이 걸리고 지루하며 자동화에 적합하지 않습니다.
내가 찾을 수 없는 옵션 dpkg
이나 내가 원하는 것을 달성하기 위해 연구하는 나의 능력(당연히 놀랍지 않은)을 피하는 프로그램이 있습니까?
답변1
deborphan
이 문제를 해결하려고 노력 중입니다.
aptitude
더 이상 설치되지 않는 패키지에 대한 종속성을 충족하기 위해 끌어온 패키지이므로 제거할 수 있는 패키지를 추적하여 뒤에서 이 작업을 수행합니다.
debfoster
일부 유사한 기능이 광고되지만 실제 경험은 없습니다.
이들은 모두 패키지 수준에서 작동하며 dpkg
데이터베이스에 선언된 종속성을 사용합니다. 귀하의 질문은 불필요한 코드 및 기타 리소스를 제거하기 위해 개별 패키지를 제거하려는 것으로 보입니다. 이것은 훨씬 더 복잡하고 어려운 작업입니다. 다른 방법은 없습니다.