[관련 게시물]
2020/05/10 - [리눅스/Ubuntu] - 데비안(Debian), 우분투(Ubuntu)의 APT 계열 명령 연재 목록
2020/05/12 - [리눅스/Ubuntu] - apt 명령 사용법 - APT(Advanced Packaging Tool) 패키지 관리 도구 기본 사용법
2020/05/14 - [리눅스/Ubuntu] - apt-get 명령 사용법
2020/05/16 - [리눅스/Ubuntu] - apt-cache 명령 사용법
2020/05/18 - [리눅스/Ubuntu] - apt-mark 명령 사용법
2020/05/20 - [리눅스/Ubuntu] - apt-key 명령 사용법
2020/05/20 - [리눅스/Ubuntu] - add-apt-repository 명령 사용법
2020/05/22 - [리눅스/Ubuntu] - apt-cdrom 명령 사용법
2020/05/24 - [리눅스/Ubuntu] - apt-config 명령 사용법
2020/05/26 - [리눅스/Ubuntu] - APT 계열 환경(구성) 설정 관련 디렉터리와 파일 모음
2020/05/28 - [리눅스/Ubuntu] - apt.conf 파일 설정
2020/05/30 - [리눅스/Ubuntu] - sources.list와 /etc/apt/sources.list.d/ 내 파일 설정add-apt-repository 설명
repository는 우리말로는 저장소를 뜻합니다. 일반적으로 각 리눅스 배포판들은 각자의 공식 리포지터리(저장소)를 제공하고 있어 널리 사용되고 있는 주요 패키지들의 손쉬운 업그레이드를 지원하고 있습니다.
그러나 이 공식 리포지터리(저장소)에 올라와 있는 패키지들은 해당 패키지의 최신 버전이 아닌 경우가 대부분입니다. 그 이유는 각 리눅스 배포판들의 공식 저장소들은 안정성이 검증된 패키지를 지원하기 위해 패키지 정보의 업데이트를 늦추는 경향이 있기 때문입니다.
그러나 다양한 이유로 공식 저장소에서는 지원하지 않는 패키지가 필요할 때가 있습니다. 이러한 패키지를 제공하는 저장소는 크게 두 형태로 나눌 수 있습니다.
먼저 해당 패키지 제작사 또는 제작팀의 최신 버전의 패키지가 올라오는 공식 배포 리포지터리(저장소)를 이용할 경우입니다.
공식 패키지 제작팀의 저장소의 경우 아래 링크의 글에 사용된 방식을 사용하는 것이 일반적입니다.
두번째로 개인이나 소규모 팀이 새로 개발한 패키지를 배포하거나 기존의 공식 개발 팀이 배포한 패키지의 개인적인 버그 수정이나 기능 개선 등 특정 목적으로 패키지를 수정해 재배포할 때 개인 패키지 아카이브를 제공하는 업체의 저장소를 사용하는 경우입니다.
우분투의 경우, Launchpad가 제공하는 Launchpad PPA(Personal Package Archive) 리포지토리를 사용할 수 있으며 add-apt-repository에서 해당 PPA를 지원합니다.
참고
DNF를 주 패키지 관리자로 사용하는 레드햇 계열 리눅스의 경우 공식 지원 저장소 외에 Fedora 프로젝트에서 지원하는 copr과 playground라는 저장소가 존재합니다. dnf-plugins-core 패키지를 설치하여 copr저장소와 playground 저장소를 관리할 수 있습니다.
https://fedoraproject.org/wiki/Category:Copr
http://rpm-software-management.github.io/dnf-plugins-core/copr.html
보다 자세한 내용은 위 링크를 참고하시기 바랍니다.
apt-add-repository는 패키지 저장소를 관리하는 스크립트입니다.
패키지 저장소를 추가하기 위해서는 apt sources.list에 저장소를 추가하거나 sources.list.d 디렉터리에 저장소 구성 파일을 생성해주어야 합니다.
apt-add-repository는 저장소 추가 뿐만 아니라 제거 등 저장소를 관리하는데 사용되는 명령입니다.
apt-add-repository는 앞서 언급한 바와 같이 Launchpad PPA (Personal Package Archive) 리포지토리를 추가하기 위한 간단한 구문도 제공합니다.
add-apt-repository 명령 구문의 예(synopsis)
SYNOPSIS
add-apt-repository [OPTIONS] REPOSITORY
add-apt-repository 명령(commands)
$ sudo apt-add-repository <-옵션> <소스 라인>
<sourceline>의 올바른 형식은 다음과 같습니다.
따옴표로 묶인 완전한 apt 줄
apt-add-repository 'deb http://myserver/path/to/repo stable myrepo'
리포지토리 URL 및 따옴표로 묶은 영역 (기본값은 'main')
$ sudo apt-add-repository http://extras.ubuntu.com/ubuntu
$ sudo apt-add-repository 'http://myserver/path/to/repo myrepo'
$ sudo apt-add-repository 'https://packages.medibuntu.org free non-free'
이상의 형식은 저장소(repository)가 /etc/apt/sources.list에 추가됩니다.
PPA 단축 주소.
$ sudo apt-add-repository ppa:user/repository
$ sudo apt-add-repository ppa:user/distro/repository
ppa:<user> / <ppa-name> 형식은 /etc/apt/sources.list.d/ 디렉토리의 새 파일에 추가됩니다.
새로 추가된 PPA의 GPG 공개키도
다운로드되어 apt의 키링에 추가됩니다.
배포 구성 요소
$ sudo apt-add-repository multiverse
주어진 배포 구성 요소가 모든 소스에 대해 활성화됩니다.
--remove가 제공되면 도구는 소스에서 지정된 소스를 제거합니다.
add-apt-repository 옵션 (Options)
-h, --help
show this help message and exit
-m, --massive-debug
-r, --remove
sources.list.d 디렉터레 안의 저장소 제거
-s, --enable-source
저장소에서 소스 패키지를 다운로드할 수 있도록 합니다.
-y, --yes
모든 질의예 동의
-n, --no-update
추가 후 패키지 캐시를 업데이트하지 말기
-u, --update
추가 후 패키지 캐시를 업데이트하기 (기존 옵션)
-k KEYSERVER, --keyserver=KEYSERVER
레거시 옵션, 사용하지 않음.
'리눅스 > Debian or Ubuntu' 카테고리의 다른 글
apt.conf 파일 설정 (0) | 2020.05.28 |
---|---|
APT 계열 환경(구성) 설정 관련 디렉터리와 파일 모음 (0) | 2020.05.26 |
apt-config 명령 사용법 (0) | 2020.05.24 |
apt-cdrom 명령 사용법 (0) | 2020.05.22 |
우분투(Ubuntu) 패키지 관리 - apt-key 명령 사용법 (0) | 2020.05.20 |
우분투(Ubuntu) 패키지 관리 - apt-mark 명령 사용법 (0) | 2020.05.18 |
우분투(Ubuntu) 패키지 관리 - apt-cache 명령 사용법 (0) | 2020.05.16 |
우분투(Ubuntu) 패키지 관리 - apt-get 명령 사용법 (2) | 2020.05.14 |