Nous avons une paire de VMS gérée par équilibre équilibrée qui installent APT-Transport-HTTPS dans le cadre d'un script de démarrage.
Cependant, les serveurs ont récemment entré dans un état d'erreur car lors du démarrage, ils ne pourraient plus télécharger la version du package requis (1.0.9.8.3) car il n'est plus présent sur le miroir: http: // httpédir. Debian.org/debian/pool/main/a/apt
root@validator-dev-group-c2v4:/etc# apt-get install -f apt-transport-https
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
apt-transport-https
0 upgraded, 1 newly installed, 0 to remove and 27 not upgraded.
Need to get 138 kB of archives.
After this operation, 195 kB of additional disk space will be used.
Err http://httpredir.debian.org/debian/ jessie/main apt-transport-https AMD64 1.0.9.8.3
404 Not Found
E: Failed to fetch http://httpredir.debian.org/debian/pool/main/a/apt/apt-transport-https_1.0.9.8.3_AMD64.deb 404 Not Found
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
Essayer la suggestion de --fix-missing
n'aide pas.
root@validator-dev-group-c2v4:/etc# apt-get install --fix-missing apt-transport-https
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
apt-transport-https
0 upgraded, 1 newly installed, 0 to remove and 27 not upgraded.
Need to get 138 kB of archives.
After this operation, 195 kB of additional disk space will be used.
Err http://httpredir.debian.org/debian/ jessie/main apt-transport-https AMD64 1.0.9.8.3
404 Not Found
E: Failed to fetch http://httpredir.debian.org/debian/pool/main/a/apt/apt-transport-https_1.0.9.8.3_AMD64.deb 404 Not Found
E: Internal Error, ordering was unable to handle the media swap
Ensuite, je téléchargeai manuellement la version la plus élevée de APT-Transport-HTTPS (1.0.9.8.4) BOGI, je n'ai pas pu l'installer directement en raison d'une dépendance à la libaptation-pkg4.12.
root@validator-dev-group-c2v4:/home/<user># Sudo dpkg -i ./apt-transport-https_1.0.9.8.4_AMD64.deb
Selecting previously unselected package apt-transport-https.
(Reading database ... 26719 files and directories currently installed.)
Preparing to unpack .../apt-transport-https_1.0.9.8.4_AMD64.deb ...
Unpacking apt-transport-https (1.0.9.8.4) ...
dpkg: dependency problems prevent configuration of apt-transport-https:
apt-transport-https depends on libapt-pkg4.12 (>= 1.0.9.8.4); however:
Version of libapt-pkg4.12:AMD64 on system is 1.0.9.8.3.
Quelqu'un peut-il m'aider à résoudre ce problème? Est-ce aussi simple que la mise à niveau de libaptation-pkg4.12? Si oui, comment puis-je y aller?
[~ # ~] éditer [~ # ~] : aussi je suis incapable de courir apt-get update
... parce que je n'ai pas apt-transport-https
installée. Ce que je pense qu'ils appellent attraper-22!
root@validator-dev-group-c2v4:/home/<user># apt-get update
E: The method driver /usr/lib/apt/methods/https could not be found.
N: Is the package apt-transport-https installed?
C'est ce que mes /etc/apt/sources.list
ressemble à:
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
Merci d'avance
Je semble avoir corrigé le problème en liant le Dir https
dans /usr/lib/apt/methods
à la Dir http
.
root@validator-dev-group-c2v4:~# cd /usr/lib/apt/methods
root@validator-dev-group-c2v4:/usr/lib/apt/methods# ln -s http https
Puisque je n'ai pas réellement d'https://
Sources configurées, il semble inoffensif et alors quand apt-get install apt-transport-https
La fonctionne effectivement écrase le symbolique avec les fichiers corrects.
La solution générale consiste à mettre à jour les index des apt
de sorte qu'il sache quelles versions sont disponibles:
apt-get update
Puis installant apt-transport-https
trouvera les versions appropriées sur les référentiels.
Vous devriez le faire à chaque fois que vous souhaitez installer un nouveau paquet, à moins que vous ne l'ayez pas fait récemment (dans le dernier jour typiquement).
Si vous ne pouvez pas courir apt-get update
parce qu'il a besoin apt-transport-https
, vous pouvez réparer les choses par (temporairement) commuter votre https://
URL à http://
dans /etc/apt/sources.list
(et peut-être des fichiers dans /etc/apt/sources.list.d
). L'utilisation de packages HTTP pour télécharger ne réduit pas votre sécurité, elle ne réduit que votre confidentialité (les systèmes entre votre ordinateur et les référentiels peuvent voir quels packages vous récupérent).
Si que ne fonctionne pas, vous pouvez essayer de choisir un miroir spécifique, ce qui devrait éviter toutes les redirections aux URL HTTPS; Regardez le liste , choisissez un miroir près de vous et utilisez-le au lieu de httpredir.debian.org
Dans vos sources.
Dans votre cas spécifique, il pourrait bien être plus simple de télécharger manuellement les packages requis (et de les expédier à côté de vos scripts de configuration afin qu'ils continuent de travailler): apt-transport-https
, libapt-pkg4.12
et tout ce qui est nécessaire. (Vous pouvez finir par avoir besoin de mettre à niveau apt
en même temps.)
Il existe un tas de fichiers texte contenant l'URL pour télécharger des packages apt dans le dossier /etc/apt/
Un exemple de nom pour ces fichiers texte peut être: /etc/apt/sources.list.d/mssql-release.list
Si vous essayez d'installer des packages à partir d'un serveur Microsoft.
Et le contenu de /etc/apt/sources.list.d/mssql-release.list
pourrait être :
deb [Arch=AMD64] https://packages.Microsoft.com/debian/8/prod jessie main
Parfois, le contenu de *.list
Les fichiers sont téléchargés via https au lieu de http mais si vous n'avez pas installé le package apt-transport-https
, vous ne seriez pas en mesure de mettre à jour votre gestionnaire de paquets APT-GET. Il vous empêchera de ne pas pouvoir utiliser les sources HTTPS.
Ce que vous pouvez faire alors est de localiser l'incroyable *.list
Fichier (s) avec les liens HTTPS et le renommer: Sudo mv /etc/apt/sources.list.d/mssql-release.list /etc/apt/sources.list.d/mssql-release.list1 Sudo apt-get update Sudo apt-get install -y apt-transport-https Sudo mv /etc/apt/sources.list.d/mssql-release.list1 /etc/apt/sources.list.d/mssql-release.list Sudo apt-get update
Ensuite, vous devriez être capable de procéder à toutes les opérations APT-GET que vous souhaitez effectuer.
Référence pour venir avec cette réponse https://community.c9.io/t/installing-apt-transport-https-issue/10994/1