Cách khắc phục lỗi "không thể khóa /var/lib/dpkg/lock"

không khóa được ⁄var⁄lib⁄dpkg⁄lock

Mặc dù bản phân phối Linux có thể chọn cài đặt phần mềm theo cách nó thấy phù hợp, nhưng thường thì ít nhất họ có thể cài đặt phần mềm từ kho lưu trữ chính thức của mình. Các kho lưu trữ này có thể được duy trì trực tiếp bởi bản phân phối và/hoặc dựa trên các kho lưu trữ khác, chẳng hạn như với Debian->Ubuntu->Linux Mint. Trong những trường hợp này, trình quản lý gói là APT và đôi khi chúng tôi có thể thấy thông báo "không thể khóa /var/lib/dpkg/lock" trong thiết bị đầu cuối hoặc thậm chí trong một công cụ có giao diện đồ họa.

Bài viết này sẽ cố gắng làm sáng tỏ. về nó là gì và làm thế nào lỗi có thể được giải quyết khiến chúng tôi thấy thông báo "không thể khóa/var/lib/dpkg/lock", nhưng tôi có thể nói với bạn rằng có một giải pháp rất đơn giản có thể khắc phục vấn đề này và nhiều vấn đề khác, cho dù đó là trong Linux- dựa trên phân phối hoặc bất kỳ hệ điều hành nào khác, bao gồm cả thiết bị di động.

Lỗi "không thể khóa/var/lib/dpkg/lock" nghĩa là gì?

Nói chung, khi chúng tôi thấy lỗi "không thể khóa /var/lib/dpkg/lock", thiết bị đầu cuối hoặc phần mềm hiển thị nó cho biết rằng một quy trình APT khác đang chạy và sử dụng cùng một cơ sở dữ liệu mà chúng tôi đang cố gắng truy cập . Nói cách khác, quy trình APT mới sẽ cố khóa tệp /var/lib/dpkg/lock, anh ấy không thể nhận được vì anh ấy bận và thông báo cho chúng tôi về nó.

Phổ biến nhất là một quy trình APT khác, chẳng hạn như bản cập nhật, đang chạy và đã khóa tệp khóa, vì vậy không thể thực hiện bước đầu tiên, chính xác là khóa tệp đã nói.

Cách sửa lỗi

Điều đầu tiên chúng ta phải làm, đặc biệt nếu chúng ta không thích sử dụng thiết bị đầu cuối, là kiểm tra xem có ứng dụng phần mềm nào đang chạy không. Ví dụ: trong Ubuntu, chúng ta có thể xem liệu Phần mềm Ubuntu (nhánh của Phần mềm Gnome) có đang làm gì đó hay không và cả Cập nhật phần mềm, ứng dụng chịu trách nhiệm cập nhật phần mềm, như tên gọi của nó. Nếu chúng tôi không thấy bất kỳ ứng dụng nào trong số đó đang mở, chúng tôi cũng có thể khởi động màn hình hệ thống và tìm kiếm chúng để xem chúng có đang chạy ẩn hay không.

các các ứng dụng mà chúng ta phải tìm kiếm sẽ phụ thuộc vào sự phân bố mà chúng tôi đang sử dụng, vì Phần mềm Ubuntu không có trong Kubfox, và Discover cũng không có trong phiên bản chính của Debian. Mỗi bản phân phối quản lý phần mềm bằng các công cụ mà nó chọn để thêm vào và chúng có thể chặn kho lưu trữ Phần mềm GNOME, Khám phá, bất kỳ cửa hàng phần mềm nào khác hoặc công cụ cập nhật.

Cho dù chúng ở phía trước hay phía sau, một tùy chọn là kiên nhẫn và chờ xem công việc bạn đang làm đã hoàn thành chưa. Đôi khi chúng tôi thấy một thông báo lỗi và chúng tôi muốn nó được sửa ngay lập tức, khi đó giải pháp là đợi một lúc.

Khởi động lại hoặc đăng xuất là đủ

Nhiều năm trước, một người bạn luôn hỏi tôi cách khắc phục sự cố trong Windows của anh ấy. Đã có lúc tôi hầu như không hỏi anh ấy nữa, và tôi đã giới thiệu anh ấy khởi động lại bởi vì đó hầu như luôn là giải pháp tốt nhất cho anh ta. Trong trường hợp lỗi "không thể khóa /var/lib/dpkg/lock" cũng là một giải pháp khả thi. Khi bắt đầu lại từ đầu, bạn có thể bắt đầu với tệp bị khóa bởi công cụ cập nhật, nhưng nó sẽ sớm mở khóa khi bạn xác minh rằng không có gì mới để cài đặt hoặc có nhưng bạn đã thông báo cho chúng tôi về nó.

Chắc chắn, đó không phải là giải pháp tao nhã nhất, nhưng ít tốn kém nhất và có thể là tốt nhất và nhanh nhất nếu bạn không có bất kỳ lý do nào để tiếp tục đăng nhập.

Khi thông báo "không thể khóa /var/lib/dpkg/lock" không biến mất

Khi chúng tôi đã khởi động lại hoặc đợi một lúc và chúng tôi tiếp tục thấy thông báo, điều đang xảy ra với chúng tôi không phải là điều bình thường. Việc chặn đã bị "treo" hoặc, giá trị dự phòng, bị chặn, vì vậy nó đã có giá trị kéo thiết bị đầu cuối.

  1. Điều đầu tiên chúng ta sẽ làm là mở một thiết bị đầu cuối và xác định quy trình APT đang chạy bằng lệnh này:
sudo lsof /var/lib/dpkg/lock
  1. Với quy trình được xác định, chúng tôi sẽ tắt nó bằng lệnh này, thay thế PID bằng số của quy trình mà chúng tôi sẽ tìm ra bằng lệnh từ bước 1:
sudo kill PID
  1. Cuối cùng, chúng tôi thử lại để thực hiện quản lý APT mà lỗi đã quay trở lại. Nó sẽ cho phép chúng ta tiếp tục.

Nếu điều này không giải quyết được, chúng tôi có thể làm điều gì đó quyết liệt hơn, vì vậy bạn sẽ phải đề phòng hoặc thực hiện các bước bổ sung. Điều này đang thực hiện "một cách khó khăn": xóa tệp /var/lib/dpkg/lock. Các bước để làm theo để làm điều đó một cách an toàn sẽ là:

  1. Chúng tôi tạo bản sao lưu của tệp /var/lib/dpkg/lock. Vì những gì chúng tôi sẽ làm là sao chép nó, chúng tôi có thể sử dụng trình quản lý tệp, vì không cần có quyền siêu người dùng. Từ thiết bị đầu cuối, nó có thể được thực hiện với cp /var/lib/dpkg/lock đường dẫn mới, thay đổi "new-path" thành đường dẫn mà chúng tôi muốn tạo bản sao lưu.
  2. Chúng tôi xóa tệp . Đối với điều này, nó sẽ là cần thiết để kéo các đặc quyền. Nếu trình quản lý tệp của chúng tôi cho phép, chúng tôi có thể viết, chẳng hạn như "sudo nautilus" mà không có dấu ngoặc kép để xóa nó bằng giao diện đồ họa, nhưng tôi nghĩ sẽ nhanh hơn và dễ dàng hơn khi mở thiết bị đầu cuối và viết:
sudo rm /var/lib/dpkg/lock
  1. Với tệp đã bị xóa, chúng tôi có thể thử lại những gì chúng tôi không được phép. nếu chúng ta viết sudo apt update và chúng tôi không thấy lỗi, lỗi đã được sửa.

Khởi động lại và kiên nhẫn thường là tốt nhất

Mặc dù có nhiều cách để khắc phục, chẳng hạn như những cách đã giải thích ở điểm trước, nhưng lỗi "không thể khóa /var/lib/dpkg/lock" nó không có gì thực sự nghiêm trọng và nó có thể được khắc phục bằng cách đợi một lúc hoặc bằng cách khởi động lại. Đó là thứ thường tự khắc phục và nếu không, khởi động lại là cách ít gây hấn nhất và hiệu quả nhất. Bây giờ, đây là Linux, và mọi thứ hoặc hầu hết mọi thứ đều có giải pháp từ thiết bị đầu cuối, chưa kể chúng ta có thể "giết" bất cứ thứ gì chúng ta muốn.

Vì bất kỳ lý do gì, tôi hy vọng rằng những gì được nêu ở đây có thể giúp ích cho bạn, hoặc làm cho thông báo biến mất bằng một quy trình tích cực hơn hoặc để bạn có một chút kiên nhẫn.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   Danilo Quispe Lucana dijo

    Xin chào:

    Lệnh này phù hợp với tôi (đã thử nghiệm trên Xubfox 18.04 LTS):

    bộ nhiệt áp sudo -vki /var/lib/dpkg/lock

    Nó cũng hợp lệ cho các tệp bị khóa khác, chẳng hạn như /var/lib/dpkg/lock-frontend hoặc /var/lib/apt/lists/lock.

    Liên quan