Je cherche la meilleure méthode pour restaurer /etc/apt/sources.list
par défaut à partir de la ligne de commande.
N'y a-t-il aucun moyen de référencer le code source du paquet qui génère ce fichier ou quelque chose comme ça? Je souhaite un moyen fiable et indépendant de la version de restaurer ce fichier.
Avant de marquer ceci comme un doublon, notez que j'ai déjà examiné cette question . Cela ne s'applique que si l'interface graphique d'Ubuntu est disponible. Cette question est spécifique à la ligne de commande.
J'ai également passé en revue cette question où la solution acceptée consiste à coller le contenu de leur fichier sources.list
. Ce n'est pas un moyen approprié de restaurer le fichier car les intentions de la personne fournissant le contenu du fichier ne peuvent pas être vérifiées et le fichier peut être modifié avec les nouvelles versions.
J'ai jeté un œil sur le générateur sur simplelinux.ch , mais ce n’est pas de la part d’Ubuntu et je n’envisage donc pas de l'utiliser.
Je ne suis pas sûr de ce que tu veux, mais:
<cctld>.archive.ubuntu.com
, où le code court à deux caractères est le = domaine de premier niveau de code de pays . Vous pouvez trouver des miroirs supplémentaires avec leur statut sur Launchpad .lsb_release -sc
pour le savoir, et c'est le premier mot du joli nom de la version en minuscule (trusty
pour Trusty Tahr, par exemple).<codename>
, <codename>-security
, <codename>-updates
, <codename>-backports
et <codename>-proposed
. Le premier est nécessaire car il s'agit de la base, le second est hautement recommandé car il contient des correctifs de sécurité, le quatrième uniquement si vous avez besoin d'un paquet transféré depuis une version plus récente et le cinquième uniquement si un développeur vous demande de l'activer pour tester une éventuelle réparer.main
, multiverse
, universe
et restricted
( Quelle est la différence entre multivers, univers, restreint et principal? )Ainsi, vous pouvez toujours créer un sources.list
sûr qui contient uniquement:
deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted
deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted
Si vous voulez une commande pour faire ceci:
printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list
En plus de la liste Launchpad, la liste fournie par le programme Sources de logiciels provient de /usr/share/python-apt/templates/Ubuntu.mirrors
, qui provient du package python-apt-common
. Ce package est uniquement une dépendance indirecte Suggère de apt
, de sorte qu'il ne peut pas être installé par défaut sur un serveur.
Si vous comprenez ce que chaque ligne représente dans /etc/apt/sources.list
, vous pouvez générer votre propre liste. Par exemple, une ligne dans mon sources.list
est,
deb http://archive.ubuntu.com/ubuntu/ trusty main
Il comporte 4 sections:
deb
ici, ce qui signifie qu'il s'agit d'un référentiel de tous les packages binaires. La seule autre valeur possible est deb-src
, ce qui signifie qu'il s'agit d'un référentiel de codes sources.Section 3: Il contient le nom de code (et le nom de canal) de la version que vous utilisez, dans ce cas trusty
qui correspond au nom de code de ma version Ubuntu (14.04 LTS). vous pouvez trouver le vôtre par lsb_release -sc
. Par exemple, si vous utilisez 12.04, le nom de code sera "précis". Maintenant, déclarez d’autres canaux, par exemple pour déclarer le canal de sécurité, vous devez utiliser trusty-security
.
Section 4: Cette section contient les "noms de section" du référentiel. On utilise généralement 4 noms de section: main
___, restricted
_, universe
_, multiverse
_. Vous pouvez mettre tous les noms de section dans la même ligne de déclaration d'un référentiel ou utiliser différentes lignes pour chacune des sections, mais il ne doit pas y avoir d'entrée en double. Si vous lisez le /etc/apt/sources.list
, vous verrez alors la description des packages que chacune de ces sections contient.