Trên hệ thống nhà phát triển của tôi (Kubuntu 20.04), tôi vừa cài đặt CUDA 11.3. Sau khi kiểm tra quá trình cài đặt, tôi thấy một số gói CUDA cũ hơn đã được cài đặt, là phần còn lại từ các thử nghiệm trước đây. Quá trình cài đặt CUDA 11.2 đó chưa hoàn tất, vì vậy tôi cần gỡ bỏ từng gói một (không phải thông qua siêu dữ liệu "cuda"). Tôi đã có thể loại bỏ tất cả chúng trừ một: cuda-cudart-11-2
.
Khi chạy sudo apt loại bỏ cuda-cudart-11-2
hoặc Sudo apt --purge xóa cuda-cudart-11-2
, đúng cách
đặt tên cho hai gói mới cần được cài đặt trước khi gỡ bỏ cuda-cudart-11-2
:
cuda-toolkit-11-config-common
cuda-toolkit-config-common
Câu hỏi đầu tiên của tôi: Có thể như thế nào loại bỏ một gói yêu cầu cài đặt gói mới? Tôi chưa bao giờ nhìn thấy điều này trước đây.
Tôi đã xác nhận việc cài đặt các gói đó theo đề xuất của đúng cách
và có lỗi:
me@mypc:~$ Sudo apt remove cuda-cudart-11-2
Đang đọc danh sách gói... Xong
Xây dựng cây phụ thuộc
Đang đọc thông tin trạng thái... Xong
Các gói bổ sung sau sẽ được cài đặt:
cuda-toolkit-11-config-common cuda-toolkit-config-common
Các gói sau sẽ bị LOẠI BỎ:
cuda-cudart-11-2
Các gói MỚI sau đây sẽ được cài đặt:
cuda-toolkit-11-config-common cuda-toolkit-config-common
0 đã nâng cấp, 2 mới cài đặt, 1 cần xóa và 0 chưa nâng cấp.
Cần lấy 0 B/32,2 kB tài liệu lưu trữ.
Sau thao tác này, dung lượng đĩa 514 kB sẽ được giải phóng.
Bạn có muốn tiếp tục? [Y/n] y
(Đọc cơ sở dữ liệu ... 380817 tệp và thư mục hiện được cài đặt.)
Chuẩn bị giải nén .../cuda-toolkit-11-config-common_11.3.109-1_all.deb ...
Giải nén cuda-toolkit-11-config-common (11.3.109-1) ...
dpkg: lỗi xử lý kho lưu trữ /var/cache/apt/archives/cuda-toolkit-11-config-common_11.3.109-1_all.deb (--unpack):
cố gắng ghi đè '/etc/ld.so.conf.d/989_cuda-11.conf', cũng nằm trong gói cuda-cudart-11-2 11.2.152-1
Chuẩn bị giải nén .../cuda-toolkit-config-common_11.3.109-1_all.deb ...
Giải nén cuda-toolkit-config-common (11.3.109-1) ...
dpkg: lỗi xử lý kho lưu trữ /var/cache/apt/archives/cuda-toolkit-config-common_11.3.109-1_all.deb (--unpack):
cố gắng ghi đè '/etc/ld.so.conf.d/000_cuda.conf', cũng nằm trong gói cuda-cudart-11-2 11.2.152-1
Đã bắt gặp các lỗi trong quá trình xử lí thông tin:
/var/cache/apt/archives/cuda-toolkit-11-config-common_11.3.109-1_all.deb
/var/cache/apt/archives/cuda-toolkit-config-common_11.3.109-1_all.deb
E: Tiến trình con /usr/bin/dpkg trả về mã lỗi (1)
Theo như tôi hiểu, điều này nói rằng cuda-toolkit-11-config-common
không cài được vì file config /etc/ld.so.conf.d/989_cuda-11.conf
không thể ghi đè lên vì nó đang được sử dụng bởi cuda-cudart-11-2
(mà không thể được gỡ bỏ cho đến khi cuda-toolkit-11-config-common
được cài đặt).Điều này nghe giống như một loại bế tắc đối với tôi.
Câu hỏi giây của tôi: Nếu đây thực sự là một bế tắc, làm thế nào tôi có thể giải quyết nó?