왜 gnome-core를 제거해도 모든 의존성이 제거되지 않습니까?


9

gnome-core우분투 (비글 본의 최소 버전)에 패키지를 설치 했으며 거의 ​​600MB였습니다. 그러나 다음을 사용하여 제거하려고 할 때

sudo apt-get autoremove gnome-core 

49MB 만 제거합니다. 모든 아이디어, 600MB 전체를 제거하는 방법?

답변:


15

gnome-core 메타 패키지이고 메타 패키지의 경우는-

설치를 위해 패키지를 가져 오지만 제거해도 모든 패키지가 제거되지는 않습니다 .

따라서 gnome-core에서 설치 한 패키지 이름을 복사하지 않으면 600MB를 모두 제거 할 수 없습니다.

그러나 명령으로 풀 패키지의 이름을 얻을 수 있습니다.

apt-cache depends gnome-core 

패키지를 하나씩 제거해보십시오. 필요한 패키지를 제거하고 있는지 항상 확인해야합니다.

또는 다음과 같이 더 유용한 방법으로 패키지 목록을 얻을 수 있습니다.

apt-cache depends gnome-core | cut -f 2 -d ':'  | tr '\n' ' '

이것은 gnome-core 패키지의 모든 종속성을 나열하며 패키지 이름은 <>마크로 만 무시합니다 .

시스템 패키지가 제거되고 있는지 어떻게 알 수 있습니까?

명령에서 많은 공간이 확보되면 (600MB 이상) 설치된 것보다 많은 공간을 제거하고 있음을 알아야합니다. apt-get다음과 같은 메시지로 제거하기 전에 여유 공간이 얼마나 될지 알려줍니다.

After this operation, 384 kB disk space will be freed.

필수 시스템 패키지를 제거하려고 apt-get하면 경고 메시지가 표시됩니다.

권장 사항 : 첫 번째 명령에서 패키지 목록을 가져 와서 하나씩 제거해보십시오. 더 안전합니다. 경고가 표시되면 해당 패키지 제거를 건너 뜁니다. 나는 gnome-core의 대부분의 패키지가 GUI와 관련이 있다고 생각 합니다 .GUI를 원하지 않으면 패키지를 제거해도 시스템에 해를 끼치 지 않을 것 입니다.

도움이 되었기를 바랍니다!


패키지 제거에 대한 참고 사항

마스터 패키지를 제거 할 때 가져온 패키지를 어떻게 제거합니까?

패키지를 설치할 때 해당 패키지가 다른 패키지에 종속되면 종속성 패키지도 설치되어 auto로 표시됩니다 . 즉, Apt 시스템 은 다른 패키지의 종속성 으로 자동 설치됨으로 표시합니다 . Apt 시스템이 불필요한 패키지를 인식하는 데 도움이됩니다.

마스터 패키지를 설치 제거하면 풀된 패키지도 시스템에서 더 이상 사용되지 않거나 불필요한 패키지로 표시됩니다. autoremove옵션을 제공하여 제거 할 수 있습니다 apt-get. (마스터 패키지로 적성을 자동으로 제거합니다) .

이 규칙의 예외는 나중에 가져온 패키지에 의존하는 다른 패키지를 설치하는 경우 첫 번째 마스터 패키지를 제거 할 때 가져온 패키지가 더 이상 사용되지 않는 것으로 표시되지 않는다는 것입니다.

예 : package X에 종속 된 패키지를 설치했습니다 Y. 설치시 X, Y도 설치하고 자동으로 표시됩니다. 에 Z의존하는 다른 패키지 를 설치하지 않으면 Y제거 X하면 Y유용성 을 렌더링 하고 Apt 시스템은 더 이상 사용되지 않는 것으로 표시하며 autoremove옵션으로 제거 할 수 있습니다 .

패키지를 설치하는 경우 그러나 ZX도에 의존하는 Y만 제거 X표시하지 않는 Y오래된 패키지로 당신은 그것을 제거 할 수 없습니다 autoremove옵션

그러나 참고 당신이 패키지를 제거하면 Y설치 한 후 X,이 패키지 제거 Y를 포함하여 X, 때문에 X없이 머물 수 없습니다 Y당신은 당신이 제거 싶어 Y, 당신은 또한 제거하고 싶어하는 수단을 X. 옵션 으로 나중에 제거하는 데 사용되지 않는 표시와 달리 제거 X하면 Apt가 자동으로 Y제거됩니다 autoremove.

예를 들어보십시오. ubuntu-desktop package는 메타 패키지입니다. 표준 Ubuntu 데스크탑을 설치하는 데 사용되었습니다. 제거하면 해당 패키지 만 제거됩니다.

또한 lubuntu-desktop패키지 설치를 시도하십시오 (큰 다운로드이므로 설치하지 않을 수도 있습니다) . 그러나 제거하려고하면 작은 패키지 만 lubuntu-desktop제거됩니다.

아파트는 메타 패키지를 다르게 처리합니다.

gnome-core, ubuntu-restricted-extras와 같은 메타 패키지는 가상 패키지라고도합니다. 그것들은 기본적으로 빈 패키지이기 때문에 그렇게 불립니다. 그들은 그들에 따라 다른 패키지를 가져옵니다. 예를 들어 ubuntu-restricted-extras는 다음 패키지에 따라 다릅니다 (12.04).

ubuntu-restricted-addons
ttf-mscorefonts-installer
unrar
gstreamer0.10-plugins-bad-multiverse
libavcodec-extra-53

우분투 제한 애드온 자체는 또 다른 메타 패키지입니다. 메타 패키지는 패키지를 가져 오는 데만 사용되므로 패키지를 설치하면 가져온 패키지가 auto로 표시되지 않으므로 수동으로 설치된 것으로 표시됩니다. 결과? 마스터 메타 패키지 만 제거해도 가져온 패키지가 더 이상 사용되지 않는 것으로 표시되지 않으며 autoremove옵션으로 제거 할 수 없습니다 . 따라서 메타 패키지에서 가져온 각 패키지를 수동으로 제거해야합니다.

예 :X 패키지 Y및에 의존 하는 메타 패키지 를 설치했습니다 Z. 패키지 를 설치하면 YZ패키지는 자동 으로 표시되지 않고 (다른 패키지의 종속성으로 자동 설치됨) 대신 수동으로 설치된 것으로 표시됩니다. 나중에 제거하려는 X경우 가상 X패키지 만 제거됩니다. 둘, Y그리고 Z시스템에 남아 당신이 그들을 제거 할 수 없습니다 autoremove옵션을 선택합니다.


오히려 번거 롭습니다. 그러나 나는 그것이 유일한 길이라고 생각합니까?
개발자 Android

이것이 apt-cache depends도움이 되겠습니까? tijybba가 제안한 방식 이 목적에 더 적합 하다고 생각 합니다 .

@Sab 내가 아는 한, 그렇습니다.
Anwar

@ vasa1 문제는 비글 뼈를 실행하고 vnc 뷰어를 사용하더라도 사실상 GUI가 없다는 것입니다.
개발자 Android

@Sab 한 줄로 목록을 가져 오는 다른 명령을 추가했습니다.
Anwar

2

gnome-core를 설치 하면 메타 패키지이기 때문에 많은 패키지와 종속성이 제공됩니다.

방법 중 하나는 수동으로 제거하는 것이지만, 효과 후 오류를 발생시키지 않고 제거해야 할 패키지를 알아야합니다.

포함 된 패키지 목록은 다음과 같습니다 패키지 : gnome-core (1 : 3.0 + 6ubuntu3) [universe]

시냅틱 관리자로 가서 (없는 경우 설치) 왼쪽 하단 선택에서 원점 을 클릭하고 이미지를 참조하십시오.

여기에 이미지 설명을 입력하십시오

위의 링크를 참조하여 제거 할 패키지를 선택하십시오.

주의 제거 할 패키지를 모르는 경우, 다음 하지 마십시오 이 방법을 따르십시오. 이로 인해 종속성 오류 가 발생할 수 있습니다 .


2

소개:

명령 행을 사용하여 프로그램을 완전히 제거하려면 다음 옵션이 있습니다.

apt-get을 사용한 파일 제거 및 구성

sudo apt-get --purge remove <Package Name>

apt-get을 사용하여 사용하지 않는 종속성 및 구성 파일 제거

sudo apt-get --purge autoremove

그놈이 Ubuntu 12.04에 설치되면 필요한 여러 패키지 및 라이브러리와 일부 선택적 패키지가 설치됩니다. 그놈을 제거 할 때 이러한 패키지와 라이브러리가 모두 제거되는 것은 아닙니다. 여러 가지 패키지 (예 : epiphany-browser 및 gnuches)는 제거되지 않습니다. 빠른 제거

GNOME과 함께 설치된 모든 패키지를 제거하므로 권장하지 않습니다. 여기에는 이전에 설치 한 패키지 (예 : epiphany-browser 또는 gnuches) 또는 다른 응용 프로그램에서 이전에 설치 한 패키지가 포함될 수 있습니다.

참고 :이 제거 명령은 그놈이 새로운 Ubuntu 12.04에 설치되었다고 가정합니다. 1

키보드에서 Ctrl+ Alt+ T를 누르면 터미널이 열립니다. 열리면 아래 명령을 실행하십시오. (매우 길고 한 줄입니다)

sudo apt-get purge --auto-remove alacarte bogofilter bogofilter-bdb bogofilter-common browser-plugin-gnash cheese  cheese-common cups-pk-helper dconf-tools desktop-base ekiga epiphany-browser  epiphany-browser-data epiphany-extensions evolution evolution-common  evolution-plugins evolution-webcal fonts-cantarell gdebi gdebi-core gdm  gedit-plugins gimp gimp-data gir1.2-accountsservice-1.0 gir1.2-caribou-1.0  gir1.2-clutter-1.0 gir1.2-cogl-1.0 gir1.2-coglpango-1.0 gir1.2-folks-0.6  gir1.2-gdesktopenums-3.0 gir1.2-gee-1.0 gir1.2-gjsdbus-1.0 gir1.2-gkbd-3.0  gir1.2-gucharmap-2.90 gir1.2-json-1.0 gir1.2-mutter-3.0  gir1.2-networkmanager-1.0 gir1.2-panelapplet-4.0 gir1.2-polkit-1.0  gir1.2-telepathyglib-0.12 gir1.2-telepathylogger-0.2 gir1.2-upowerglib-1.0  gir1.2-xkl-1.0 gjs glchess glines gnash gnash-common gnect gnibbles gnobots2  gnome gnome-applets gnome-applets-data gnome-backgrounds gnome-contacts  gnome-core gnome-dictionary gnome-games gnome-games-extra-data  gnome-icon-theme-extras gnome-icon-theme-full gnome-js-common gnome-panel  gnome-panel-data gnome-session-fallback gnome-shell gnome-shell-common  gnome-themes-standard gnome-video-effects gnotravex gnotski gnuchess  gnuchess-book gtali hamster-applet iagno imagemagick imagemagick-common  indicator-applet-complete inkscape libbabl-0.0-0 libblas3gf libbonobo2-0  libbonobo2-common libbonoboui2-0 libbonoboui2-common libboost-iostreams1.46.1  libboost-program-options1.46.1 libboost-signals1.46.1 libboost-thread1.46.1  libcapi20-3 libcaribou-common libcaribou0 libcdt4 libcheese-gtk21 libcheese3  libclutter-1.0-0 libclutter-1.0-common libclutter-gst-1.0-0 libclutter-gtk-1.0-0  libclutter-imcontext-0.1-0 libcluttergesture-0.0.2-0 libcogl-common  libcogl-pango0 libcogl9 libept1.4.12 libevolution libgc1c2 libgdict-1.0-6  libgdict-common libgegl-0.0-0 libgfortran3 libgimp2.0 libgjs0c libglade2-0  libgnome2-0 libgnomecanvas2-0 libgnomecanvas2-common libgnomeui-0  libgnomeui-common libgnomevfs2-extra libgraph4 libgsl0ldbl libgtkhtml-4.0-0  libgtkhtml-4.0-common libgtkhtml-editor-4.0-0 libgtkmm-2.4-1c2a libgvc5  libilmbase6 liblapack3gf liblqr-1-0 libmagick++4 libmagickcore4  libmagickcore4-extra libmagickwand4 libmozjs185-1.0 libmusicbrainz4-3 libmutter0  libmx-1.0-2 libnetpbm10 libodbc1 libopal3.10.2 libopenexr6 libpanel-applet--0  libpathplan4 libpst4 libpt2.10.2 libseed-gtk3-0 libwmf-bin liferea liferea-data  lightsoff menu menu-xdg mutter-common netpbm notification-daemon odbcinst  odbcinst1debian2 perlmagick python-gmenu python-gnome2 python-lxml python-numpy  python-pyorbit python-uniconvertor quadrapassel sound-juicer swell-foop synaptic  unixodbc

패키지를 완전히 제거하는 방법에 대한 더 좋은 방법

1) 적성 로그 파일 (/var/log/apt/history.log)을 엽니 다.

2) 설치된 파일을 찾으십시오.

3) 1을 사용하여 파일을 제거하십시오.

sudo apt-get remove --auto-remove <file names>

1 출처 : 그놈을 완전히 제거 / 제거하는 방법

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.