Resources.listinizde yinelenen girişler var.
Öncelikle bir depo satırının veya kaynak satırın doğru biçimini görelim:
Depo kaynak satırının doğru formatı
<type of repository> <location> <dist-name> <components>
Örneğin, bir repo satırı bunun gibi olabilir.
deb http://archive.ubuntu.com/ubuntu precise main
Burada, depo, http://archive.ubuntu.com/ubuntu'da barındırılan ikili paketler içindir ve bu depo Ubuntu kesin (12.04) içindir ve bu depo ana (içerir. Kanonik) bileşen.
Tür: Türdeb
ve olabilir deb-src
. bir kaynak deposu anlamına deb
gelir bir ikili depo deb-src
anlamına gelir
Yer: http://archive.ubuntu.com/ubuntu
havuzun yeri.
Dist-name: Ubuntu sürümünün dağıtım adı. Ubuntu 12.04 için, precise
11.10 için oneiric
. Ubuntu sürümlerinin
güncellenmiş bir listesini ve kod adlarını görüntülemek için Ubuntu Wiki'sini ziyaret edebilirsiniz .
Bileşen: Olabilir main
, universe
, multiverse
ve restricted
. Bu kelimeler, paketler için destek düzeyini ve lisans durumunu gösterir.
Daha fazla bilgi için bu sayfaya bakın .
Lütfen bir satıra bir veya daha fazla bileşen ekleyebileceğinizi unutmayın; "ana", "evren", "sınırlı" ve "çoklu evren" tek bir satırda olabilir. Ayrıca, tek bir satıra birden fazla bileşen eklemenize rağmen, APT sistemi bunları yalnızca bir bileşen içeren ayrı bir satır olarak kabul eder.
Öyleyse, sources.list
böyle bir çizginiz varsa
deb http://archive.ubuntu.com/ubuntu precise universe
O zaman aşağıdaki gibi başka bir satırı olamaz (dosyalarınızın olduğu)
deb http://archive.ubuntu.com/ubuntu precise main universe
bu iki çizginin karşılığıdır
deb http://archive.ubuntu.com/ubuntu precise main
deb http://archive.ubuntu.com/ubuntu precise universe
Çünkü, evreni iki kez kopyalıyorsunuz, bu yüzden bu kopya için bir hata olacak. Bulunan her kopya için bir hata verilecektir.
Çözüm:
sources.list
Dosyanızı analiz ettikten sonra , varsayılan olarak Ubuntu tarafından sağlanan temel bir dosya olduğunu gördüm. Prosedürü izleyerek varsayılan bir dosya oluşturabilirsiniz:
Bir terminal açın ve önce mevcut sources.list
dosyayı yeniden adlandırın sources.list.bak
. (Bunu güvenle kaldırabiliriz, ancak dikkatli olmanız iyidir).
sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
Ardından software-properties-gtk
yeni bir tane oluşturmak için açın . Aşağıdaki komutu Alt+ veya tuşlarına basarak bir terminale veya kısa çizgi komut istemine yazınF2
software-properties-gtk
Ubuntu sürüm 11.10 veya önceki sürümler gksu
için software-properties-gtk
komuttan önce kullanmanız gerektiğini unutmayın.
Pencere açıldıktan sonra,
- Ubuntu Yazılım sekmesinde dört kategorinin tümünü seçin
- Seç kesin güvenlikli , hassas güncellemeler ve hassas-backports içinde kategorisini Güncellemeler sekmesi.
- Diğer yazılım sekmesinden Kanonik ortak ve Bağımsız kategorisini seçin .
Bu kadar. Artık sources.list
hatasız bir varsayılan dosyaya sahipsiniz . İsterseniz bu dosyayı öncekiyle karşılaştırın.
sources.list.d
Dir dosyaları ile başa çıkmak için güncelleme
Bazen yinelenen bir giriş, /etc/apt/sources.list.d
APT tarafından da kullanılan , dizindeki bir dosyada olabilir . Öyleyse, bu dizine bakmalı ve bu dosyalarda herhangi bir kopya olup olmadığını görmelisiniz. Kopyaların aynı dosyada olması gerekli değildir.
Örnek durum:
Bir kullanıcı bunu yaparken gösteren bir hata mesajı vardı 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
Ancak http://dl.google.com
ana /etc/apt/sources.list
dosyada hiçbir girdi yoktu . /etc/apt/sources.list.d/
Dizine bakarak şu dosyaları bulduk:
çıktısı 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
Dosyalar google-chrome.list
ve google.list
kopya içerenler için iyi adaylardı. Bu nedenle, her iki dosyanın içeriğini kontrol etmek gerekliydi.
Çıktı cat /etc/apt/sources.list.d/google-chrome.list
:
deb http://dl.google.com/linux/chrome/deb/ stable main
ve cat /etc/apt/sources.list.d/google.list
deb http://dl.google.com/linux/chrome/deb/ stable main
Yani, Apt kaynaklarında yinelenen girişler vardı. Yana google-chrome.list
sadece tek bir apt satır içerir ve aynı zamanda içinde yer aldı google.list
dosyası güvenle komutuyla bu dosyayı kaldırabilirsiniz
sudo rm /etc/apt/sources.list.d/google-chrome.list
Sonra sorun çözüldü.