Pertanyaan Bagaimana cara memperbaiki "W: Duplicate sources.list entry"?


Saya terus menerima peringatan ini setiap kali saya mencoba untuk berlari sudo apt-get update.

W: Duplicate sources.list entry http://archive.ubuntu.com/ubuntu/ precise-updates/main i386 Packages (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise-updates_main_binary-i386_Packages)
W: You may want to run apt-get update to correct these problems

Di bawah ini adalah output dari /etc/apt/sources.list mengajukan:

deb http://archive.ubuntu.com/ubuntu precise main restricted
deb-src http://archive.ubuntu.com/ubuntu precise main restricted

deb http://archive.ubuntu.com/ubuntu precise-updates main restricted
deb-src http://archive.ubuntu.com/ubuntu precise-updates main restricted

deb http://archive.ubuntu.com/ubuntu precise universe
deb-src http://archive.ubuntu.com/ubuntu precise universe
deb http://archive.ubuntu.com/ubuntu precise-updates universe
deb-src http://archive.ubuntu.com/ubuntu precise-updates universe

deb http://archive.ubuntu.com/ubuntu precise multiverse
deb-src http://archive.ubuntu.com/ubuntu precise multiverse
deb http://archive.ubuntu.com/ubuntu precise-updates multiverse
deb-src http://archive.ubuntu.com/ubuntu precise-updates multiverse

deb http://archive.ubuntu.com/ubuntu precise-security main restricted
deb-src http://archive.ubuntu.com/ubuntu precise-security main restricted
deb http://archive.ubuntu.com/ubuntu precise-security universe
deb-src http://archive.ubuntu.com/ubuntu precise-security universe
deb http://archive.ubuntu.com/ubuntu precise-security multiverse
deb-src http://archive.ubuntu.com/ubuntu precise-security multiverse

Bagaimana saya memperbaikinya?


186
2018-04-10 06:31


asal




Jawaban:


Daftar sources.list Anda benar-benar memiliki duplikat.

Pertama Mari kita lihat bentuk yang benar dari garis atau garis sumber repositori:

Format baris sumber repositori yang benar adalah

<type of repository>  <location>  <dist-name> <components> 

Misalnya, baris repo bisa seperti ini

  deb http://archive.ubuntu.com/ubuntu precise main

Di sini, artinya, repositori adalah untuk paket biner, yang di-hosting di http://archive.ubuntu.com/ubuntu dan repositori ini adalah untuk Ubuntu yang tepat (12.04) dan repositori ini berisi komponen utama (perangkat lunak yang didukung secara resmi oleh Canonical).

  • Mengetik: Jenisnya bisa deb dan deb-src. deb berarti repositori biner di mana deb-src berarti repositori sumber

  • Lokasi:  http://archive.ubuntu.com/ubuntu lokasi repositori.

  • Dist-name: Nama distribusi rilis Ubuntu. Untuk Ubuntu 12.04 itu precise, untuk 11.10 itu oneiric.
    Anda dapat mengunjungi Wiki Ubuntu untuk melihat pembaruan daftar rilis Ubuntu dan nama kode mereka.

  • Komponen: Itu bisa main, universe, multiverse dan restricted. Kata-kata ini menunjukkan tingkat dukungan untuk paket dan status lisensi.

Lihat halaman ini untuk informasi lebih lanjut.

Harap perhatikan bahwa, Anda dapat menambahkan satu atau lebih komponen dalam satu baris, jadi "utama", "semesta", "terbatas" dan "multiverse" dapat berada dalam satu baris. Perhatikan juga, Meskipun Anda menambahkan lebih dari satu komponen dalam satu baris, sistem APT menganggapnya sebagai baris terpisah yang hanya berisi satu komponen.

Jadi, Jika Anda sources.list memiliki garis seperti ini

deb http://archive.ubuntu.com/ubuntu precise universe

Maka tidak dapat memiliki baris lain seperti di bawah ini (yang file Anda miliki)

deb http://archive.ubuntu.com/ubuntu precise main universe

yang setara dengan dua garis ini

deb http://archive.ubuntu.com/ubuntu precise main
deb http://archive.ubuntu.com/ubuntu precise universe

Karena, Anda menduplikasi alam semesta dua kali, jadi akan ada kesalahan untuk duplikat itu. Kesalahan akan diberikan untuk setiap duplikat yang ditemukan.

Larutan:

Setelah menganalisa Anda sources.list file, saya menemukan bahwa, Ini adalah salah satu dasar yang disediakan oleh Ubuntu secara default. Anda dapat membuat file default mengikuti prosedur:

  1. Buka terminal dan pertama ganti nama yang ada sources.list file ke sources.list.bak mengajukan. (kita dapat menghapusnya dengan aman, tetapi hati-hati baik).

     sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
    
  2. Lalu buka software-properties-gtk untuk membangun yang baru. Ketik perintah di bawah ini di terminal atau di prompt perintah dash dengan menekan Alt+F2

    software-properties-gtk
    

    Perhatikan, untuk Ubuntu versi 11.10 atau sebelumnya yang harus Anda gunakan gksu sebelum software-properties-gtk perintah

  3. Setelah jendela terbuka,

    • Pilih semua empat kategori dalam Perangkat Lunak Ubuntu tab
    • Memilih keamanan yang tepat, pembaruan tepat dan tepat-backports kategori dalam Pembaruan tab.
    • Memilih Mitra kanonik dan Independen kategori dari Perangkat lunak lainnya tab.

Itu dia. Anda sekarang memiliki default sources.listfile tanpa kesalahan. Bandingkan file ini dengan yang sebelumnya, jika Anda mau.


Perbarui untuk ditangani sources.list.d file dir

Terkadang entri duplikat bisa berada dalam file di /etc/apt/sources.list.d direktori, yang juga digunakan oleh APT. Jadi, Anda harus melihat direktori itu dan melihat apakah ada duplikat dalam file tersebut. Tidak perlu duplikat berada di file yang sama.

Contoh kasus:

Seorang pengguna telah menampilkan pesan kesalahan ini saat melakukan 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

Tapi tidak ada entri http://dl.google.com di utama /etc/apt/sources.list mengajukan. Melihat ke /etc/apt/sources.list.d/ direktori kami menemukan file-file ini:

output dari 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

File-file itu google-chrome.list dan google.list adalah kandidat yang baik karena mengandung duplikat. Jadi, memeriksa isi dari kedua file itu diperlukan.

Output dari cat /etc/apt/sources.list.d/google-chrome.list:

deb http://dl.google.com/linux/chrome/deb/ stable main  

dan dari cat /etc/apt/sources.list.d/google.list

deb http://dl.google.com/linux/chrome/deb/ stable main

Jadi, ada entri duplikat di sumber-sumber Apt. Sejak google-chrome.list hanya berisi satu baris yang tepat dan itu juga terdaftar google.list file kita dapat dengan aman menghapus file ini dengan perintah

sudo rm /etc/apt/sources.list.d/google-chrome.list

Kemudian masalah itu terpecahkan.


225
2017-09-05 17:33



+1 Ini adalah jawaban yang bagus. Memperbaiki masalah dan sepenuhnya menjelaskan mengapa hal itu terjadi. - akmad
Apa yang saya lakukan untuk menyebabkan diri saya memiliki entri duplikat di sources.list.d saya? - Seanny123
Terima kasih banyak. Saya bertanya-tanya jam berapa duplikat terjadi. Akhirnya Anda menunjukkan sources.list.d - Isura Manchanayake
Jawaban yang bagus dan menyeluruh. Di dalam Anda Pembaruan untuk berurusan dengan file-file sources.list.d dir Anda menjelaskan mana file / baris yang memberikan duplikat. Bisakah Anda menjelaskan yang sama adalah 6 pasang baris (karena Anda mengatakan "file Anda memiliki 6 duplikat di sana") di OP yang memberikan duplikat? - sancho.s
Petunjuk untuk memeriksa sumber saya. List.d adalah yang membantu saya menyelesaikan masalah ini. - lcarsos


Untuk Ubuntu 12.04 

Secara grafis:

tekan Alt + F2 dan tempel software-properties-gtk (atau Anda dapat membuka "Pusat Software" kemudian pergi ke "Edit"> "Sumber Perangkat Lunak"). Pergi ke tab "Perangkat Lunak Lain", pilih entri duplikat dan tekan tombol "Hapus".

enter image description here


Jika Anda memerlukan opsi baris perintah, ini dia:

cat /etc/apt/sources.list | perl -ne '$H{$_}++ or print' > /tmp/sources.list && sudo mv /tmp/sources.list /etc/apt/sources.list  

Perintah melakukan ini:

cat membaca file dan meneruskan isinya perl yang menghilangkan garis duplikat. Hasilnya kemudian disimpan > dalam file sementara yang kemudian dipindahkan untuk menggantikan yang asli /etc/apt/sources.list mengajukan.


77
2018-05-04 22:27



Skrip Anda bekerja dengan sempurna. - Lucio
Hanya bagaimana memperbaikinya, tanpa kebingungan dan semua detail yang terlalu dalam. Terima kasih! - P.M
Itu benar-benar berhasil! Bisa tidak, untuk beberapa alasan, instal git pada 12.04 baik. Alih-alih menghapus, saya hanya memeriksa duplikat "mitra Canonical". - davidkonrad
Saya menjalankan satu-liner, tapi sudo apt-get update masih mengeluh tentang entri duplikat seolah-olah tidak ada yang berubah. Jika itu penting, saya ada di 12.04 (khusus, OS Luna dasar). - waldyrious
Itu cat tidak berguna dan mencegah Anda menggunakannya sudo perl -i - tripleee


Seberapa buruk entri duplikat di sources.list?

Saya tidak tahu betapa buruknya itu, tetapi saya tidak suka sudo apt-get pembaruan menunjukkan saya entri duplikat.

Ngomong-ngomong bukan itu buruk, itu hanya menunjukkan Anda bahwa Anda memiliki entri duplikat.

SourcesList

File sources.list adalah faktor kunci dalam menambah atau memutakhirkan aplikasi ke instalasi Ubuntu Anda. Ini juga digunakan oleh sistem Anda untuk pembaruan sistem. File pada dasarnya adalah peta jalan untuk sistem Anda untuk mengetahui di mana ia dapat mengunduh program untuk instalasi atau upgrade.

Ini seperti pembaruan Windows

Anda dapat menghapus entri duplikat dalam beberapa langkah mudah dengan Manajer PPA Y

 sudo add-apt-repository ppa:webupd8team/y-ppa-manager -y
 sudo apt-get update
 sudo apt-get install y-ppa-manager -y

Buka y-ppa-manager bentuk Berlari

Masukkan Kata Sandi Admin Anda

enter image description here

Klik Ganda Pada Lanjutan

enter image description here

Pindai & Hapus Duplikat PPA & Klik Ok

enter image description here

Ini akan memakan waktu lama (1 atau 2 Mints) Untuk Memindai & Menghapus Duplikat PPA


22
2018-05-08 05:36



Dalam kasus saya, Y PPA terus mengatakan tidak ditemukan duplikat. Saya membuat cadangan dari source.list menghapusnya, dan menjalankan sudo apt-get update untuk membuat ulang daftar sumber (ubuntu 12.04). Ini berhasil bagi saya. - michel.iamit
Bekerja untuk saya di Mint 17, terima kasih! - spences10
Bekerja untuk saya di ubuntu 14.04..Terima kasih teman .. :) - Rahul Singh
bekerja seperti pesona - vector
Dalam kasus saya di 14.04 itu terus berkata Tidak Ditemukan Duplikat - Muhammad Omer Aslam


Repositori mitra diduplikasi di dalam /etc/apt/sources.list dan /etc/apt/sources.list.d/precise-partner.list.

Hapus saja file "tepat-mitra" sebagai repositori mitra sudah ada di sources.list.

sudo rm /etc/apt/sources.list.d/precise-partner.*

16
2017-09-01 19:20



Saya mengerti rm: cannot remove '/etc/apt/sources.list.d/precise-partner.*': No such file or directory - Dennis
Mencoba sudo rm /etc/apt/sources.list.d/*partner*. Periksa juga file /etc/apt/sources.list Anda, cari baris duplikat. - Eric Carvalho
Tidak beruntung, saya tidak memiliki file dengan "mitra" dalam nama di direktori itu. Dan /etc/apt/sources.list tidak berisi duplikat menurut uniq. - Dennis


Buat salinan cadangan dari sources.list Anda:

sudo cp /etc/apt/sources.list{,.backup}

Sekarang hapus yang asli dan perbarui:

sudo rm /etc/apt/sources.list && sudo apt-get update

10
2017-07-04 05:16



Bagaimana dia bisa memperbarui tanpa sources.list mengajukan? - Anwar
Ini akan terisi kembali. =) - wojox
@wojox Berhasil, terima kasih. - quantme
punyaku tidak terisi kembali - conman253
Kembalikan ke yang Anda cadangkan - wojox


Saya memiliki masalah yang sama, membuka sumber perangkat lunak. "Mitra Canonical" yang tidak dicentang. Konflik berada di antara "Mitra Kanonik" dan "Mitra kanonis Ditambahkan oleh Pusat perangkat lunak"


8
2018-04-11 05:11





Jika Anda tidak bisa memahaminya di Anda source.list, lalu lakukan ini:

  1. Klik kiri pada ikon pengaturan (di sudut paling atas layar Anda) dan pilih Pengaturan Sistem.
  2. Klik Sumber Perangkat Lunak dan pindah ke Perangkat Lunak Lain.
  3. Hapus centang salah satu 'Canonical Partners (Source Code) -software yang dikemas oleh Canonical untuk file mitra mereka dan salah satu' Canonical Partners-Software yang dikemas oleh Canonical untuk file mitra mereka juga dan klik Tutup untuk pergi.
  4. Tekan secara bersamaan CTRL + ALT + T kunci untuk membuka terminal dan mengetik sudo apt-get update.

7
2018-04-11 06:15



Saya mengikuti saran Anda, tetapi saya masih menerima kesalahan ini. - hsinxh
Tolong, posting gambar 'Sumber Perangkat Lunak' Anda di sini untuk mengetahui pelakunya. - all4naija
Silakan, posting gambar 'Perangkat Lunak Lain Anda' di sini. - all4naija