Question Comment ajouter un PPA sur un serveur?


La version serveur d'Ubuntu n'a pas le add-apt-repository commander. Comment puis-je ajouter un Archive personnelle des paquets (PPA) sur le serveur sans cette commande?


155
2018-04-29 14:57


origine


dans la dernière version de synaptic, vous pouvez ajouter des ppa directement dans les sources logicielles au lieu d'une ligne deb - Dirk Hartzer Waldeck
- La réponse de @ Doug est correcte pour Ubuntu  16.04 - La réponse de @freefreedom est correcte pour Ubuntu  14.04 Sur Ubuntu  16.04 le bon paquet est en effet software-properties-common, comme montré par: $ type add-apt-repository add-apt-repository est haché (/ usr / bin / add-apt-repository) $ apt-fichier search / usr / bin / add-apt-repository software-properties- commun: / usr / bin / add-apt-repository sur les versions précédentes python-software-properties --- MISE À JOUR: Je le commente ici, car je ne pouvais pas l'ajouter en tant que commentaire! - azbarcea
apt-add-repository fonctionne immédiatement. - Atifm


Réponses:


Vous pouvez simplement ajouter le add-apt-repository commander. Dans 13.10 et versions ultérieures, vous devez également exécuter cette commande:

sudo apt-get install software-properties-common

Note latérale: en 11.04, ils ont ajouté un lien symbolique vers add-apt-repository de sorte qu'il peut être exécuté comme apt-add-repository ce qui est totalement plus logique pour moi. Tout le reste apt commence par "apt".

NOTE: Cela fait partie de la python-software-properties paquet (avant 13.10):

sudo apt-get install python-software-properties

191
2018-04-29 15:18



Voir c'est en fait une fonction d'apt c'est en fait logique pour moi. "Ajouter un référentiel avec apt"> "apt-add-repository" - MrChrisDruif
Et si "python-software-properties" est déjà installé et que vous obtenez toujours "command not found" lorsque vous essayez d'utiliser "apt-add-repository"? - monkut
Avez-vous également essayé "add-apt-respository"? Sur les versions antérieures à 11.04, vous devez mettre le "add" avant "apt". - Mark Russell
qu'est-ce que vous êtes supposé faire quand 'apt-get install python-software-properties' échoue parce que cela dépend de python-curl, qui n'est pas 'installable'? Sur mon système 12.04, il se plaint de ne pouvoir "corriger les problèmes - vous avez conservé des paquets endommagés" - Hoobajoob
Est software-properties-common un ensemble d'outils définis ou une collection d'utils? - Alex


Laissez-moi vous apprendre à pêcher. apt-file vous permet de savoir quel paquet fournit un fichier donné. dpkg -S fait la même chose, mais seulement pour les paquets installés. apt-file fonctionne si le paquet a été installé ou non.

Donc, vous installez d'abord apt-file: sudo apt-get install apt-file. Vous devez ensuite mettre à jour ses informations, comme vous le faites avec apt-get: sudo apt-file update. Maintenant, il est prêt à être utilisé:

$ apt-file search add-apt-repository
python-software-properties: /usr/bin/add-apt-repository
python-software-properties: /usr/share/man/man1/add-apt-repository.1.gz

Donc, dans ce cas, la prochaine chose à faire serait d’installer python-software-properties.


74
2017-08-02 11:43



excellent conseil - il ne devrait peut-être pas être enterré dans cette question - une question séparée serait une bonne idée de le souligner. - fossfreedom♦
@fossfreedom Est-ce ce dont vous parlez? - askubuntu.com/questions/13792/… - jrg♦
En raison de cette astuce, j'ai découvert qu'en 12.10, le serveur apt-add-repository se trouvait dans software-properties-common (plus dans python-software-properties) - Kat Amsterdam
Pourquoi est-ce que je continue à oublier que cette commande incroyablement utile existe! Très bonne réponse. - lleaff


Ce n'est pas nécessairement la meilleure réponse, mais cela fonctionnera:

L'ancienne façon (avant Ubuntu 9.10, ils l'appellent) de l'édition /etc/apt/sources.list fonctionne encore. Vous devrez également obtenir la clé GPG sur le système manuellement.

Sur les anciens systèmes Ubuntu (pré 9.10):

Étape 1: Visitez la page de présentation de la PPA dans Launchpad. Recherchez le titre qui lit Ajout de cet PPA à votre système et cliquez sur les détails techniques sur ce lien PPA.

Étape 2: Utilisez la liste déroulante Afficher les sources.list pour sélectionner la version d'Ubuntu que vous utilisez.

Étape 3: Vous verrez que la zone de texte ci-dessous se lit comme suit:

deb http://ppa.launchpad.net/gwibber-daily/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/gwibber-daily/ppa/ubuntu jaunty main

Copiez ces lignes.

Étape 4: Ouvrez un terminal et tapez:

sudo gedit /etc/apt/sources.list

Cela ouvrira un éditeur de texte contenant la liste des archives que votre système utilise actuellement. Faites défiler vers le bas du fichier et collez les lignes que vous avez copiées dans l'étape ci-dessus.

Enregistrez le fichier et quittez l'éditeur de texte.

Étape 5: De retour sur la page de présentation de la PPA, recherchez l'en-tête de clé de signature. Vous verrez quelque chose comme:

1024R / 72D340A3 (Qu'est ce que c'est?)

Copiez la partie après la barre oblique mais sans inclure le lien d'aide; par exemple. juste 72D340A3.

Etape 6: Vous devez maintenant ajouter cette clé à votre système pour qu'Ubuntu puisse vérifier les packages à partir du PPA. Dans votre terminal, entrez:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 72D340A3

(Remplacez 72D340A3 par ce que vous avez copié à l'étape 5.)

Cela va maintenant extraire la clé du PPA et l'ajouter à votre système.

Etape 7: Maintenant, en une fois, vous devriez demander à votre système de supprimer la dernière liste de logiciels de chaque archive connue, y compris le PPA que vous venez d'ajouter:

sudo apt-get update

Vous êtes maintenant prêt à installer le logiciel à partir du PPA!


53
2017-08-02 10:37



Si aucune autre réponse plus rapide et plus conviviale n'est donnée, alors je vais la mettre correctement. Il résout le problème d'une manière "spéciale";) - Luis Alvarado♦
Alors que add-apt-repository est plus facile, dans une installation de serveur, j'aime garder les choses simples, donc ça ne me dérange pas de le faire manuellement. C'était la réponse que je cherchais. - D. Strout
package logiciel-propriétés-communes est énorme, semble trop pour simplement ajouter du texte dans un fichier et exécuter quelques commandes. Un tel gaspillage d'espace lors de l'utilisation de Docker. Cette réponse est très utile! - rsmoorthy
C'était vraiment utile quand j'avais des problèmes de proxy - Alex Chamberlain
Cela devrait être la réponse acceptée, puisque le PO a demandé comment se déplacer ne pas using add-apt-repository ... Merci beaucoup pour celui-ci! - djBo


add-apt-repository est fourni par le paquet python-software-properties.

Donc, si vous devez installer via

sudo apt-get install python-software-properties

14
2017-12-30 18:39



Merci! Je dois dire que je trouve un nom assez illogique. Avez-vous une idée de la raison pour laquelle je ne suis pas installé en standard? - Peter Smit
d'accord illogique - sur pourquoi, vous pourriez spéculer que les serveurs sont généralement «fixes» en termes de logiciels en cours d'exécution. Ainsi, vous n'avez pas besoin du «luxe» d'ajouter et de supprimer des référentiels fréquemment… fin de spéculation! - fossfreedom♦
Pourquoi est-ce illogique? C'est un ensemble d'outils python pour gérer les propriétés du logiciel. add-apt-repository est l'un de ces outils. - Jo-Erlend Schinstad
je ai déjà python-software-properties installé mais je continue à obtenir cette erreur. j'ai essayé apt-add et add-apt notations, et aucun travail ... que faire? - Mohamad
@ Mohamad, parce que c'est faux, au moins pour Ubuntu 14.04. Tout ce que vous devez installer est software-properties-common. - Theodore R. Smith


Exécutez cette commande:

sudo apt-get install software-properties-common

Et puis vous pouvez ajouter votre référentiel en cours d'exécution:

sudo add-apt-repository [REPOSITORY]

Renember à remplacer [REPOSITORY] avec le nom du référentiel que vous souhaitez ajouter.


14
2017-08-19 00:40



Cela a parfaitement fonctionné. - Aaron


J'ai eu un débat avec un collègue à ce sujet il y a quelques semaines. Donner

apt-add-repository

un essai. N'a pas besoin d'autres paquets. Notez que apt apparaît avant d'ajouter. L'ordre est important car add-apt-repository doit être installé.

Pour les opposants là-bas. Essayez ce fichier Vagrant. Notez que je pars d'une image fidèle et que vous ajoutez le ppa immédiatement.

# -*- mode: ruby -*-
# vi: set ft=ruby :

# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure(2) do |config|

  config.vm.box = "ubuntu/trusty64"
  config.ssh.username = "vagrant"

  config.vm.provision "shell", inline: <<-SHELL
    sudo apt-add-repository ppa:george-edison55/cmake-3.x -y
    sudo apt update
    sudo apt upgrade
    sudo apt install -y virtualbox-guest-dkms
    sudo apt-get install -y curl g++ libpng12-dev  \
      libtiff5-dev libssl-dev libxml2-dev libxslt1-dev libpq-dev postgresql-client \
      postgresql pgadmin3 liblcms2-dev libcrypto++9 libcrypto++-dev \
      graphviz-dev libboost1.55-dev libboost-filesystem1.55-dev libboost-system1.55-dev \
      libexpat1-dev python-software-properties qtbase5-dev qttools5-dev  \
      libqt5svg5-dev qtscript5-dev qtdeclarative5-dev qtmultimedia5-dev \
      libsqlite3-dev qt5-default cmake

  SHELL
end

Mise à jour: Juste pour clarifier, il semble que les images de nuage pour Ubuntu précis et en haut ont le package correct déjà installé. Donc, que nous parlions de scripts cloud-init ou d'un fichier vagabond, apt-add-repository est présent. Comme add-apt-repository se trouve dans le même package, cela devrait également fonctionner.


0



L'ordre n'a pas d'importance. Voir askubuntu.com/questions/83489/…. - edwinksl
Expliquez pourquoi ce fichier vagabond fonctionne alors. Notez que je ne prétends pas qu'ils font quelque chose de différent. Ils font exactement la même chose. Vous avez juste besoin d'un paquet pour l'add-apt, où l'autre fonctionne à partir de zéro. - Atifm
@atifm: Voir cette réponse: $ apt-file search add-apt-repository propriétés-software-common: / usr / bin / add-apt-repository propriétés-logiciels-common: /usr/share/man/man1/add-apt-repository.1. gz $ apt-file search apt-add-repository propriétés-software-common: / usr / bin / apt-add-repository propriétés-software-common: /usr/share/man/man1/apt-add-repository.1. gz - tricasse
@tricasse: Merci pour le lien vers apt-file, qui sera utile ailleurs. Donc, votre droit, ils sont dans le même paquet que vérifié par apt-file. Cela dit, il semble que les images de nuage Ubuntu (pour vagabond) soient précises et fiables si le paquet est déjà installé. Pas sûr si c'était toujours le cas, mais il semble que ce soit le cas pour le moment - Atifm