deb 패키지를 사용 된 것으로 표시하므로 자동 제거에 권장되지 않습니다. 한 적합하지 않은 관리

내 시스템에는 몇 가지 공유 라이브러리가 설치되어 있으며 구체적인 패키지와는 관련이 없지만 소스에서 빌드 한 적합하지 않은 관리 라이브러리 (최신 SDL, Allegro, SFML 등)에 필요합니다. 소스에서 빌드 된 다른 소프트웨어. 문제는 해당 라이브러리가 APT에 의해 사용되지 않은 것으로 보이므로 자동 제거의 후보이며 제거 할 수있는 합법적 인 사용되지 않는 패키지와 혼합된다는 것입니다.

자동 제거를 위해 제안되지 않도록 패키지를 사용 된 것으로 표시하는 방법이 있습니까? 내 첫 번째 생각은 의존성을 유지하기 위해 자체 메타 패키지를 작성하는 것이 었습니다 (예 : 우분투 데스크탑)는 그렇게하는 방법을 모르겠습니다.



답변

apt-get install패키지도 설치된 것으로 표시 되지만 패키지 업그레이드 (사용 가능한 업그레이드가있는 경우)와 같은 다른 작업을 수행합니다. 자동 설치 상태를 변경하는 올바른 프로그램은 apt-mark입니다.

용법

패키지를 수동으로 설치 한 것으로 표시 (에 의해 제거되지 않도록 apt-get autoremove) :

sudo apt-mark manual package1 package2 ... packageN

패키지가 자동으로 설치된 것으로 표시하려면 ( apt-get autoremove패키지에 의존하지 않는 패키지 로 제거되도록 ) :

sudo apt-mark auto package1 package2 ... packageN

자세한 내용은 매뉴얼 페이지 apt-mark (8)에서 확인할 수 있습니다.


답변

apt-get install을 사용하십시오.

sudo apt-get install [your-packages]

실제로 설치하지는 않습니다. 플래그를 수동으로 설치하도록 설정합니다.


답변

자체 메타 패키지를 만드는 것만 큼 복잡한 작업을 수행 할 필요는 없습니다.

라는 패키지 foo가 자동 제거에 적합하지 않은지 확인하려고한다고 가정하십시오 .

터미널 창 ( Ctrl+ Alt+ T)을 열고 다음을 실행하십시오.

sudo apt-get install foo

즉, 패키지를 수동으로 설치하는 동일한 명령은 패키지를 수동 으로 설치 한 것으로 표시 하므로 종속성으로 원래 설치된 패키지가 제거 된 경우에도 자동으로 제거되지 않습니다.