Nous sommes une équipe distribuée, c'est pourquoi nos machines virtuelles utilisent la mirror://
configuration Ubuntu . Notre /etc/apt/sources.list
ressemble à ceci:
deb mirror://mirrors.ubuntu.com/mirrors.txt lucid main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt lucid-updates main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt lucid-backports main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt lucid-security main restricted universe multiverse
En soi, cela est assez étonnant et très utile pour les personnes qui travaillent dans différents endroits - moins de personnalisation locale , etc. nécessaire. Basculement en théorie.
Au quotidien, cette configuration échoue trop souvent. Je veux dire 2-3 fois cette semaine.
En ce moment , mirrors.ubuntu.com
retourne ftp.uni-bayreuth.de
comme mon miroir placard. Malheureusement, il semble être en baisse.
Cela dure depuis quelques heures et le miroir est hébergé par des bénévoles dans une université et aujourd'hui, étant un vendredi, mes espoirs sont bas que cela se corrige bientôt.
Tous parlent, mes questions sont:
- Quelqu'un l'utilise-t-il?
- Comment contournez-vous les temps d'arrêt? (ma solution rapide est un script shell)
- Comment puis-je aider à améliorer cette situation?
mirror:
méthode qui avait le plus de mises à jour dans votre fil. Mon problème est que chaque fois que le miroir le plus rapide tombe en panne, il n'y a pas de basculement et je suis bloqué.Réponses:
Personnellement, je pense que la meilleure façon de sélectionner les meilleurs miroirs de référentiels Ubuntu est d'utiliser la méthode GUI:
Maintenant, pour améliorer la situation décrite dans la question, vous devez définir certaines règles. Ces règles doivent agir
mirrors.ubuntu.com
. Je peux suggérer quelques règles comme suit:netselect
,apt-spy
ouapt-fast
Ensuite, pour voir comment vous pouvez contourner, je peux vous donner une méthode décrite étape par étape avec trois exemples de scripts bash. Le premier script utilise les miroirs du pays dans
mirrors.ubuntu.com/mirrors.txt
lequel vous vous trouvez actuellement (pour chaque pays, il existe un fichier texte avec des miroirs associés; voir http://mirrors.ubuntu.com/ ):mkdir -p bin
- cette commande créera unbin
répertoire dans votrehome
dossier si vous ne l'avez pas déjà.gedit ~/bin/change_sources.sh
- cela créera le nouveau fichierchange_sources.sh
dans gedit.ou quelque chose de similaire à ce qui peut être trouvé sur http://repogen.simplylinux.ch/ :
ou, un script utilisant
netselect
(téléchargez ici , installez les instructions ici ) comme l' explique izx très sympa dans cette réponse :chmod +x ~/bin/change_sources.sh
- pour accorder l'accès d'exécution au script.~/bin/change_sources.sh
. Cela vous donnera une erreur, car vous n'avez pas le droit de modifier/etc/apt/sources.list
. Alors, utilisezsudo ~/bin/change_sources.sh
sudo crontab -e
commande et ajoutez la ligne suivante:sudo crontab -l
.À partir de maintenant, le fichier sera modifié dynamiquement après avoir trouvé un changement d'adresse IP.
Ce n'est peut-être pas la meilleure solution, mais, à mon avis, une bonne solution peut être donnée de cette manière comme dans les scripts ci-dessus .
la source
apt-spy
train de coder un petit script en ce moment. Mettra à jour ici plus tard.J'apprécie tous les commentaires sur cette question, mais comme personne n'a trouvé de solution simple qui convienne à notre situation, j'ai décidé de résoudre le problème moi-même.
J'ai créé un outil (spécifiquement pour Ubuntu) que j'appelle
apt-spy2
.L'objectif principal de cet outil est de trouver rapidement un miroir qui fonctionne . Le fonctionnement est défini par le fait que le serveur miroir est disponible et (espérons-le :) à jour.
Je ne fais aucune hypothèse quant à savoir si le serveur sélectionné est nécessairement le plus proche et le plus rapide. Je ne fais pas de pings ou de trucs DNS GEO - mais jusqu'à présent, cela fonctionne quand quelque chose se casse.
Comment ça marche - en bref:
/etc/apt/sources.list
.Remarque: cela suppose que les gens jouent bien et mettent des miroirs supplémentaires (par exemple, des référentiels tiers
/etc/apt/sources.list.d
. Mais je suppose que cela signifie qu'il y a place à amélioration.Vous pouvez obtenir cet outil comme ceci:
$ [sudo] gem install apt-spy2
Le cli est livré avec
list
,check
,fix
ethelp
(avec des informations étendues sur la façon de l' utiliser).J'ai essayé de documenter autant que possible dans le fichier README du projet .
La version actuelle est très conservatrice
0.5.0
.Le code est open source et la licence est libérale. Et je prends toutes les contributions.
la source
Il y avait cette commande sur Debian 6.0.4:
Cela a fait le travail pour trouver automatiquement le prochain serveur disponible le plus proche et pour générer une nouvelle source.list
Dans Ubuntu, cette commande ne semble pas exister?
Il existe toujours dans Debian 7.0 Wheezy:
https://launchpad.net/debian/wheezy/+source/apt-spy/+copyright
Vous pouvez télécharger votre package * .deb ici:
http://packages.debian.org/sid/apt-spy
... toujours à la recherche des sources ...
Vous avez évidemment besoin de Debian-7.0-Installation pour obtenir le code source après avoir édité la liste des sources avec l'entrée:
Ensuite, après la mise à jour sudo apt-get, vous suceriez simplement le code avec:
la source
Peut-être que vous n'utilisez pas la solution que vous aimez, mais la mise en place d'un cache local pour les fichiers .deb devrait être idéale lorsque vous téléchargez plusieurs Mo de package (la plupart d'entre eux, je parie que c'est le même) et puisque vous téléchargez à partir du même serveur, vous pourrait vouloir sacrifier un PC pour faire le cache et rendre le serveur moins occupé.
Procédure
Vous devriez pouvoir installer
apt-cacher
une machine qui a beaucoup d'espace sur le disque dur (vous en auriez besoin). Vous pouvez le configurer en utilisant le guide du serveur Apt-cacher , mais faisons un résumé rapide.Installer
apt-cacher
sudo apt-get install apt-cacher apache2
/etc/default/apt-cacher
et définissez laautostart
valeur sur 1, afin que votre cache démarre lorsque la machine se met sous tension.sudo /etc/init.d/apache2 restart
http://ip-of.your.cache:3142/apt-cacher
./etc/apt-cacher/apt-cacher.conf
et recherchez la ligneallowed_hosts
. Vous pouvez définir des sous-réseaux comme192.168.0.0/24
ou juste*
pour tous les hôtesapt-spy
pour cela (cette commande peut prendre des heures car elle teste également la vitesse de chaque serveur).Chez vos clients, vous avez deux options:
sources.list
comme suit:deb http: //ip-of.your.cache: 3142 / the.server.you.like / ubuntu / lucid principal univers restreint multivers
Modifiez l'
ip-of.your.cache
adresse IP de votre cache etthe.server.you.like
le nom d'hôte du serveur que vous utiliserez. Vous pouvez utiliser plusieurs lignes./etc/apt/apt.conf.d/01proxy
et ajoutez la ligne:Acquérir :: http :: Proxy " http: //ip-of.your.cache: 3142 ";
la source
-d testing
sent Debian.Vous pouvez essayer de configurer votre propre miroir Ubuntu. De cette façon, les mises à jour seront locales.
apt-mirror a besoin d'une connexion Internet haut débit et de beaucoup d'espace disque
La configuration de votre propre miroir Ubuntu est très facile en utilisant apt-mirror.
1) allez dans le dépôt apt-mirror. Sauvegardez votre fichier sources.list comme ceci:
2) Modifiez le fichier sources.list comme suit:
3) Et insérez ce qui suit sur une nouvelle ligne:
4) Mettons à jour l'index du package
5) Et installez apt-mirror
6) Apt-mirror est maintenant configuré, alors disons quels serveurs mettre en miroir:
La configuration par défaut placera vos fichiers téléchargés dans le dossier / var / spool / apt-mirror. Voici à quoi ressemble le fichier mirror.list:
cela ne fait que refléter les packages binaires mais si vous voulez des packages source, vous devez insérer les lignes appropriées. Ils prennent généralement la forme:
7) Maintenant, cours
apt-mirror
. Cela va prendre un certain temps. Ne vous inquiétez pas si vous ne pouvez pas télécharger tous les fichiers en une seule fois,apt-mirror
pouvez reprendre les téléchargements (supprimez-le avec la combinaison de touches Ctrl+ Cet réexécutez-le lorsque vous souhaitez continuer). D'accord, exécutez apt-mirror comme ceci:Consultez également Comment créer un miroir Debian / Ubuntu local avec apt-mirror
Source: Utilisez Apt-mirror pour créer votre propre miroir Ubuntu
la source
apt-mirror
est disponible dans les référentiels ubuntu.mirrors.ubuntu.com
devrait fonctionner. :)mirrors.ubuntu.com
ne résoudra jamaismirrors.ubuntu.com
, mais un serveur le plus proche de vous. Le problème est que le serveur qu'il résout n'est pas fiable. Votre meilleur jeu consiste à utiliser un serveur fiable de la liste officielle.J'ai écrit un script Python appelé apt-select pour servir d'alternative CLI à la méthode GUI.
Le script interroge chaque miroir via TCP, imprime sur les miroirs standard avec la latence la plus faible et génère un nouveau
sources.list
fichier. Il existe également plusieurs options qui vous permettent de choisir dans une liste de miroirs classés et de récupérer des informations telles que la date de dernière mise à jour du miroir et sa capacité de bande passante.la source