PPA와 리포지토리의 차이점은 무엇입니까?


46

최근에 PPA를 추가 한 곳에 답변을 올렸습니다 . 그러나 지금은 PPA리포지토리 의 차이점이 무엇인지 전혀 모른다는 것을 알고 있습니다. 누군가 제게 설명해 주시겠습니까?


답변:


14

리포지토리

Ubuntu와 같은 시스템에서 대부분의 소프트웨어는 필요한 프로그램과 라이브러리를 포함하는 멋진 .deb (또는 Red Hat과 같은 .rpm) 파일로 패키지됩니다. 이러한 파일은 CD로 다운로드하거나 CD로 제공 할 수 있습니다 (우분투의 CD로 가득 차 있습니다). 저장소는 패키지 세트를 포함하는 서버입니다 .

PPA

PPA (Personal Package Archives)를 사용 하면 Launchpad 에서 적절한 저장소 로 빌드 및 게시 할 Ubuntu 소스 패키지를 업로드 할 수 있습니다 .

또한 PPA 란 무엇이며 어떻게 사용합니까?를 참조하십시오 .

그것을 요 ​​약하기:

  • 저장소에는 패키지가 있습니다.
  • PPA는 패키지 (/ 소프트웨어 모음)입니다.
  • 런치 패드에는 PPA (/ 컬렉션 소프트웨어)를 보유하는 저장소가 있습니다.

4
PPA는 개인이나 그룹이 선택하고 유지 관리하는 저장소 나 소프트웨어가 아닌가? (Canonical 또는 Official Ubuntu 개발자와 직접 관련이없는 사람). PPA는 단일 패키지가 아닌 리포지토리와 유사합니다.
Fahad Yousuf

11
PPA는 패키지가 아니라 저장소입니다. 각 PPA는 여러 패키지를 포함 할 수 있습니다. 런치 패드는 PPA라는 저장소 모음입니다.
Gilles 'SO- 악마 그만해'

그런 명확한 설명. 보다 명확한 설명은 Repository는 C : // ProgramFiles이고 PPA는 설치된 프로그램 폴더입니다.
Abhimanyu Aryan

@AbhimanyuAryan 아니요, C : \ ProgramFiles는 repo와 같지 않습니다. 당신이 은유를 작성하지 않는 한, 나는 그 요점을 놓 쳤어 야합니다.
wjandrea

이 답변은 잘못되었습니다. PPA는 패키지가 아니라 리포지토리입니다. 내가 고쳐야 할까?
Reinier Post

66

이 질문에 대한 대답 에 동의하지 않습니다 . 나는 그 대답에 대한 의견으로 다음을 썼을 것이지만 너무 길다.

  • 리포지토리는 임의의 서버에서 호스팅되는 패키지 모음입니다.
  • PPA는 또한 런치 패드의 서버에서 호스팅 패키지 모음.

    특히 PPA는 "PPA는 패키지 (/ 소프트웨어 모음)" 라는 매우 모호한 점 이므로 PPA는 단일 패키지 가 아닙니다 . 받아 들여진 대답으로 믿게 될 수 있습니다. 또한 패키지 는 (필수적으로) 소프트웨어 모음 이 아니기 때문에 그 점을 더욱 혼란스럽게 만듭니다.

  • 따라서 PPA는 특별한 종류의 저장소입니다. 사각형처럼 특별한 종류의 사각형이 있습니다.

주요 차이점은 호스팅 업체입니다. 기본적으로 프로그래머이고 자신의 패키지를 개발 및 배포하고 인터넷에 자체 루트 서버가있는 경우 자체 저장소를 설정할 수 있습니다. 큰! 그러나 루트 서버가없고 비용을 지불하고 싶지는 않지만 자체 패키지를 개발하고 배포하려면 어떻게해야합니까? 런치 패드가 있습니다. PPA를 해당 사용 사례에 대한 서비스로 제공하고 있습니다. 기본적으로 런치 패드에서 자체 저장소를 작성하고 해당 패키지를 관리 할 수 ​​있습니다.

예를 들어 봅시다.

  1. 먼저 Ubuntu Saucy Salamander에 MATE 데스크탑 환경 (Gnome 2 포크) 을 설치한다고 가정하십시오 . 공식 저장소에는 포함되어 있지 않으며 개발자는 PPA를 유지 관리하지 않습니다. 대신에 그들은 그들 자신의 저장소를 가지고 있습니다. 다음과 같이 추가 할 수 있습니다.

    $ sudo add-apt-repository http://packages.mate-desktop.org/repo/ubuntu
    

    다음과 같은 항목이 추가됩니다 /etc/apt/sources.list.

    deb http://packages.mate-desktop.org/repo/ubuntu saucy main
    
  2. 둘째, 시나몬 (또 다른 그놈 2 포크)을 보고 싶다고 가정 해 봅시다 . 13.04 이후 공식 리포지토리에 포함되어 있지만 개발자가 유지 관리하는 PPA가 여전히 있습니다. 예를 들어 새로운 릴리스를 더 빨리 얻는 데 관심이있는 경우에 유용합니다. 다음과 같이 추가 할 수 있습니다.

    $ sudo add-apt-repository ppa:gwendal-lebihan-dev/cinnamon-stable
    

    다음과 같은 항목이 추가됩니다 /etc/apt/sources.list.d/gwendal-lebihan-dev-cinnamon-stable-saucy.list.

    deb http://ppa.launchpad.net/gwendal-lebihan-dev/cinnamon-stable/ubuntu saucy main
    

    보시다시피 후자의 항목은 (1)의 항목과 매우 유사합니다. 사실, 둘 다 우분투의 관점에서 리포지토리의 URL 일뿐입니다.

  3. 실제로 PPA 를 추가하는 일반적인 방법은 아니지만 (1)과 동일한 구문으로 Cinnamon PPA 추가 할 수도 있습니다 .

    $ sudo add-apt-repository http://ppa.launchpad.net/gwendal-lebihan-dev/cinnamon-stable/ubuntu
    

    다음과 같은 항목이 추가됩니다 /etc/apt/sources.list.

    deb http://ppa.launchpad.net/gwendal-lebihan-dev/cinnamon-stable/ubuntu saucy main
    

    이것은 포인트 (2) 와 정확히 동일한 항목 입니다. 이러한 항목이 작성된 파일 만 약간 다르게 처리되지만 결국에는 큰 차이가 없습니다. 두 경우 모두 시스템에서 Cinnamon PPA의 패키지를 항상 표준에 따라 사용할 수있게됩니다 sudo apt-get update.


add-apt-repositoryXenial의 매뉴얼에 따르면 ppa:<user>/<ppa-name>, "새로 추가 된 PPA의 GPG 공개 키도 다운로드하여 apt의 키 링에 추가됩니다." URL 양식을 사용하는 경우에는 그렇지 않습니다. 실제로, 매뉴얼은 1과 3에서 사용하는 URL 형식을 사용할 수는 없지만 "sources.list에 직접 추가 할 수있는 행"을 알려줍니다. 그럼에도 불구하고 사용하는 양식이 작동하는 것 같습니다.
jarno

1
@jarno 그렇습니다. 맨 페이지 add-apt-repository는 실제로는 불완전합니다. 사용하십시오 add-apt-repository --help나는 1과 3에 사용 된 URL 양식은 참으로 정확하고 가능한 옵션을 의도 한 것을 볼 수 있습니다. 또한 귀하의 가정은 절대적으로 정확합니다. URL 양식을 사용할 때 PPA의 GPG 공개 키가 추가되지 않습니다. 유용한 추가 기능입니다. 감사합니다! :) PPA를 추가하기 위해 3에 설명 된 양식을 사용 하지 않는 것이 좋습니다. 이것은 단지 PPA가 단순히 특정 종류의 저장소라는 것을 보여주기위한 예시로 의도 된 것입니다.
Malte Skoruppa

10

APT와 관련하여 저장소와 PPA간에 기술적 인 차이는 없습니다. 둘 다 패키지를 제공하는 소프트웨어 리포지토리이며, APT 관점에서는 패키지 설치와 동일한 메커니즘입니다.

PPA는 런치 패드를 백엔드로 사용하는 패키지의 저장소입니다. 똑같은 것에 대한 또 다른 이름, 즉 (적어도 원칙적으로) 일반적으로 개인적인 이유로 사용되며 수동으로 수행하거나 직접 서비스를 설정해야했던 대부분의 작업을 자동화합니다.

리포지토리는 데비안 기반 배포판에 설치 될 소프트웨어,이 경우 패키지 목록 및 패키지가있는 곳입니다.

Launchpad를 사용하지 않고 개인 저장소를 가질 수 있으며 개인이기 때문에 PPA라고 할 수 있습니다.

사용법의 유일한 차이점 은 사용자가 Launchpad가 아닌 저장소에 필요한 전체 URL을 작성하도록하는 대신 add-apt-repositorymagic 키워드를 사용 하는 구문에만 ppa:있습니다.


9

저장소는 말했다 소프트웨어를 다운로드하고 설치 apt-get을 같은 소프트웨어, 적성 등을 가능하게 다양한 소프트웨어의 모음입니다. 그들의 내용은 모두가 검사를 위해 볼 수 있습니다. 깨달음 저장소에 대한 Ubuntu 도움말 페이지 를 읽으십시오 .

PPA 는 배포 리더십에 의해 전체 커뮤니티에 아직 채택되지 않은 소프트웨어의 특수 저장소입니다. PPA 소프트웨어는 결함이있을 수 있으며 일반 리포지토리로 광범위하게 검토되지 않기 때문에 맬웨어에도 사용될 수 있습니다. 자세한 내용은 참조 런치 패드의있는 PPA의 설명있는 PPA의이 토론을 .


8

리포지토리 는 다운로드 또는 업데이트를 위해 패키지가 저장되거나 유지되는 장소로, 패키지 세트가 포함 된 서버입니다.

개인 패키지 아카이브 (PPA)을 업로드 소스 패키지를위한 특별한 소프트웨어 저장소를 구축하고 런치 패드에 의해 APT 저장소 또는 유사한 응용 프로그램으로 게시 할 수 있습니다. 대부분 공식 우분투 개발자가 아닌 사람들이 관리합니다

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.