서버에 PPA를 추가하는 방법은 무엇입니까?


160

Ubuntu의 서버 버전에는 add-apt-repository명령 이 없습니다 . 이 명령없이 PPA ( Personal Package Archive )를 서버에 추가하려면 어떻게 해야합니까?


최신 버전의 시냅틱에서는 deb 라인 대신 소프트웨어 소스에 직접 ppa를 추가 할 수 있습니다
Dirk Hartzer Waldeck

1
- @ 더그의 답변에 대한 올바른 우분투 16.04 - @ fossfreedom의 대답은에 대한 올바른 우분투 14.04우분투 16.04 권리 패키지는 참으로 software-properties-common$ 유형 추가 쉽다 - 저장소 - 쉽다 - 저장소 추가 해시되어 (은 / usr / 빈 : 같이, / add-apt-repository) $ apt-file search / usr / bin / add-apt-repository software-properties-common : 이전 버전의 / usr / bin / add-apt-repository는 실제로 python-software-properties--- 에서 찾을 수 있습니다. 업데이트 : 의견으로 추가 할 수 없기 때문에 여기에 의견을 말하십시오!
azbarcea

apt-add-repository는 즉시 사용할 수 있습니다.
Atifm

답변:


196

간단히 add-apt-repository명령을 추가 할 수 있습니다 . 13.10 이상에서는 다음 명령도 실행해야합니다.

sudo apt-get install software-properties-common

참고 사항 : 11.04에서 그들은 심볼릭 링크를 추가 하여 나에게 더 의미가있는 add-apt-repository것처럼 실행할 수 있습니다 apt-add-repository. 다른 모든 것은 "apt"로 시작합니다.

참고 : python-software-properties패키지 의 일부입니다 (13.10 이전).

sudo apt-get install python-software-properties

그것이 실제로 apt의 기능이라는 것을 알면 실제로 논리적입니다. "apt로 저장소 추가"> "apt-add-repository"
MrChrisDruif

5
"python-software-properties"가 이미 설치되어 있고 "apt-add-repository"를 사용하려고 할 때 여전히 "command not found"가 표시되면 어떻게합니까?
monkut

"add-apt-repository"도 사용해 보셨습니까? 11.04 이전 버전에서는 "apt"앞에 "add"를 넣어야합니다.
마크 러셀

'설치할 수없는'python-curl에 의존하기 때문에 'apt-get install python-software-properties'가 실패 할 경우 어떻게해야합니까? 내 12.04 시스템에서 "문제를 수정할 수 없습니다-패키지가 깨진 상태입니다"
Hoobajoob

software-properties-common정의 도구 나 유틸 모음 세트는?
Alex

74

낚시하는 법을 가르쳐 드리겠습니다. apt-file주어진 파일을 제공하는 패키지를 찾을 수 있습니다. dpkg -S설치된 패키지에 대해서만 동일한 작업을 수행합니다. apt-file패키지 설치 여부에 관계없이 작동합니다.

먼저 apt-file을 설치하십시오 sudo apt-get install apt-file. 그런 다음 apt-get :과 마찬가지로 정보를 업데이트해야합니다 sudo apt-file update. 이제 사용할 준비가되었습니다 :

$ 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

따라서이 경우 다음으로 할 일은 python-software-properties를 설치하는 것입니다.


3
훌륭한 팁-아마도이 질문에 묻혀서는 안됩니다-별도의 질문이 이것을 강조하는 것이 좋습니다.
fossfreedom

@fossfreedom 이것이 당신이 말하는 것입니까? - askubuntu.com/questions/13792/...
JRG

9
이 팁으로 인해 12.10 서버에서 apt-add-repository 서버는 소프트웨어 속성 공통 (python-software-properties에는 더 이상 존재하지 않음)에 있습니다.
Kat Amsterdam

이 유용한 명령이 존재한다는 것을 잊어 버리는 이유는 무엇입니까? 좋은 대답입니다.
lleaff

53

반드시 최선의 대답은 아니지만 다음과 같이 작동합니다.

편집 방식의 구식 (우분투 9.10 이전 버전)은 /etc/apt/sources.list여전히 작동합니다. 또한 시스템에서 GPG 키를 수동으로 가져와야합니다.

구형 (9.10 이전) 우분투 시스템 :

1 단계 : 런치 패드의 PPA 개요 페이지를 방문하십시오. 시스템에이 PPA 추가라는 제목을 찾고이 PPA에 대한 기술 정보 링크를 클릭하십시오.

2 단계 : 소스 표시 목록 항목 드롭 다운 상자를 사용하여 사용중인 Ubuntu 버전을 선택하십시오.

3 단계 : 바로 아래 텍스트 상자에 다음과 같은 내용이 표시됩니다.

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

그 줄을 복사하십시오.

4 단계 : 터미널을 열고 다음을 입력하십시오.

sudo gedit /etc/apt/sources.list

시스템에서 현재 사용중인 아카이브 목록이 포함 된 텍스트 편집기가 열립니다. 파일의 맨 아래로 스크롤하여 위 단계에서 복사 한 행을 붙여 넣습니다.

파일을 저장하고 텍스트 편집기를 종료하십시오.

5 단계 : PPA 개요 페이지로 돌아가서 서명 키 제목을 찾습니다. 다음과 같은 것을 보게 될 것입니다 :

1024R / 72D340A3 (무엇입니까?)

슬래시 다음 부분을 복사하지만 도움말 링크는 포함하지 마십시오. 예를 들어 72D340A3.

6 단계 : 이제 시스템에 해당 키를 추가해야 Ubuntu가 PPA에서 패키지를 확인할 수 있습니다. 터미널에 다음을 입력하십시오.

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

(72D340A3을 5 단계에서 복사 한 것으로 바꿉니다.)

이제 PPA 키를 풀다운하여 시스템에 추가합니다.

7 단계 : 이제 일회성으로 방금 추가 한 PPA를 포함하여 알고있는 각 아카이브에서 최신 소프트웨어 목록을 풀다운하도록 시스템에 알려야합니다.

sudo apt-get update

이제 PPA에서 소프트웨어 설치를 시작할 준비가되었습니다!


1
더 빠르고 사용자 친화적 인 답변이 없으면이 답변을 올바른 것으로 지정합니다. 그것은 "특별한"방식으로 문제를 해결한다;)
Luis Alvarado

1
add-apt-repository가 더 쉽지만 서버 설치에서 나는 물건을 간결하게 유지하고 싶기 때문에 수동으로 수행하는 것을 신경 쓰지 않습니다. 이것은 내가 찾고있는 대답이었습니다.
D. Strout

1
이 방법은 apt-add-repository필수 패키지와 함께 제공되는 모든 쓰레기를 설치하는 것보다 낫습니다 .
Dmitry Minkovsky

4
software-properties-common 패키지는 거대합니다. 파일에 텍스트를 추가하고 몇 가지 명령을 실행하기에는 너무 많은 것 같습니다. Docker에서 사용하는 동안 공간 낭비. 이 답변은 매우 도움이됩니다!
rsmoorthy

3
OP가 add-apt-repository를 사용 하지 않는 방법을 물었 으므로이 대답은 받아 들일 것 입니다 ...이 것에 감사합니다!
djBo

15

add-apt-repository패키지에 의해 제공됩니다 python-software-properties.

따라서 당신이 통해 설치 해야하는 경우

sudo apt-get install python-software-properties

감사! 나는 아주 비논리적 인 이름을 찾았다 고 말해야한다. 또한 내가 표준 설치되지 않은 이유를 알고 있습니까?
피터 Smit

2
합의 된 비논리적 이유-서버 실행은 일반적으로 소프트웨어 실행 측면에서 '고정'된 것으로 추측 할 수 있습니다. 따라서 리포지토리를 자주 추가하고 제거하는 '럭셔리'가 필요하지 않습니다.
fossfreedom

왜 비논리적인가? 소프트웨어 속성을 다루는 파이썬 도구 세트입니다. add-apt-repository는 그러한 도구 중 하나입니다.
Jo-Erlend Schinstad

이미 python-software-properties설치했지만이 오류가 계속 발생합니다. 나는 시도 apt-add하고 add-apt표기를 시도했지만 아무것도 작동하지 않습니다 ... 어떻게해야합니까?
Mohamad

1
@Mohamad, 적어도 우분투 14.04에서는 틀 렸기 때문에. 설치하기 만하면됩니다 software-properties-common.
Theodore R. Smith

15

이 명령을 실행하십시오 :

sudo apt-get install software-properties-common

그런 다음 실행중인 저장소를 추가 할 수 있습니다.

sudo add-apt-repository [REPOSITORY]

[REPOSITORY]추가하려는 리포지토리 이름 으로 바꿀 Renember .


이것은 완벽하게 작동했습니다.
Aaron

0

몇 주 전에 동료와 토론을했습니다. 주기

apt-add-repository

시도. 다른 패키지가 필요하지 않습니다. 추가하기 전에 apt가 나타납니다. add-apt-repository를 설치해야하므로 순서는 중요합니다.

거기에있는 naysayers를 위해. 이 Vagrant 파일을 사용해보십시오. 참고로, 신선하고 신뢰할 수있는 이미지에서 시작하여 상자에서 바로 ppa를 추가합니다.

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

업데이트 : 명확히하기 위해 우분투의 클라우드 이미지가 정확하고 올바른 패키지가 이미 설치되어있는 것처럼 보입니다. 따라서 클라우드 초기화 스크립트 또는 방랑 파일에 관계없이 apt-add-repository가 있습니다. add-apt-repository는 동일한 패키지에 있으므로 작동합니다.


순서는 중요하지 않습니다. askubuntu.com/questions/83489/…를 참조하십시오 .
edwinksl

1
이 유랑 파일이 작동하는 이유를 설명하십시오. 나는 그들이 다른 일을한다고 주장하지 않습니다. 그들은 정확히 같은 일을합니다. 추가 작업에 대한 패키지가 필요합니다. 다른 패키지는 처음부터 작동합니다.
Atifm

@atifm : 이 답변 보기 : $ apt-file search add-apt-repository software-properties-common : / usr / bin / add-apt-repository software-properties-common : / usr / share / man / man1 / add- apt-repository.1.gz $ apt 파일 검색 apt-add-repository 소프트웨어 속성 -common : / usr / bin / apt-add-repository software-properties-common : / usr / share / man / man1 / apt- add-repository.1.gz
tricasse

@tricasse : apt 파일에 대한 링크 덕분에 다른 곳에서 유용 할 것입니다. 따라서 귀하의 권리는 apt-file로 확인한 것과 동일한 패키지에 있습니다. 즉, 정확하고 신뢰할 수있는 우분투 클라우드 이미지 (방랑 용)가 이미 패키지를 설치 한 것 같습니다. 이것이 항상 사실인지 확실하지 않지만, 현재 상황 인 것 같습니다
Atifm
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.