Tại sao loại bỏ gnome-core không loại bỏ tất cả các phụ thuộc của nó?


9

Tôi đã cài đặt gnome-coregói trên Ubuntu (phiên bản tối thiểu cho xương beagle) và nó đã gần 600mb. Tuy nhiên, khi tôi cố gắng hủy cài đặt nó bằng cách sử dụng

sudo apt-get autoremove gnome-core 

Nó chỉ loại bỏ 49 MB. Bất kỳ ý tưởng, làm thế nào để loại bỏ toàn bộ 600 MB?

Câu trả lời:


15

gnome-core là một gói meta và trường hợp với các gói meta là -

Họ kéo các gói để được cài đặt nhưng loại bỏ chúng sẽ không xóa tất cả các gói đã kéo .

Vì vậy, trừ khi, bạn đã sao chép tên của các gói được cài đặt bởi gnome-core, hầu như không thể xóa tất cả 600 MB.

Nhưng, bạn có thể lấy tên của các gói đã kéo bằng lệnh

apt-cache depends gnome-core 

và cố gắng loại bỏ từng gói một. Bạn nên luôn luôn kiểm tra xem nó có đang gỡ bỏ bất kỳ gói cần thiết nào không.

Hoặc bạn có thể lấy danh sách các gói theo cách hữu ích hơn bằng cách này:

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

Điều này sẽ liệt kê tất cả các phụ thuộc của gói gnome-core, chỉ bỏ qua tên gói trong <>dấu.

Làm thế nào để tôi biết, liệu có bất kỳ gói hệ thống đang được gỡ bỏ?

Khi bạn thấy rất nhiều không gian đang được giải phóng khỏi lệnh, (hơn 600 MB) , bạn nên biết rằng bạn đang xóa nhiều hơn bạn đã cài đặt. apt-getsẽ cho bạn biết bao nhiêu không gian sẽ được giải phóng, trước khi xóa như thế nào với một tin nhắn như thế này

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

Và khi bạn cố gắng loại bỏ gói hệ thống thiết yếu, apt-getsẽ hiển thị cho bạn một thông báo cảnh báo.

Khuyến nghị: Tôi khuyên bạn nên lấy danh sách các gói từ lệnh đầu tiên và cố gắng loại bỏ từng gói một. Nó an toàn hơn. Nếu bạn thấy một cảnh báo, bỏ qua việc loại bỏ gói đó. Tôi thấy, hầu hết các gói trong gnome-core đều liên quan đến GUI, tôi đoán việc loại bỏ các gói đó sẽ không gây hại cho hệ thống của bạn (nếu bạn không muốn có GUI) .

Hi vọng điêu nay co ich!


Một số lưu ý khi xóa gói

Làm thế nào các gói kéo được gỡ cài đặt khi bạn gỡ bỏ gói chủ?

Khi bạn cài đặt một gói và gói đó phụ thuộc vào một số gói khác, các gói phụ thuộc cũng được cài đặt và Đánh dấu là tự động . Điều đó có nghĩa là, hệ thống Apt đánh dấu chúng là Tự động cài đặt là phụ thuộc của gói khác . Nó giúp hệ thống Apt nhận ra các gói không cần thiết.

Khi, bạn gỡ cài đặt gói chính, các gói đã kéo cũng được đánh dấu là các gói lỗi thời hoặc không cần thiết trong hệ thống. Bạn có thể loại bỏ chúng bằng cách cung cấp autoremovetùy chọn apt-get. (aptitude tự động loại bỏ chúng với gói chủ) .

Một ngoại lệ cho quy tắc này là, nếu sau này bạn cài đặt gói khác cũng phụ thuộc vào gói đã kéo, thì gói đã kéo sẽ không bị đánh dấu là lỗi thời khi bạn xóa gói chính đầu tiên.

Ví dụ: Bạn đã cài đặt một gói Xphụ thuộc vào gói Y. Khi bạn cài đặt X, Ycũng được cài đặt và đánh dấu là tự động. Nếu bạn không cài đặt gói khác Zcũng phụ thuộc vào Y, việc xóa Xsẽ hiển thị Ytính hữu dụng và hệ thống Apt sẽ đánh dấu nó lỗi thời và bạn có thể xóa gói đó bằng autoremovetùy chọn.

Nhưng nếu bạn cài đặt một gói Zsau Xđó cũng phụ thuộc vào Y, thì việc xóa chỉ Xkhông đánh dấu Ylà gói lỗi thời và bạn không thể xóa gói đó bằng autoremovetùy chọn

Nhưng lưu ý rằng nếu bạn xóa gói Ysau khi cài đặt X, nó sẽ xóa gói Ybao gồm X, vì Xkhông thể ở lại mà không Ymuốn và bạn muốn xóa Y, điều đó có nghĩa là bạn cũng muốn xóa X. Apt sẽ Xtự động loại bỏ khi loại bỏ Ykhông giống như đánh dấu nó lỗi thời để loại bỏ sau này bằng autoremovetùy chọn.

Hãy thử các ví dụ: ubuntu-desktop gói là một gói meta. Nó được sử dụng để cài đặt máy tính để bàn Ubuntu tiêu chuẩn. Hãy thử loại bỏ nó, chỉ gói đó sẽ được gỡ bỏ.

Ngoài ra, hãy thử cài đặt lubuntu-desktopgói (Bạn có thể không muốn cài đặt gói này, vì đây là một bản tải xuống lớn) . Nhưng, khi bạn cố gắng loại bỏ nó, chỉ có gói nhỏ lubuntu-desktopsẽ bị xóa.

Apt xử lý các gói meta khác nhau

Các gói meta như gnome-core, ubfox -rict-bổ sung cũng được gọi là các gói ảo. Chúng được gọi như vậy, vì về cơ bản chúng là các gói trống, Chúng kéo các gói khác bằng cách phụ thuộc vào chúng. Ví dụ: các tính năng bổ sung bị hạn chế của Ubuntu phụ thuộc vào (trong 12.04) các gói sau:

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

Trong đó, chính addon bị hạn chế của Ubuntu là một gói meta khác. Vì, các gói meta chỉ được sử dụng cho các gói kéo, cài đặt chúng không đánh dấu các gói đã kéo là tự động , chúng được đánh dấu là cài đặt thủ công. Kết quả? Chỉ xóa gói meta chính sẽ không đánh dấu các gói đã bị lỗi thời và bạn không thể xóa chúng theo autoremovetùy chọn. Đó là lý do tại sao bạn cần loại bỏ từng gói kéo của các gói meta theo cách thủ công.

Ví dụ: Bạn đã cài đặt gói meta Xphụ thuộc vào gói YZ. Khi bạn cài đặt nó, các gói YZkhông được đánh dấu là tự động (được cài đặt tự động là phụ thuộc của gói khác) , thay vào đó chúng được đánh dấu là cài đặt thủ công. Trong thời gian sau khi bạn muốn xóa X, chỉ có Xgói ảo bị xóa. Cả hai, YZ, vẫn còn trong hệ thống và bạn không thể gỡ cài đặt chúng với autoremovetùy chọn.


Đó là khá cồng kềnh. Nhưng tôi đoán đó là lối thoát duy nhất phải không?
Nhà phát triển Android

Bạn có chắc chắn rằng nó apt-cache dependssẽ hữu ích ở đây? Tôi cảm thấy cách được đề xuất bởi tijybba phù hợp hơn cho mục đích này.

@Sab Theo tôi biết, Có.
Anwar

@ vasa1 Vấn đề là tôi đang chạy xương beagle và hầu như không có gui, ngay cả khi sử dụng trình xem vnc
Nhà phát triển Android

@Sab Tôi đã thêm một lệnh khác để lấy danh sách trong một dòng.
Anwar

2

Cài đặt gnome-core , mang lại rất nhiều gói và phụ thuộc, vì nó là gói meta.

Một trong những cách là loại bỏ nó một cách thủ công, nhưng bạn nên biết Gói nào cần được gỡ bỏ mà không gây ra bất kỳ lỗi hậu quả nào.

Danh sách các Gói được bao gồm được liệt kê ở đây Gói: gnome-core (1: 3.0 + 6ubfox3) [vũ trụ]

Chuyển đến trình quản lý Synaptic (Cài đặt nó nếu không có) , nhấp vào Xuất xứ từ các lựa chọn dưới cùng bên trái, tham chiếu hình ảnh

nhập mô tả hình ảnh ở đây

Chọn gói để loại bỏ, bằng cách tham khảo các liên kết ở trên.

Thận trọng nếu bạn không biết nên loại bỏ gói nào, sau đó Đừng làm theo phương pháp này. Đây có thể gây ra lỗi phụ thuộc .


2

Giới thiệu:

Để loại bỏ hoàn toàn các chương trình bằng dòng lệnh, bạn có các tùy chọn sau;

Xóa và định cấu hình tệp, nhưng không phụ thuộc bằng apt-get

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

Xóa các tệp phụ thuộc và tệp cấu hình không sử dụng bằng apt-get

sudo apt-get --purge autoremove

Khi Gnome được cài đặt trong Ubuntu 12.04, nó sẽ cài đặt một số gói và thư viện mà nó yêu cầu cũng như một số gói tùy chọn. Không phải tất cả các gói và thư viện này đều được gỡ cài đặt khi bạn gỡ cài đặt Gnome. Một số gói (như epiphany-browser và gnuchess) không được gỡ cài đặt. Gỡ cài đặt nhanh

Điều này không được khuyến khích vì nó sẽ xóa tất cả các gói thường được cài đặt với Gnome. Điều này có thể bao gồm các gói bạn đã cài đặt trước đó (như epiphany-browser hoặc gnuchess) hoặc các gói được cài đặt trước đó bởi các ứng dụng khác.

Lưu ý: lệnh gỡ cài đặt này giả định Gnome đã được cài đặt trên Ubuntu 12.04 mới. 1

Chỉ cần nhấn Ctrl+ Alt+ Ttrên bàn phím để mở Terminal. Khi nó mở ra, chạy lệnh bên dưới. (nó rất dài và một dòng duy nhấ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

Cách tốt hơn về cách xóa hoàn toàn gói

1) Mở tệp nhật ký năng khiếu (/var/log/apt/history.log).

2) Xác định vị trí các tập tin đã được cài đặt.

3) Xóa các tệp bằng 1

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

1 Nguồn: Cách gỡ cài đặt hoàn toàn / Xóa Gnome

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.