Có an toàn khi sử dụng lệnh apt-get autoremove trong trường hợp cụ thể này không?


37

Lần cuối cùng tôi sử dụng sudo apt-get autoremove, gần như mọi trình điều khiển hiển thị quan trọng hoặc các bộ phận đã bị xóa. Điều này làm cho tôi rất khó hiểu về việc sử dụng lệnh một lần nữa. Tuy nhiên, mỗi lần tôi cài đặt một cái gì đó hoặc sử dụng apt-get updatethiết bị đầu cuối sẽ đọc:

The following packages were automatically installed and are no longer required:
  devilspie libturbojpeg:i386 libxrandr-ltsr2 language-pack-kde-en
  kde-l10n-engb language-pack-kde-en-base libxv1:i386 libllvm3.2
  libllvm3.2:i386 linux-generic-lts-raring
Use 'apt-get autoremove' to remove them.  

Tôi đã thử lệnh cleanvà các thông báo dừng hiển thị trong một thời gian. Câu hỏi của tôi là liệu nó có an toàn khi chạy autoremovelệnh không, hoặc tôi sẽ mất tất cả mọi thứ một lần nữa? Có cách nào để kiểm tra mức độ an toàn khi sử dụng autoremovetrong trường hợp cụ thể này (hoặc bất kỳ) không?


autoremovechính nó sẽ chỉ loại bỏ các phụ thuộc còn sót lại của các gói bạn không còn có. Nếu bạn gỡ cài đặt một gói chính (như máy tính để bàn Ubuntu) autoremovecó thể đã bị nhầm lẫn và loại bỏ những thứ khác, nó không còn nghĩ bạn cần nữa. Tôi đã sử dụng autoremoverất nhiều và không bao giờ có bất kỳ vấn đề.
Seth

1
Có cách nào để kiểm tra xem nó có an toàn không? Bởi vì tôi đã có vấn đề khi sử dụng nó.
Nkciy84

Nó sẽ xác minh với bạn trước khi loại bỏ bất kỳ gói nào.
Seth

Không cần thêm một dòng phụ giữa chúng;).
Braiam

Lol @Braiam, tôi đoán rằng nếu bạn làm cho nó dễ đọc hơn, bạn có thể đúng khi làm như vậy. Đã cố gắng để làm cho nó thậm chí còn tốt hơn :)
Nkciy84

Câu trả lời:


52

Để tập trung vào trải nghiệm trong quá khứ của bạn, nếu autoremovesẽ loại bỏ "nhiều hơn bạn dự định", thì chỉ thực hiện điều đó vì những gói đó không còn phụ thuộc vào nữa. Điều đó xảy ra khi bạn vô tình loại bỏ một cái gì đó :)

Một ví dụ phổ biến từ những ngày xưa tốt đẹp sẽ là loại bỏ một cái gì đó liên quan đến Compiz. apt-getsẽ hiển thị cho bạn một danh sách các gói Compiz mà nó sẽ xóa và bạn sẽ bỏ lỡ nó ubuntu-desktopcũng ở đó. ubuntu-desktopchỉ là một gói meta phụ thuộc vào tất cả các gói tạo nên máy tính để bàn nên việc gỡ bỏ nó không trực tiếp loại bỏ bất cứ thứ gì ...

... Nhưng khi bạn làm tiếp autoremove, tất cả những thứ đó ubuntu-desktoplà sự phụ thuộc duy nhất ... Họ sẽ tạm biệt.

Một vài bài học:

  • sudo apt-get remove <package>sẽ cảnh báo bạn những gì nó sẽ loại bỏ trực tiếp. Nó sẽ không thông báo cho bạn về các hiệu ứng kích nổ.
  • sudo apt-get autoremove cũng nên cảnh báo bạn những gì nó sẽ làm.
  • Sử dụng apt-get -s autoremoveđể thực hiện chạy khô mô phỏng nếu bạn không chắc chắn. Bạn có thể sử dụng nó trên tất cả apt-getcác lệnh.
  • Nếu bạn khởi động lại và bạn đang nhìn chằm chằm vào TTY1, tự hỏi những con khỉ mà bạn đã bắt gặp lần này, /var/log/apt/history.logcó nên cho bạn hoạt động gần đây nhất.
  • Nếu nghi ngờ, kiểm tra ubuntu-desktopđược cài đặt.

autoremove an toàn không? Đó là máy móc hạng nặng nên chỉ an toàn như người lái xe ... Nhưng điều đó nói rằng, thật khó để gây ra thiệt hại vĩnh viễn.


Cảm ơn bạn, đây thực sự là câu trả lời tôi cần. Cảm ơn ít nhất là đọc qua toàn bộ bài viết trước khi đưa ra các giả định do tiêu đề và suy nghĩ tl; dr. Cờ -s là thông tin tôi đang tìm kiếm.
Nkciy84

Nó không an toàn! Tôi vừa giết roscài đặt của mình vì aptnghĩ rằng nó sẽ là một ý tưởng hay để tự động chuyển nó. Không, tôi không thể cài đặt lại vì unmet Dependenciesvà 'giữ các gói bị
hỏng`

2
@mcExchange Nó sẽ cảnh báo và nhắc nhở bạn trước khi nó làm điều đó. Trên dòng cuối cùng, nó chỉ an toàn như người sử dụng nó.
Oli

Có, tôi đã được cảnh báo / nhắc nhở sau đó tôi đọc câu trả lời của bạn và cảm thấy rằng nó an toàn khi làm điều đó. Tuy nhiên, đó là một thảm họa bán! Tôi nghĩ rằng ít nhất nó đáng để đề cập đến nó. Ubuntu là cực kỳ hợp lý khi nói đến sự phụ thuộc. Có thể đó là lỗi của những người ros phát triển nhưng ai quan tâm. Thật đáng thương khi người ta có thể dễ dàng rơi vào địa ngục phụ thuộc trên hệ thống Ubuntu
mcExchange

5

Các gói sau được cài đặt tự động và không còn cần thiết

Nếu họ không còn yêu cầu apt sẽ biết khi nào nó xây dựng các phụ thuộc. apt-get chỉ thông báo cho bạn "Này, bạn đã xóa cái gì đó đã cài đặt các gói này. Tôi muốn bạn quyết định phải làm gì với chúng vì bạn là ông chủ ".

Bây giờ, nó có an toàn không? Vâng. Điều gì xảy ra nếu bạn cần em một lần nữa? apt sẽ tải chúng. Tôi có nên kiểm tra danh sách? Vâng. Một kiểm tra ánh sáng có thể cần thiết.


Tôi xin lỗi, nhưng điều khó hiểu đối với tôi là một lần tôi sử dụng apt-get autoremove và nó chỉ còn lại tôi với CLI và không có máy chủ x. Nỗi đau này khiến tôi phải cài đặt lại (đọc: thời gian và công sức) không còn buồn cười nữa.
Nkciy84

1
@ Nkciy84 đó là vì bạn có thể đã xóa gói meta. Và không đọc các gói mà bạn sẽ gỡ cài đặt. IMO, apt hỏi bạn nếu bạn loại bỏ một gói sẽ khiến hệ thống bị tê liệt / không thể khởi động được, vì vậy chỉ khi bạn đọc sẽ xóa một số gói 100 bạn không cần phải lo lắng.
Braiam

nó tự động điều khiển TẤT CẢ các trình điều khiển mạng của tôi. Tôi khá chắc chắn rằng họ đã được yêu cầu! :(
JamesRyan

@JamesRyan bạn đã có danh sách các gói yêu cầu bạn xác nhận. Ngoài ra, tôi khá chắc chắn rằng bạn đã không cài đặt các gói đó, vì chúng được đánh dấu là tự động cài đặt.
Braiam

@Braiam nó không yêu cầu tôi xác nhận và liệu chúng có được cài đặt tự động không liên quan hay không khi PC đã bị cắt và tôi phải cố gắng khắc phục bằng cách sử dụng thanh usb. Vấn đề tiềm ẩn của tôi là ubfox đã lấp đầy phân vùng / boot. Không ai trong số này là thứ mà người dùng cần phải chạm vào, đó là trải nghiệm người dùng tồi tệ được tạo bởi ubfox.
JamesRyan

1

Ví dụ không an toàn:

apt-get remove --purge icedove*

Không bao giờ, hầu như không bao giờ sử dụng dấu hoa thị trừ libreoffice

Với sức mạnh lớn đến trách nhiệm lớn. Nói chung, bạn nên sử dụng trình quản lý gói synap để trình bày tốt hơn nhiều (cảnh báo **) sau đó là thiết bị đầu cuối.

Ví dụ trên debian Jessie (8.2) Tôi nhận thấy hình ảnh không hoạt động và có 2 phím tắt trong menu cài đặt mặc định. Tôi bắt đầu với:

apt-get remove --purge imagemagick

Điều đó đã thoát khỏi một phím tắt, sau đó tôi đã khởi chạy synap và hai gói bị bỏ lại một trong những thứ phổ biến. Khi chọn gói đó để xóa hoàn toàn, nó hiển thị inkscape là điều đầu tiên phải được loại bỏ do hậu quả của nhiều người khác.

Bây giờ làm điều tương tự trong thiết bị đầu cuối, và nó sẽ không nhảy vào bạn nhiều như vậy. Nó có thể không pha bạn chút nào trừ khi bạn là một cựu chiến binh linux.

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.