Điểm:0

Hành vi kỳ lạ của dpkg với ansible

lá cờ in
Aki

Là một phần trong quy trình làm việc của tôi, tôi đang sử dụng máy chủ Ubuntu 20.04.3.

Vì vậy, tôi chuẩn bị hình ảnh cho VM và triển khai nó bằng Ansible.

Vì nó là env không có quyền truy cập internet nên tất cả các gói tôi đang cài đặt đều đã được tải xuống .deb trước đó. bằng cách thực hiện lệnh shell đơn giản:

dpkg -i deb_1.deb deb_2.deb deb_3.deb deb_4.deb 
dpkg -i deb_5.deb deb_6.deb deb_7.deb deb_8.deb 

Đôi khi ~5% trường hợp, tôi nhận được lỗi này hoàn toàn không thường xuyên, có thể xảy ra trong lần cài đặt đầu tiên

"stderr_lines": ["dpkg: lỗi: khóa giao diện người dùng dpkg bị khóa bởi một tiến trình khác",
"E: Quy trình phụ dpkg --set-selections trả về mã lỗi (2)", "E: Thực thi dpkg không thành công. Bạn đã root chưa?"]

Tôi đã cố gắng giải quyết điều này bằng cách:

  1. Danh sách mục

Trước mỗi bước cài đặt thực hiện thao tác xóa file khóa thủ công

  • /var/lib/dpkg/khóa
  • /var/lib/dpkg/lock-frontend
  • /var/cache/apt/archives/lock

Nhưng ngay cả sau khi xóa thủ công, lỗi vẫn tiếp tục xuất hiện.

  1. Đã thử cài đặt các gói với mô-đun apt Ansible và "deb" arg - nhưng hành vi vẫn như vậy.

  2. Đã cố gắng tìm ra quy trình nào thực sự sở hữu các tệp khóa bằng "lsof", nhưng tệp không thuộc sở hữu của bất kỳ quy trình nào.

Có cách nào để khắc phục hành vi lạ và lỗi này không?

Quá trình nào chịu trách nhiệm tạo các tệp khóa đôi khi khi khởi động hệ thống?

Điểm:0
lá cờ cn

Câu trả lời có trong tin nhắn:

Thực thi dpkg không thành công. Bạn đã root chưa?

Bạn cần đặt sudo trước lệnh khi thay đổi vị trí thuộc sở hữu của hệ thống.

Aki avatar
lá cờ in
Aki
Tôi đang chạy tất cả các lệnh với đặc quyền sudo', tôi cũng đã đề cập rằng lỗi này rất hiếm và trong hầu hết các trường hợp, nó vẫn hoạt động, do đó, thật không may, đây không phải là sự cố liên quan đến quyền
lá cờ cn
dpkg dường như nghĩ rằng bạn không phải như vậy nên có lẽ bạn cần kiểm tra cách bạn thiết lập sudo: bạn đã bỏ qua nó trước các lệnh. Khá nguy hiểm nếu bạn đã thêm dpkg vào tệp sudoers: điều đó sẽ KHÔNG cho phép bạn thực thi các lệnh bên trong gói.
Aki avatar
lá cờ in
Aki
Tôi đang đăng nhập với tư cách người dùng root, vì vậy không cần sử dụng sudo.
lá cờ cn
Ubuntu không được thiết lập để sử dụng với quyền root và rất có thể đây là một tác dụng phụ. Khi bạn gặp lỗi này, hãy chuyển đến người dùng quản trị viên và sử dụng `sudo` với dpkg` Nếu cách đó hoạt động, bạn đã tìm ra lý do cho sự cố của mình. Nếu bạn muốn sử dụng quyền root, bạn có thể chuyển sang Debian. Nhận xét bạn đưa ra là thông tin QUAN TRỌNG và lẽ ra phải có trong câu hỏi và tôi có thể bỏ qua câu hỏi.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.