Liên hệProfile
Danh mục

Mục Lục

    Cách sửa lỗi Sub-process /usr/bin/dpkg returned an error code hiệu quả trên Ubuntu/Debian

    Nguyễn Hưng

    Ngày đăng:

    14/01/2026

    Cập nhật lần cuối:

    14/01/2026

    Lượt xem:
    Chia sẻ
    Đánh giá
    5/5 - (1 bình chọn)

    Nguyễn Hưng

    Lượt xem:
    Ngày đăng:

    14/01/2026

    Cập nhật lần cuối:

    14/01/2026

    Mục lục

    Lỗi Sub-process /usr/bin/dpkg returned an error code thường xuất hiện khi trình quản lý gói dpkg gặp sự cố trong quá trình cài đặt, gỡ bỏ hoặc cập nhật phần mềm. Trong bài viết này, mình sẽ cùng bạn tìm hiểu chi tiết về nguyên nhân, cách khắc phục lỗi Sub-process /usr/bin/dpkg returned an error code chi tiết và hiệu quả.

    Những điểm chính

    • Định nghĩa lỗi Sub-process /usr/bin/dpkg returned an error code: Hiểu rõ đây là lỗi xảy ra khi quá trình cài đặt, gỡ bỏ hoặc cập nhật gói phần mềm qua dpkg bị gián đoạn.
    • Nguyên nhân gây lỗi: Nắm được các nguyên nhân phổ biến như quá trình cài đặt bị gián đoạn, lỗi script, xung đột gói, hoặc cơ sở dữ liệu dpkg bị hỏng.
    • Cách xác định gói gây lỗi: Biết cách đọc thông báo lỗi để xác định chính xác gói phần mềm nào đang gây ra sự cố.
    • 5 cách khắc phục hiệu quả: Nắm vững các phương pháp để xử lý lỗi, từ việc cấu hình lại dpkg, sửa lỗi phụ thuộc, đến gỡ bỏ hoàn toàn gói gây lỗi.
    • Kiểm tra và hoàn tất: Biết cách kiểm tra lại hệ thống sau khi đã áp dụng các biện pháp khắc phục để đảm bảo lỗi đã được xử lý hoàn toàn.
    • Lưu ý khi khắc phục: Nắm được các nguyên tắc an toàn để tránh làm hỏng hệ thống, như sao lưu dữ liệu và tuân thủ đúng quy trình.
    • Giải đáp thắc mắc (FAQ): Có được câu trả lời cho các vấn đề nâng cao như cách phân biệt nguyên nhân lỗi, khi nào nên sửa thay vì gỡ bỏ, và có nên dùng các tùy chọn “force” hay không.

    Lỗi Sub-process /usr/bin/dpkg returned an error code là gì?

    Sub-process /usr/bin/dpkg returned an error code là thông báo lỗi thường xuất hiện khi công cụ dpkg gặp sự cố và không thể hoàn tất tác vụ cài đặt, cập nhật hoặc gỡ bỏ phần mềm hiện tại. Tình trạng này thường xảy ra trên các hệ điều hành Linux gốc Debian, khi quy trình xử lý gói tin trước đó bị gián đoạn đột ngột, cơ sở dữ liệu gói tin bị hỏng hoặc các script cấu hình của phần mềm bị lỗi, khiến hệ thống quản lý gói bị tắc nghẽn và ngăn cản người dùng thực hiện thêm bất kỳ thao tác nào cho đến khi được khắc phục.

    Lỗi Sub-process /usr/bin/dpkg returned thường xảy ra trên các hệ điều hành Linux gốc Debian
    Lỗi Sub-process /usr/bin/dpkg returned thường xảy ra trên các hệ điều hành Linux gốc Debian

    Nguyên nhân gây lỗi Sub-process /usr/bin/dpkg returned an error code

    • Quá trình cài đặt bị gián đoạn: Lỗi thường xảy ra khi bạn đang cập nhật hoặc cài đặt gói phần mềm và máy bị mất điện, mất kết nối Internet hoặc bạn vô tình tắt Terminal.
    • Lỗi Script sau khi cài đặt: Mỗi gói .deb thường đi kèm các script như postinst, prerm, nếu các script này bị lỗi cú pháp hoặc gặp vấn đề không mong muốn trên hệ thống, dpkg sẽ dừng lại và báo lỗi.
    • Xung đột gói phần mềm: Lỗi xảy ra khi hai gói phần mềm khác nhau đang cài đặt, ghi đè lên cùng một file hệ thống. Khi đó, hệ thống sẽ chặn quá trình này để tránh hỏng dữ liệu, dẫn đến lỗi code (1).
    • Lỗi phụ thuộc: Khi gói phần mềm bạn muốn cài đặt yêu cầu một thư viện hoặc một gói khác, nhưng gói đó bị thiếu, bị hỏng hoặc có phiên bản không tương thích thì cũng có thể gây lỗi.
    • Cơ sở dữ liệu dpkg bị hỏng: Các file quản lý trạng thái gói phần mềm nằm trong thư mục /var/lib/dpkg/ bị lỗi dữ liệu, khiến hệ thống không thể đọc được thông tin các gói đã cài.
    • Ổ cứng hoặc phân vùng bị đầy: Nếu phân vùng / hoặc /var hết dung lượng trống, dpkg không thể giải nén các file mới hoặc ghi file cấu hình, gây ra lỗi trong quá trình xử lý.
    • Sử dụng PPA hoặc kho lưu trữ không chính thống: Các gói phần mềm từ các nguồn bên thứ ba nếu không được kiểm thử kỹ lưỡng, dẫn đến việc không tương thích hoàn toàn với kiến trúc hệ thống hiện tại của bạn.
    Nguyên nhân gây lỗi Sub-process /usr/bin/dpkg returned an error code
    Nguyên nhân gây lỗi Sub-process /usr/bin/dpkg returned an error code

    Cách xác định gói phần mềm gây lỗi

    Đầu tiên, bạn cần xác định được gói phần mềm nào đang gây lỗi. Khi chạy lệnh apt hoặc dpkg, hệ thống sẽ liệt kê gói gây lỗi ở dòng cuối cùng.

    Ví dụ:

    Errors were encountered while processing:
     google-chrome-stable
    Xác định gói phần mềm gây lỗi
    Xác định gói phần mềm gây lỗi

    Ở kết quả trên cho thấy google-chrome-stable là gói phần mềm đang gây ra lỗi Sub-process /usr/bin/dpkg returned an error code.

    Cách 1: Cấu hình lại cơ sở dữ liệu dpkg

    Nhiều trường hợp lỗi xảy ra do quá trình cài đặt trước đó bị gián đoạn do mất điện, tắt terminal đột ngột,… khiến gói ở trạng thái chưa hoàn tất. Bạn có thể dùng lệnh sau để hoàn tất việc cấu hình các gói đang bị treo hoặc chưa được thiết lập đầy đủ.

    sudo dpkg --configure -a

    Cách 2: Sửa lỗi phụ thuộc bằng tính năng Fix-Broken

    Lệnh dưới đây sẽ yêu cầu apt tự động tìm kiếm các gói phụ thuộc bị thiếu hoặc bị hỏng để sửa chữa chúng:

    sudo apt install -f
    # hoặc
    sudo apt install --fix-broken

    Cách 3: Gỡ bỏ hoàn toàn gói gây lỗi

    Khi một gói cụ thể gây ra lỗi và không thể khắc phục được, bạn hãy gỡ bỏ hoàn toàn gói đó khỏi hệ thống lệnh sau:

    sudo apt remove --purge <tên-gói>
    sudo apt autoremove
    sudo apt clean

    Lệnh trên sẽ xóa hoàn toàn gói gây lỗi cùng với các file cấu hình liên quan, đồng thời dọn dẹp các gói không còn sử dụng để làm sạch hệ thống.

    Cách 4: Xử lý thủ công script của gói

    Nếu bạn không thể gỡ gói bằng lệnh thông thường do script sau cài đặt bị hỏng, bạn cần can thiệp vào thư mục quản lý của dpkg.

    Các bước thực hiện:

    Bước 1: Đầu tiên, bạn di chuyển các file liên quan đến gói gây lỗi vào thư mục tạm:

    sudo mv /var/lib/dpkg/info/<tên-gói>.* /tmp/

    Bước 2: Bạn cập nhật lại danh sách gói:

    sudo apt update

    Việc di chuyển các file cấu hình liên quan đến gói ra khỏi thư mục dpkg sẽ giúp tránh lỗi phát sinh khi chạy lại dpkg hoặc apt, nhất là trong các trường hợp không thể gỡ gói theo cách thông thường.

    Kiểm tra lỗi và hoàn tất

    Sau khi áp dụng một trong các cách trên, bạn hãy chạy lệnh sau để đảm bảo hệ thống của bạn đã hoàn toàn ổn định:

    sudo apt update && sudo apt upgrade -y

    Nếu hệ thống chạy ổn định và không còn thông báo lỗi Code (1), bạn đã xử lý lỗi thành công.

    Lưu ý khi khắc phục lỗi Sub-process /usr/bin/dpkg returned an error code

    Khi khắc phục lỗi, bạn cần lưu ý một số vấn đề sau:

    • Sao lưu dữ liệu: Bạn tạo snapshot hoặc backup /var/lib/dpkg/ trước khi chỉnh sửa file thủ công, vì thao tác sai có thể ảnh hưởng trực tiếp đến toàn bộ hệ thống gói.
    • Tránh chỉnh sửa thủ công: Bạn không nên tự ý xóa hoặc chỉnh sửa các file trong thư mục /var/lib/dpkg/info/ trừ khi đã xác định chính xác gói gây lỗi thông qua log, vì thao tác sai có thể tạo ra rác và làm hệ thống mất ổn định. Ngoài ra, bạn nên ưu tiên sử dụng các lệnh tự động để khắc phục lỗi trước khi cân nhắc đến các biện pháp can thiệp sâu hơn.
    • Tuân thủ đúng quy trình thực hiện: Bạn nên thực hiện từng bước xử lý một cách tuần tự và sau mỗi bước nên chạy lại apt update để kiểm tra hệ thống còn lỗi hay không. Nếu sử dụng PPA hoặc kho phần mềm không chính thức, bạn hãy kiểm tra kỹ khả năng tương thích với hệ thống trước khi thêm và cài đặt gói từ các nguồn này.
    Lưu ý khi khắc phục lỗi Sub-process /usr/bin/dpkg returned an error code
    Lưu ý khi khắc phục lỗi Sub-process /usr/bin/dpkg returned an error code

    Câu hỏi thường gặp

    Làm sao phân biệt lỗi do script của gói hay do cơ sở dữ liệu dpkg bị hỏng?

    Nếu log lỗi chỉ ra cụ thể một script như postinst, prerm hoặc postrm của một gói nào đó và dừng tại bước chạy script, nhiều khả năng lỗi đến từ chính gói đó hoặc môi trường mà script đang chạy.
    Ngược lại, nếu nhiều gói khác nhau cùng lỗi với các thông báo liên quan đến trạng thái gói hoặc file trong /var/lib/dpkg/, nguyên nhân có thể do cơ sở dữ liệu dpkg đã bị hỏng hoặc chưa được cấu hình hoàn tất sau lần cài đặt trước.

    Khi nào nên ưu tiên sửa phụ thuộc thay vì gỡ bỏ hẳn gói lỗi?

    Nếu gói lỗi là một thành phần quan trọng của hệ thống hoặc được nhiều gói khác phụ thuộc, bạn nên ưu tiên apt install –fix-broken để tránh kéo theo chuỗi gỡ bỏ hàng loạt. Việc gỡ bỏ hoàn toàn chỉ nên dùng khi gói đó không thiết yếu, ít phụ thuộc hoặc đã thử sửa phụ thuộc và cấu hình lại mà vẫn thất bại.

    Có nên dùng các tùy chọn “force” của dpkg/apt để sửa lỗi không?

    Các tùy chọn như –force-overwrite, –force-all chỉ nên được sử dụng trong trường hợp bạn nắm rõ xung đột đang xảy ra giữa những file nào và chấp nhận rủi ro phải tự can thiệp sửa lỗi thủ công sau đó. Việc lạm dụng các tùy chọn này có thể khiến nhiều gói rơi vào trạng thái cài đặt dở dang, tạo ra các file trùng lặp và về lâu dài làm cho quá trình chẩn đoán, khắc phục lỗi hệ thống trở nên phức tạp hơn.​

    Lỗi Sub-process /usr/bin/dpkg returned an error code có thể gây gián đoạn việc cài đặt và cập nhật hệ thống, nhưng bạn hoàn toàn có thể xử lý lỗi nếu xác định chính xác nguyên nhân và khắc phục đúng cách. Chúc bạn xử lý lỗi thành công và hẹn gặp lại bạn trong các bài viết tiếp theo. Cảm ơn bạn đã theo dõi bài viết.

    5/5 - (1 bình chọn)
    Nguyễn Hưng
    Tôi là Nguyễn Hưng hay còn được biết đến với nickname là Bo, chuyên gia về hệ thống, mạng và bảo mật. Tôi là Co-Founder của Vietnix và Co-Founder của dự án Chống Lừa Đảo.
    0 0 đánh giá
    Đánh giá bài viết
    Theo dõi
    Thông báo của
    guest
    0 Góp ý
    Cũ nhất
    Mới nhất Được bỏ phiếu nhiều nhất
    Phản hồi nội tuyến
    Xem tất cả bình luận

    BÀI VIẾT LIÊN QUAN

    Các lệnh tìm file trong Linux mới tạo hoặc mới chỉnh sửa gần đây
    Các lệnh tìm file trong Linux mới tạo hoặc mới chỉnh sửa gần đây

    Các lệnh tìm file trong Linux sẽ liệt kê các file vừa được tạo hoặc thay đổi từ đầu ngày đến thời điểm hiện tại, thường được ứng dụng cho thao tác kiểm tra hoặc tự động hóa trên Linux. Trong bài viết này, mình sẽ giới thiệu hai phương pháp hiệu quả và phổ…

    16/01/2026

    Enterprise Cloud là gì? Những tính năng và lợi ích khi sử dụng Enterprise Cloud cho doanh nghiệp
    Enterprise Cloud là gì? Những tính năng và lợi ích khi sử dụng Enterprise Cloud cho doanh nghiệp

    Enterprise Cloud là mô hình hạ tầng điện toán đám mây được thiết kế riêng cho doanh nghiệp, kết hợp độ linh hoạt của đám mây công cộng với mức độ kiểm soát, bảo mật và tùy biến giống hạ tầng riêng. Trong bài viết dưới đây, mình sẽ cùng bạn tìm hiểu về khái…

    16/01/2026

    Tổng hợp thông tin về Amazon S3 và những lợi ích khi sử dụng
    Tổng hợp thông tin về Amazon S3 và những lợi ích khi sử dụng

    S3 là dịch vụ lưu trữ đối tượng trên đám mây của Amazon, có tên đầy đủ là Amazon Simple Storage Service (Amazon S3). Dịch vụ này cho phép lưu trữ, truy xuất dữ liệu qua Internet với khả năng mở rộng rất lớn, độ sẵn sàng và bảo mật cao. Trong bài viết này,…

    16/01/2026

    Cách sử dụng lệnh mkdir để quản lý thư mục và tự động hóa hiệu quả
    Cách sử dụng lệnh mkdir để quản lý thư mục và tự động hóa hiệu quả

    Lệnh mkdir là lệnh dùng để tạo thư mục mới trong hệ thống file trên Linux/Unix. Đây là công cụ cơ bản để xây dựng và tổ chức cấu trúc thư mục, đặc biệt quan trọng trong các script cài đặt, deploy và tự động hóa. Trong bài viết này, mình sẽ hướng dẫn cách…

    14/01/2026