Müssen Dateien unter /etc/apt/sources.list.d die Erweiterung '.list' haben?

41

In /etc/apt/sources.list.dIch habe mehrere Dateien für benutzerdefinierte Repositories. Alle Namen dieser Dateien enden mit .list.

Ist es obligatorisch, dass Dateien in diesem Ordner mit dieser Erweiterung enden? Wenn ja, wo steht diese Information?

Bessarabov
quelle

Antworten:

49

Ja, die Namen der Dateien in /etc/sources.list.denden müssen sich .listfür Zeilen in den Dateien als Angabe Softwarequellen getroffen werden , die verwendet werden sollen. Andernfalls haben die Dateien möglicherweise eine andere Bedeutung.

sources.list

Von man sources.list(1):

NAME sources.list - Paketressourcenliste für APT

BESCHREIBUNG

Die Paketressourcenliste wird verwendet, um Archive des auf dem System verwendeten Paketverteilungssystems zu lokalisieren. Zu diesem Zeitpunkt dokumentiert diese Handbuchseite nur das vom Debian GNU / Linux-System verwendete Paketierungssystem. Diese Steuerdatei heißt /etc/apt/sources.list.

Die Quellenliste unterstützt eine beliebige Anzahl aktiver Quellen und verschiedene Quellmedien. In der Datei wird eine Quelle pro Zeile aufgeführt, wobei die am meisten bevorzugte Quelle zuerst aufgeführt wird. Das Format jeder Zeile lautet: type uri args Das erste Element, type, bestimmt das Format für args. URI (Universal Resource Identifier) ​​ist eine Obermenge der spezifischeren und bekannteren URL (Universal Resource Locator). Der Rest der Zeile kann mit einem # als Kommentar markiert werden.

SOURCES.LIST.D

Das Verzeichnis /etc/apt/sources.list.d bietet eine Möglichkeit, sources.list-Einträge in separaten Dateien hinzuzufügen. Das Format ist dasselbe wie für die reguläre Datei sources.list. Dateinamen müssen mit .list enden und dürfen nur Buchstaben (az und AZ), Ziffern (0-9), Unterstriche (_), Bindestriche (-) und Punkte (.) Enthalten. Andernfalls gibt APT einen Hinweis aus, dass eine Datei ignoriert wurde, wenn die Datei nicht mit einem Muster in der Konfigurationsliste "Dir :: Ignore-Files-Silently" übereinstimmt. In diesem Fall wird sie unbemerkt ignoriert.

sources.list.save

Bei den .list.saveDateien handelt es sich um Arbeits- / Sicherungsdateien:

Links:

  1. http://manpages.ubuntu.com/
user26687
quelle
7

Als Ergänzung zur Antwort von user26687:

Ja, jede Datei /etc/apt/sources.list.dmuss eine .listErweiterung haben. Andernfalls aptwird eine Warnmeldung ausgegeben und die Datei ignoriert, es sei denn, die Datei entspricht einem Muster in der Dir::Ignore-Files-SilentlyOption von apt .

Die Software SourcesGUI erstellt .list.savefür jede von .list ihr verwaltete Datei eine Art "Backup" -Datei. Der erwähnte LP-Fehler 611925 stammt aus dem Jahr 2010, als apt .saveDateien noch nicht unbemerkt ignorierte und als solcher viele Warnungen generierte.

Dieses Verhalten wurde 0.8.3ubuntu12010 in der apt-Version für den LP-Fehler 631770 behoben :

apt (0.8.3ubuntu1) maverick; urgency=low

  * merged fixes from debian-sid
  * debian/rules:
    - put ubuntu-archive.gpg back into the package (LP: #620576)
  * apt-pkg/init.cc:
    - ignore ".distUpgrade" and ".save" files in sources.list.d
      (LP: #631770)

Seitdem werden solche Dateien aptstandardmäßig stillschweigend ignoriert . Sie können alle diese Muster sehen mit:

apt-config dump | grep Dir::Ignore-Files-Silently::

So Dateien wie .save, .bak, .origunter anderem werden auch akzeptiert (und ignoriert) in/etc/apt/sources.list.d

MestreLion
quelle
Vielen Dank für eine so ausführliche Antwort. Fügte ein paar Leckerbissen hinzu, auf die ich noch nicht gestoßen war.
SRDC
0

Sie haben das Problem, das Sie haben, nicht erwähnt. Zur Beantwortung Ihrer Anfrage muss jedoch /etc/apt/sources.list.d/für jedes Repository eine Datei vorhanden sein , und häufig sind es zwei. Die erforderliche Datei endet mit *.listund die optionale mit *.list.save(diese Datei wird von einigen GUI-Repository-Managern automatisch generiert). Die vom Betriebssystem verwaltete Primärliste ist /etc/apt/sources.listund Hilfslisten können hinzugefügt werden /etc/apt/sources.list.d/your-custom-list-here.list.

Atul Kakrana
quelle
1
Ich löse kein bestimmtes Problem, sondern lerne nur, wie Repositories in Ubuntu funktionieren. Ich verstehe nicht, warum es 2 Dateien (mit dem genauen Inhalt) geben soll und warum man sie nicht verwendet, um Repos hinzuzufügen.
bessarabov
3
Etwas irreführende Antwort in mehrfacher Hinsicht: Erstens sind .list.saveDateien nicht erforderlich, es handelt sich um Sicherungsdateien, die von der Software Sourcesgrafischen Benutzeroberfläche erstellt wurden. Nur die .listDatei wird vom aptSystem verwendet. Zweitens Repositories können hinzugefügt werden /etc/apt/sources.list, aber es wird empfohlen , dies nicht zu tun (die OS Griffe it), so admins und Pakete tatsächlich ermutigt zu spielen/etc/apt/sources.list.d
MestreLion
Für jeden Leser ... Die Antwort wurde bearbeitet und spiegelt die Punkte wider, die @MestreLion angesprochen hat.
SRDC