Debian 8.7で冗長ソースリストを削除する方法

Debian 8.7で冗長ソースリストを削除する方法

チュートリアルに従って#letsencryptをインストールした後、Debian 8.7を実行しています。デジタル海。 OSを更新できなくなり、実行するとsudo apt-get update次のエラーが発生します。

W: Duplicate sources.list entry ...ftp.debian.org/debian/ jessie-backports/main amd64 Packages (/var/lib/apt/lists/ftp.debian.org_debian_dists_jessie-backports_main_binary-amd64_Packages)
W: You may want to run apt-get update to correct these problems</code>

それ以外の場合は、ソースの一覧を表示するために次のコードを実行します。cat /etc/apt/sources.list /etc/apt/sources.list.d/*

次の結果を表示

deb http://httpredir.debian.org/debian/ jessie main
deb-src http://httpredir.debian.org/debian/ jessie main
deb http://security.debian.org/ jessie/updates main
deb-src http://security.debian.org/ jessie/updates main
deb http://httpredir.debian.org/debian/ jessie-updates main
deb-src http://httpredir.debian.org/debian/ jessie-updates main
deb http://http.debian.net/debian jessie main
deb-src http://http.debian.net/debian jessie main
deb http://ftp.debian.org/debian jessie-backports main
deb http://httpredir.debian.org/debian/ jessie-backports main
deb-src http://httpredir.debian.org/debian/ jessie-backports main
deb http://packages.cloud.google.com/apt cloud-sdk-jessie main
deb http://packages.cloud.google.com/apt google-cloud-compute-jessie main
deb http://packages.cloud.google.com/apt google-cloud-packages-archive-keyring-jessie main
deb http://packages.cloud.google.com/apt cloud-sdk-jessie main
deb http://packages.cloud.google.com/apt google-cloud-compute-jessie main
deb http://packages.cloud.google.com/apt google-cloud-packages-archive-keyring-jessie main
deb http://ftp.debian.org/debian jessie-backports main
deb http://ftp.debian.org/debian jessie-backports main

どのようなリソースを削除し、どのコードやプロセスを介して削除する必要がありますか?私はこれらすべてについてよく知らず、オンラインで見つけた指示に従い、すべてのことをしました。

答え1

重複したソースのリストはです...ftp.debian.org/debian/ jessie-backports/main.。削除する必要があります。grep jessie-backports /etc/apt/sources.list.d/*と を実行しgrep jessie-backports /etc/apt/sources.list、どのファイルが存在するかを確認し、テキストエディタ(nanoなど)で開いて削除し、apt-get updateaptのキャッシュをフラッシュします。

答え2

あなたが言及したDigitalOcean文書によると、私のお金は次のとおりです。

rm -f /etc/apt/sources.list.d/backports.list
apt-get update

jessie-backportsご覧のとおり、出力には2つありますcat

答え3

システムがPythonを実行できる場合。次のpython3スクリプトを使用して独自のファイルコピーを作成できます。その後、古い「sources.list」を新しいファイルに置き換えることができます。

import os

l = set()
# remove duplicates by adding all the lines to a set
with open("/etc/apt/sources.list") as f:
    for line in f:
        l.add(line)
# write the new lines to a file in your home folder
with open("/home/brianbrix/sources.list", "w") as f:
    for line in l:
        f.write(line)
        f.write("\n")

# after that you can replace the sources file wwith the new one which has no duplicates

関連情報