Nguồn.list của bạn thực sự có các mục trùng lặp.
Trước tiên, hãy xem hình thức chính xác của một dòng kho lưu trữ hoặc dòng nguồn:
Định dạng chính xác của dòng nguồn kho là
<type of repository> <location> <dist-name> <components>
Ví dụ, một dòng repo có thể giống như dòng này
deb http://archive.ubuntu.com/ubuntu precise main
Ở đây, điều đó có nghĩa là, kho lưu trữ dành cho các gói nhị phân, được lưu trữ trong http://archive.ubfox.com/ubfox và kho lưu trữ này dành cho Ubuntu chính xác (12.04) và kho lưu trữ này chứa chính (phần mềm được hỗ trợ chính thức bởi Canonical) thành phần.
Loại: Loại có thể deb
và deb-src
. deb
có nghĩa là kho lưu trữ nhị phân trong đó deb-src
có nghĩa là kho lưu trữ nguồn
Vị trí: http://archive.ubuntu.com/ubuntu
vị trí của kho lưu trữ.
Dist-name: Tên phân phối của phiên bản Ubuntu. Đối với Ubuntu 12.04, nó là precise
cho 11.10 oneiric
.
Bạn có thể truy cập Ubuntu Wiki để xem danh sách cập nhật các bản phát hành Ubuntu và tên mã của chúng .
Thành phần: Nó có thể được main
, universe
, multiverse
và restricted
. Những từ này cho biết mức độ hỗ trợ cho các gói và trạng thái cấp phép.
Xem trang này để biết thêm thông tin.
Xin lưu ý rằng, bạn có thể thêm một hoặc nhiều thành phần trong một dòng, vì vậy "chính", "vũ trụ", "bị hạn chế" và "đa vũ trụ" có thể nằm trong một dòng. Cũng lưu ý, Mặc dù bạn thêm nhiều thành phần trong một dòng, hệ thống APT coi chúng là một dòng riêng biệt chỉ chứa một thành phần.
Vì vậy, nếu bạn sources.list
có một dòng như thế này
deb http://archive.ubuntu.com/ubuntu precise universe
Sau đó, nó không thể có một dòng khác như dưới đây (mà các tệp của bạn có)
deb http://archive.ubuntu.com/ubuntu precise main universe
tương đương với hai dòng này
deb http://archive.ubuntu.com/ubuntu precise main
deb http://archive.ubuntu.com/ubuntu precise universe
Bởi vì, bạn đang nhân đôi vũ trụ hai lần, do đó sẽ có lỗi cho bản sao đó. Một lỗi sẽ được đưa ra cho mỗi bản sao được tìm thấy.
Giải pháp:
Sau khi phân tích sources.list
tệp của bạn , tôi thấy rằng, Đây là một tệp cơ bản được Ubuntu cung cấp theo mặc định. Bạn có thể xây dựng một tệp mặc định theo quy trình:
Mở một thiết bị đầu cuối và đầu tiên đổi tên sources.list
tập tin hiện có thành sources.list.bak
tập tin. (chúng ta có thể loại bỏ nó một cách an toàn, nhưng thận trọng là tốt).
sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
Sau đó mở software-properties-gtk
để xây dựng một cái mới. Nhập lệnh dưới đây trong một thiết bị đầu cuối hoặc trong dấu nhắc lệnh dash bằng cách nhấn Alt+F2
software-properties-gtk
Lưu ý, đối với Ubuntu phiên bản 11.10 trở về trước, bạn phải sử dụng gksu
trước software-properties-gtk
lệnh
Sau khi cửa sổ mở,
- Chọn tất cả bốn loại trong tab Phần mềm Ubuntu
- Chọn chính xác-an ninh , chính xác cập nhật và chính xác-backports loại trong cập nhật tab.
- Chọn đối tác Canonical và danh mục Độc lập từ tab Phần mềm khác .
Đó là nó. Bây giờ bạn có một sources.list
tập tin mặc định mà không có lỗi. So sánh tệp này với tệp trước, nếu bạn muốn.
Cập nhật để đối phó với sources.list.d
các tập tin của dir
Đôi khi một mục trùng lặp có thể nằm trong một tệp trong /etc/apt/sources.list.d
thư mục, cũng được APT sử dụng. Vì vậy, bạn nên xem thư mục đó và xem liệu có bất kỳ bản sao nào trong các tệp đó không. Không cần thiết cho các bản sao trong cùng một tệp.
Ví dụ trường hợp:
Một người dùng đã có thông báo lỗi này hiển thị trong khi làm sudo apt-get update
.
W: Duplicate sources.list entry http://dl.google.com/linux/chrome/deb/ stable/main amd64 Packages (/var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_main_binary-amd64_Packages)
W: Duplicate sources.list entry http://dl.google.com/linux/chrome/deb/ stable/main i386 Packages (/var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_main_binary-i386_Packages)
W: You may want to run apt-get update to correct these problems
Nhưng không có mục nào http://dl.google.com
trong /etc/apt/sources.list
tập tin chính . Nhìn vào /etc/apt/sources.list.d/
thư mục chúng tôi tìm thấy những tập tin này:
đầu ra của ls /etc/apt/sources.list.d/
:
aims-sagemath-precise.list
aims-sagemath-precise.list.save
dropbox.list
dropbox.list.save
fossfreedom-packagefixes-precise.list
fossfreedom-packagefixes-precise.list.save
google-chrome.list
google-chrome.list.save
google.list
google.list.save
sagemath-monolithic-precise.list
sagemath-monolithic-precise.list.save
Các tập tin google-chrome.list
và google.list
là ứng cử viên tốt để chứa các bản sao. Vì vậy, kiểm tra nội dung của cả hai tập tin là cần thiết.
Đầu ra của cat /etc/apt/sources.list.d/google-chrome.list
:
deb http://dl.google.com/linux/chrome/deb/ stable main
và của cat /etc/apt/sources.list.d/google.list
deb http://dl.google.com/linux/chrome/deb/ stable main
Vì vậy, có một mục trùng lặp trong các nguồn của Apt. Vì google-chrome.list
chỉ chứa một dòng apt và nó cũng được liệt kê trong google.list
tệp, chúng tôi có thể xóa tệp này một cách an toàn bằng lệnh
sudo rm /etc/apt/sources.list.d/google-chrome.list
Sau đó, vấn đề đã được giải quyết.