it-swarm.com.de

"apt-get update" schlägt mit dem Fehler "Fehlerhafter Eintrag in Listendatei" fehl

Nachdem ich mich als root angemeldet habe, gebe ich apt-get update ein und es gibt mir:

E: Malformed entry 51 in list file /etc/apt/sources.list (URI parse)
E: Malformed entry 1 in list file /etc/apt/sources.list.d/docker.list (Component)
E: The list of sources could not be read.

Was stimmt damit nicht?

Ich sehe viele verwandte Antworten und gebe den Code ein: Sudo -H gedit /etc/apt/sources.list

dann zeigt es:

# deb cdrom:[Ubuntu 16.10 _Yakkety Yak_ - Release AMD64 (20161012.2)]/ yakkety main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://us.archive.ubuntu.com/ubuntu/ yakkety main restricted
# deb-src http://us.archive.ubuntu.com/ubuntu/ yakkety main restricted

## Major bug fix updates produced after the final release of the distribution.
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-updates main restricted
# deb-src http://us.archive.ubuntu.com/ubuntu/ yakkety-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://us.archive.ubuntu.com/ubuntu/ yakkety universe
# deb-src http://us.archive.ubuntu.com/ubuntu/ yakkety universe
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-updates universe
# deb-src http://us.archive.ubuntu.com/ubuntu/ yakkety-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu 
## team, and may not be under a free licence. Please satisfy yourself as to 
## your rights to use the software. Also, please note that software in 
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://us.archive.ubuntu.com/ubuntu/ yakkety multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ yakkety multiverse
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-updates multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ yakkety-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://us.archive.ubuntu.com/ubuntu/ yakkety-backports main restricted universe multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ yakkety-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu yakkety partner
# deb-src http://archive.canonical.com/ubuntu yakkety partner

deb http://security.ubuntu.com/ubuntu yakkety-security main restricted
# deb-src http://security.ubuntu.com/ubuntu yakkety-security main restricted
deb http://security.ubuntu.com/ubuntu yakkety-security universe
# deb-src http://security.ubuntu.com/ubuntu yakkety-security universe
deb http://security.ubuntu.com/ubuntu yakkety-security multiverse
deb http yakkety main  
# deb-src http yakkety main
deb http://dl.openfoam.org/ubuntu yakkety main
# deb-src http://dl.openfoam.org/ubuntu yakkety main
# deb-src http://dl.openfoam.org/ubuntu yakkety main
# deb-src http://security.ubuntu.com/ubuntu yakkety-security multiverse

Bitte erkläre mir, wie ich diese fehlerhafte Zeile entfernen kann - Zeile 51 ist deb http yakkety main 6. vom Ende.

3
Draco

Zeile 51, "deb http yakkety main", ist kein Verweis auf ein Repository, und das Ubuntu-Repository "yakkety/main" ist bereits mit Zeile 5 verknüpft. Daher sollte Zeile 51 einfach entfernt werden. Zeile 52 ist ebenfalls eine auskommentierte fehlerhafte Zeile und sollte ebenfalls entfernt werden, um zukünftige Verwirrung zu vermeiden.

So entfernen Sie die Zeilen 51 und 52:

  • Führen Sie diesen Befehl sed -i.bak -e '51d; 52d;' /etc/apt/sources.list aus. Dadurch wird auch ein Backup mit dem Namen "/etc/apt/sources.list.bak" erstellt, für den Fall, dass es kaputt geht und Sie es später wiederherstellen möchten. Es sollte keine Ausgabe erzeugen, und Sie müssen den Befehl nur einmal ausführen.

OR

  • Öffnen Sie /etc/apt/sources.list in Ihrem bevorzugten Texteditor (stellen Sie sicher, dass Sie ihn mit Sudo ausführen. Beispiel: Sudo -H gedit /etc/apt/sources.list), löschen Sie die beiden Zeilen, speichern und schließen Sie die Datei.

Jetzt können Sie Sudo apt update ausführen und es sollte erfolgreich abgeschlossen werden.

4
Danyc0

Wahrscheinlich sollten Sie deb http yakkety main entfernen, da es sich nicht um ein Repo handelt (URL), um es zu entfernen, die sources.list -Datei mit Berechtigungen öffnen und sie einfach normal löschen, dann die Datei speichern und Sudo apt-get update ausführen.

Außerdem haben Sie den Inhalt nicht in /etc/apt/sources.list.d/docker.list gepostet, sondern müssen die erste Zeile in /etc/apt/sources.list.d/docker.list entfernen, da sich der Fehler darüber beschwert

Sichern Sie die Dateien

Sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

Sudo cp /etc/apt/sources.list.d/docker.list/ /etc/apt/sources.list.d/docker.list.bak

Öffnen Sie dann die Datei mit gedit Sudo gedit /etc/apt/sources.list und entfernen Sie die Zeile

Mach dasselbe mit docker.list, Sudo gedit /etc/apt/sources.list.d/docker.list

Speichern Sie dann die Dateien und legen Sie los.

3

Wie es im Fehler heißt. In Zeile 51:

deb http yakkety main 

kommentiere das aus.

1
Carl