apt-get은 중요한 패키지를 “더 이상 필요하지 않음”으로 표시합니다 firefox를 성공적으로 설치했습니다. 이제 호출 apt-get할 때마다

최근에 시스템에 Kali Linux를 설치했습니다. Iceweasel이 사전 설치되어 있습니다. 그러나 Iceweasel 대신 firefox를 설치하고 싶었으므로이 가이드를 따라 firefox를 성공적으로 설치했습니다.

이제 호출 apt-get할 때마다 사전 설치된 많은 패키지가 “자동으로 설치되어 더 이상 필요하지 않음”으로 표시됩니다 .

abhishek@ab-linux:~$ sudo apt-get install
[sudo] password for abhishek:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  empathy empathy-common fonts-cantarell gcalctool gnome-backgrounds
  gnome-dictionary gnome-font-viewer gnome-icon-theme-extras gucharmap
  libavahi-gobject0 libcaribou-gtk-module libcaribou-gtk3-module
  libchamplain-0.12-0 libchamplain-gtk-0.12-0 libgdict-1.0-6 libgdict-common
  libgeocode-glib0 libtelepathy-farstream2 nautilus-sendto-empathy
  sound-theme-freedesktop telepathy-gabble telepathy-logger telepathy-salut
  vino
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 35 not upgraded.
abhishek@ab-linux:~$

리눅스 버전

abhishek@ab-linux:~$ uname -a
Linux ab-linux 3.7-trunk-amd64 #1 SMP Debian 3.7.2-0+kali8 x86_64 GNU/Linux

이 패키지를 중요하고 필요한 것으로 표시하는 방법은 무엇입니까?



답변

분명히 아무것도 깨지지 않았습니다. 패키지가 설치되면 종속 된 다른 패키지가 종종 있습니다. 에 의해 자동으로 설치됩니다 apt-get. 예전에는 이러한 패키지를 추적하고 설치 한 원래 프로그램을 제거한 경우 제거하려는 경우 별도의 프로그램을 사용해야했습니다.

이제 명시 적으로 설치되지 않은 이러한 패키지를 추적하기 위해 상태 플래그를 apt구현합니다 Auto-Installed. 패키지를 제거 할 때 플래그가 설정되어 있고 더 이상 존재하지 않는 패키지가없는 --auto-remove패키지를 추가로 제거 하는 옵션을 추가 할 수 있습니다 Auto-Installed(패키지의 값에 따라 다른 패키지가 제안하거나 권장하는 경우에도 패키지가 유지 될 수 있음) APT::AutoRemove::RecommendsImportantAPT::AutoRemove::SuggestsImportant구성 옵션).

패키지 목록을 살펴보고 유지할 가치가 있는지 결정하고 때로는 유지하려는 패키지 Auto-Installed가 기본적으로 표시 되어 있습니다. 다양한 패키지가 수행하는 작업에 대한 정보를 얻을 수 있습니다 apt-cache show package_name. 일부를 유지하기로 결정한 경우 유지 apt-mark manual하려는 패키지 이름을 사용할 수 있습니다 .

일반적으로 이러한 패키지를 자체적으로 설치해야하는 이유가 거의 없기 때문에 라이브러리 패키지 (대부분의 패키지로 시작 lib)를 표시 하려는 경우가 있습니다. Auto-Installed다른 프로그램은 일반적으로 다른 라이브러리를 실행해야하지만 자체적으로 거의 사용하지 않습니다. -dev라이브러리 자체에 의존 하는 개발 패키지 (로 끝나는 ) 가 필요하도록 라이브러리에 대해 소프트웨어를 컴파일하더라도 라이브러리 를 명시 적으로 설치할 필요는 없습니다.

또한 사용하여 aptitude, 당신은 할 수 aptitude unmarkauto저주 인터페이스의 명령 행 또는 변경에서. 인터페이스의 패키지 목록 내에서 자동으로 설치된 모든 패키지 A옆에 패키지가 있습니다. 당신은 사용하여이 상태를 변경할 수 있습니다 m수동으로 자동 설치 패키지를 표시하고 M(도 다시 수동으로 표시하기 위해 l검색 대화와 열 Enter보기 패키지 세부 사항에를).


답변

중요하고 제거되지 않도록 모든 패키지를 표시하려면 다음을 수행하십시오.

apt-mark showauto | xargs sudo apt-get -y install

기본적으로 apt프로그램을 설치하면 시스템에 영구적으로 남아 있기를 원한다는 것을 알 수 있습니다.


답변

apt-get에서 제안한 명령으로 제거하지 apt-get autoremove않겠습니까?

기본적으로 Kali에 설치되어 이전 웹 브라우저에서 사용되었지만 더 이상이 브라우저를 제거한 후에도 사용되지 않으면 문제가되지 않습니다.

또한 언젠가 패키지 중 하나가 다시 필요 apt-get하면이 를 통해 명시 적 으로 설치하면 “자동으로 설치되어 더 이상 필요하지 않음”으로 표시되지 않습니다.

다른 해결책은 수동으로 설치하는 것입니다. apt-get에서 더 이상 “자동으로 설치되어 더 이상 필요하지 않음”으로 표시되지 않지만 쓸모없는 패키지가있을 것입니다. 이는 IMO가 최고의 솔루션이 아닙니다.