Vraag Hoe een PPA op een server toevoegen?


De serverversie van Ubuntu heeft niet de add-apt-repository opdracht. Hoe kan ik een toevoegen Persoonlijk pakketarchief (PPA) naar de server zonder dit commando?


155
2018-04-29 14:57


oorsprong


in de nieuwste versie van synaptic kun je ppa's rechtstreeks in de softwarebronnen toevoegen in plaats van een deb-lijn - Dirk Hartzer Waldeck
- @ Doug's antwoord is correct voor Ubuntu  16.04 - @ fossfreedom's antwoord is correct voor Ubuntu  14.04 Op Ubuntu  16.04 het juiste pakket is inderdaad software-properties-common, zoals getoond door: $ type add-apt-repository add-apt-repository hashed (/ usr / bin / add-apt-repository) $ apt-bestand zoeken / usr / bin / add-apt-repository software-eigenschappen- common: / usr / bin / add-apt-repository op eerdere versies waar het inderdaad op te vinden is python-software-properties --- UPDATE: Ik becommentarieer het hier, omdat ik het niet als commentaar kon toevoegen! - azbarcea
apt-add-repository werkt direct uit de doos. - Atifm


antwoorden:


U kunt gewoon de add-apt-repository opdracht. In 13.10 en later moet je ook deze opdracht uitvoeren:

sudo apt-get install software-properties-common

Kanttekening: in 11.04 voegden ze een symlink toe aan add-apt-repository zodat het kan worden uitgevoerd zoals apt-add-repository wat me totaal logischer is. Al het andere apt begint met "apt".

OPMERKING: het maakt deel uit van de python-software-properties pakket (vóór 13.10):

sudo apt-get install python-software-properties

191
2018-04-29 15:18



Het is eigenlijk logisch om te zien dat het eigenlijk een functie van apt is. "voeg repository toe met apt"> "apt-add-repository" - MrChrisDruif
wat als "python-software-properties" al is geïnstalleerd en je nog steeds "command not found" krijgt wanneer je "apt-add-repository" probeert te gebruiken? - monkut
Heb je ook "add-apt-repository" geprobeerd? Op versies vóór 11.04 moet je de "add" plaatsen voor de "apt". - Mark Russell
wat moet je doen als 'apt-get install python-software-properties' mislukt omdat het afhankelijk is van python-curl, die 'niet installeerbaar' is? Op mijn 12.04-systeem klaagt het dat het "niet in staat is om problemen te corrigeren - je hebt kapotte pakketten gehad" - Hoobajoob
is software-properties-common een set gedefinieerde tools of verzameling van utils? - Alex


Ik zal je leren vissen. apt-file stelt u in staat om uit te vinden welk pakket een bepaald bestand levert. dpkg -S doet hetzelfde, maar alleen voor geïnstalleerde pakketten. apt-file werkt of het pakket is geïnstalleerd of niet.

Dus, eerst installeer je apt-file: sudo apt-get install apt-file. U moet dan zijn informatie bijwerken, net zoals u met apt-get moet doen: sudo apt-file update. Nu is het klaar voor gebruik:

$ 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

In dit geval zou het volgende te doen zijn om python-software-eigenschappen te installeren.


74
2017-08-02 11:43



uitstekende tip - het zou misschien niet begraven moeten worden in deze vraag - een aparte vraag zou een goed idee zijn om dit te benadrukken. - fossfreedom♦
@fossfreedom. Is dit waar je het over hebt? - askubuntu.com/questions/13792/... - jrg♦
Als gevolg van deze tip ontdekte ik dat in 12.10 de server apt-add-repository zich in software-properties-common (niet langer in python-software-eigenschappen) bevindt - Kat Amsterdam
Waarom blijf ik vergeten dat dit ongelooflijk nuttige commando bestaat! Goed antwoord. - lleaff


Het is niet noodzakelijk het beste antwoord, maar dit zal werken:

De ouderwetse manier (pre Ubuntu 9.10, ze noemen het) van bewerken /etc/apt/sources.list werkt nog steeds. U zult ook de GPG-sleutel handmatig op het systeem moeten krijgen.

Op oudere (pre 9.10) Ubuntu-systemen:

Stap 1: Bezoek de overzichtspagina van de PPA in Launchpad. Zoek naar de kop die aangeeft dat u deze PPA aan uw systeem moet toevoegen en klik op de technische details over deze PPA-koppeling.

Stap 2: Gebruik de vervolgkeuzelijst Bronnen van bronnen weergeven om de versie van Ubuntu te selecteren die u gebruikt.

Stap 3: U zult zien dat het tekstvak direct eronder zoiets leest als dit:

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

Kopieer die regels.

Stap 4: Open een terminal en typ:

sudo gedit /etc/apt/sources.list

Dit opent een teksteditor met de lijst met archieven die uw systeem momenteel gebruikt. Blader naar de onderkant van het bestand en plak de regels die u in de bovenstaande stap hebt gekopieerd.

Sla het bestand op en verlaat de teksteditor.

Stap 5: Terug op de overzichtspagina van de PPA, zoek naar de koptekst over de ondertekening. Je ziet zoiets als:

1024R / 72D340A3 (wat is dit?)

Kopieer het gedeelte na de schuine streep, maar zonder de Help-link; bijv. alleen 72D340A3.

Stap 6: Nu moet u die sleutel aan uw systeem toevoegen, zodat Ubuntu de pakketten van de PPA kan verifiëren. Voer in uw terminal in:

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

(Vervang 72D340A3 door alles wat u in stap 5 hebt gekopieerd.)

Hiermee wordt nu de PPA-sleutel naar beneden getrokken en aan uw systeem toegevoegd.

Stap 7: Nu moet u als eenmalig uw systeem vertellen dat u de nieuwste lijst met software uit elk archief waarvan u weet moet halen, inclusief de PPA die u zojuist hebt toegevoegd:

sudo apt-get update

Nu bent u klaar om te beginnen met het installeren van software van de PPA!


53
2017-08-02 10:37



Als geen ander sneller en gebruikersvriendelijker antwoord wordt gegeven, zal ik deze als correct vermelden. Het lost het probleem op een "speciale" manier op;) - Luis Alvarado♦
Hoewel add-apt-repository eenvoudiger is, hou ik er van om in een server-installatie dingen lean te houden, dus ik vind het niet erg om dit handmatig te doen. Dit was het antwoord dat ik zocht. - D. Strout
software-properties-common package is ENORM, lijkt te veel om gewoon wat tekst aan een bestand toe te voegen en een paar commando's uit te voeren. Zo'n verspilling van ruimte tijdens het gebruik in Docker. Dit antwoord is zo erg nuttig! - rsmoorthy
Dit was echt handig wanneer ik proxy-problemen had - Alex Chamberlain
Dit zou het geaccepteerde antwoord moeten zijn, omdat het OP vroeg hoe om te gaan niet add-apt-repository gebruiken ... Bedankt voor deze! - djBo


add-apt-repository wordt geleverd door het pakket python-software-properties.

Dus als je zou moeten installeren via

sudo apt-get install python-software-properties

14
2017-12-30 18:39



Bedankt! Ik moet zeggen dat ik een nogal onlogische naam vind. Heb je ook enig idee waarom ik het niet standaard geïnstalleerd heb? - Peter Smit
afgesproken onlogisch - waarom, je zou kunnen speculeren dat servers meestal 'gefixeerd' zijn in termen van draaiende software. Je hebt dus niet de 'luxe' nodig om vaak repositories toe te voegen en te verwijderen ... end-of-speculation! - fossfreedom♦
Waarom is het onlogisch? Het is een set python-tools om met software-eigenschappen om te gaan. add-apt-repository is een van die tools. - Jo-Erlend Schinstad
ik heb al python-software-properties geïnstalleerd, maar ik krijg steeds deze foutmelding. Ik heb geprobeerd apt-add en add-apt notaties en geen werk ... wat te doen? - Mohamad
@Mohamad, omdat het verkeerd is, in ieder geval voor Ubuntu 14.04. Alles wat u hoeft te installeren is software-properties-common. - Theodore R. Smith


Voer deze opdracht uit:

sudo apt-get install software-properties-common

En dan kun je je repository laten draaien:

sudo add-apt-repository [REPOSITORY]

Renember om te vervangen [REPOSITORY] met de naam van de repository die u wilt toevoegen.


14
2017-08-19 00:40



Dit werkte perfect. - Aaron


Ik had een paar weken geleden een debat met een collega hierover. Geven

apt-add-repository

een poging. Heeft geen andere pakketten nodig. Houd er rekening mee dat apt wordt weergegeven vóór het toevoegen. Orde doet ertoe, omdat add-apt-repository moet worden geïnstalleerd.

Voor die nee-zeggers die er zijn. Geef dit Vagrant-bestand een kans. Let op, ik begin met een nieuwe, vertrouwde afbeelding en voeg de ppa direct uit de doos toe.

# -*- 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

Update: Ter verduidelijking: het lijkt erop dat de cloudafbeeldingen voor ubuntu nauwkeurig en hoger al het juiste pakket al hebben geïnstalleerd. Dus of we nu cloud-init-scripts of een zwervend bestand aan het gebruiken zijn, apt-add-repository is aanwezig. Omdat add-apt-repository in hetzelfde pakket zit, zou dit ook moeten werken.


0



Bestelling doet er niet toe. Zien askubuntu.com/questions/83489/.... - edwinksl
Leg uit waarom dit zwerversbestand dan werkt. Opmerking: ik beweer niet dat ze iets anders doen. Ze doen precies hetzelfde. Je hebt alleen een pakket nodig voor de add-apt, waar de andere vanuit het niets werkt. - Atifm
@atifm: Zie dit antwoord: $ apt-bestand zoeken add-apt-repository software-properties-common: / usr / bin / add-apt-repository software-properties-common: /usr/share/man/man1/add-apt-repository.1. gz $ apt-bestand zoeken apt-add-repository software-eigenschappen-common: / usr / bin / apt-add-repository software-properties-common: /usr/share/man/man1/apt-add-repository.1. gz - tricasse
@tricasse: Bedankt voor de link naar apt-file, die elders nuttig zal zijn. Dus je hebt gelijk, ze zitten in hetzelfde pakket als geverifieerd door apt-file. Dat gezegd hebbende, het ziet eruit als de ubuntu-wolkenafbeeldingen (voor zwervers) voor nauwkeurig en betrouwbaar is het pakket al geïnstalleerd. Ik weet niet zeker of dit altijd het geval was, maar op dit moment lijkt dit het geval te zijn - Atifm