Khắc phục: Không thể mở tệp / var / lib / dpkg / status



Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề

Bạn có thể gặp phải lỗi khó chịu “không thể mở tệp / var / lib / dpkg / status” hoặc lỗi tương tự nếu bạn đang dò tìm thư mục / var / lib / dpkg / và xóa mọi thứ với tư cách là người dùng gốc. Hầu hết các tệp nằm trong / var, theo Tiêu chuẩn phân cấp hệ thống tệp của Linux, là tạm thời và thay đổi trong quá trình hoạt động. Tuy nhiên, điều đó không có nghĩa là chúng cần được làm sạch giống như cách mà bộ nhớ cache của trình duyệt Web cần được xóa.



Vì hầu hết người dùng Linux không có nhu cầu tìm kiếm ở đây, nên tin tốt là bạn có thể sẽ không nhận được điều này gần như bao giờ. Những người đang sử dụng các bản phân phối không sử dụng apt-get, chẳng hạn như Fedora hoặc Arch, sẽ không bao giờ gặp phải lỗi này vì nó hoàn toàn dành riêng cho người quản lý gói đó. Tuy nhiên, nếu bạn đang giải quyết vấn đề đó thì hãy đọc tiếp.



Phương pháp 1: Khắc phục Lỗi dường như ngẫu nhiên không thể mở tệp / var / lib / dpkg / status

Nếu lỗi này xuất hiện màu xanh lam, hãy nhập ls / var / lib / dpkg / trạng thái tại dòng lệnh và xem kết quả đầu ra.



Bạn cũng có thể muốn sử dụng trình quản lý tệp đồ họa cho trình duyệt trên đó và xem qua.

Đảm bảo rằng bạn thấy tệp trạng thái trong kết quả. Thông thường, bạn sẽ chỉ nhận được một dòng có nội dung / var / lib / dpkg / status mà không có gì khác sau nó trước khi nó đưa bạn đến thẳng lời nhắc. Nếu đúng như vậy, thì bạn có một tập tin ở đó và bạn sẽ ổn. Đóng tất cả các chương trình bạn đang làm việc sau khi lưu và sau đó khởi động lại.

Sau khi bạn sao lưu và chạy, hãy nhập sudo apt-get cập nhật theo dõi bởi sudo apt-get nâng cấp tại thiết bị đầu cuối và làm theo lời nhắc. Bạn có thể sẽ được yêu cầu nhập mật khẩu quản trị viên của mình, nhưng sau khi mật khẩu cập nhật, bạn sẽ ổn. Bạn sẽ muốn xem bất kỳ lỗi kỳ lạ nào.



Nếu tệp không có ở đó, thì bạn sẽ phải đưa ra một số quyết định.

Phương pháp 2: Tạo lại / var / lib / dpkg / status

Một số người dùng sao lưu tất cả dữ liệu quan trọng của họ vào thời điểm này trước khi cài đặt lại Linux. Bạn có thể làm điều này, nhưng có thể có một cách để cứu vãn mọi thứ trước. Có một bản sao lưu của / var / lib / dpkg / status được tạo tự động và hy vọng rằng không quá nhiều thời gian kể từ khi bạn gặp lỗi khiến nó không đồng bộ.

Thử chạy sudo cp / var / lib / dpkg / status-old / var / lib / dpkg / status tại nhà ga. Nếu điều này không gây ra lỗi cho bạn thì bạn có thể xem cách này có khắc phục được sự cố hay không. Thao tác này sẽ khôi phục bản sao lưu gần đây nhất của tệp trạng thái, nhưng rất tiếc nếu nó quá cũ, bạn vẫn có thể ở trong nước nóng. Tuy nhiên, bạn có thể khởi động lại rồi chạy sudo apt-get cập nhật theo dõi bởi sudo apt-get nâng cấp để xem những loại lỗi phụ thuộc nào sắp xảy ra với bạn. Trong trường hợp tốt nhất, bạn sẽ không có bất kỳ lỗi nào và bạn chỉ có thể tiếp tục làm việc với hệ thống của mình như bình thường.

Bạn cũng có thể thử xây dựng lại danh sách trạng thái. Kiểu sudo touch / var / lib / dpkg / status để tạo một tệp trống với tư cách là người dùng root và sau đó thử sudo apt-get install long-list từ thiết bị đầu cuối. Có một số tập lệnh thực hiện điều này tự động, nhưng về cơ bản đây là điều tương tự và không có nguy cơ chạy một tập lệnh có khả năng lỗi thời trên máy của bạn. Hãy cảnh báo rằng bạn sẽ cần phải nhớ những gì bạn có trên hệ thống của mình để điều này hoạt động và phần mềm sẽ nhắc bạn nhớ.

Bạn cũng có thể thử ls /var/backups/dpkg.status* và xem những gì ở đó mà bạn có thể muốn sử dụng cho việc này.

Hãy xem danh sách xuất hiện khi bạn chạy nó. Nếu bạn thấy một cái chưa được nén, hãy thử sudo cp /var/backups/dpkg.status.0 / var / lib / dpkg / status và xem liệu điều đó có khắc phục được mọi thứ hay không. Bạn luôn có thể sao chép một trong những cái khác và chạy lệnh gunzip trên đó để giải nén. Tuy nhiên, hãy nhớ rằng bạn càng quay lại xa càng có nhiều rủi ro cập nhật một tệp lỗi thời có thể gây ra các phần phụ thuộc bị hỏng

3 phút đọc