SW/리눅스

Linux : Ubuntu : Apt 리포지토리 추가 방법, 예제, 명령어

얇은생각 2021. 12. 11. 07:30
반응형

Ubuntu 소프트웨어 Center 또는 apt-get과 같은 명령줄 유틸리티를 사용하여 패키지를 설치할 때 하나 이상의 적절한 소프트웨어 리포지토리에서 패키지가 다운로드됩니다. APT 리포지토리는 APT 도구가 읽을 수 있는 deb 패키지와 메타데이터 파일이 들어 있는 네트워크 서버 또는 로컬 디렉토리입니다.

기본 Ubuntu 리포지토리에서 사용할 수 있는 응용 프로그램이 수천 개 있지만 타사 리포지토리에서 소프트웨어를 설치해야 하는 경우도 있습니다. 

Ubuntu 및 Debian 시스템에 적절한 리포지토리를 추가하는 두 가지 방법에 대해 설명합니다. 첫 번째 방법은 add-apt-repository 명령을 사용하는 것이고 두 번째 방법은 텍스트 편집기를 사용하여 저장소를 수동으로 추가하는 것입니다.

 

 

Linux : Ubuntu : Apt 리포지토리 추가 방법, 예제, 명령어

 

 

적절한 소스

Ubuntu 및 기타 모든 Debian 기반 배포에서 apt 소프트웨어 리포지토리는 /etc/apt/sources.list/ 디렉토리 아래의 별도의 파일에 정의됩니다. 

/etc/apt/sources.list.d/ 디렉토리에 있는 리포지토리 파일의 이름은 .list로 끝나야 합니다. 

/etc/apt/sources.list 파일의 일반 구문 형식은 다음과 같습니다.

deb http://repo.tld/ubuntu distro component...

 

 

줄의 첫 번째 항목은 보관 유형을 정의합니다. 아카이브 유형은 deb 또는 deb-src일 수 있습니다. deb는 저장소에 .deb 패키지가 포함되어 있음을 의미하며 deb-src는 소스 패키지를 의미합니다.

두 번째 항목은 저장소 URL입니다.

세 번째 항목은 배포 코드 이름(예: Beaver, Xenial 등)을 지정합니다.

마지막 항목은 저장소 구성 요소 또는 카테고리입니다. 기본 Ubuntu 리포지토리는 기본, 제한, 유니버스 및 멀티버스의 네 가지 구성요소로 분할됩니다. 일반적으로 타사 리포지토리는 카테고리가 하나만 있습니다.

/etc/apt/sources.list.d/ 디렉토리의 파일 형식은 일반 sources.list 파일과 동일합니다.

대부분의 리포지토리는 다운로드하고 가져와야 하는 다운로드 패키지를 인증하기 위한 공개 키를 제공하고 있습니다.

 

 

 

저장소를 추가하거나 제거하려면 sudo 액세스 권한 또는 루트를 가진 사용자로 로그인

일반적으로 특정 리포지토리를 활성화하는 방법에 대한 지침은 소프트웨어 설명서에 나와 있습니다.

add-apt-repository를 설치하는 중입니다(add-apt-repository 명령을 찾을 수 없습니다).

add-apt-pository는 /etc/apt/sources.list.d 디렉토리에 있는 별도의 파일에 APT 저장소를 추가할 수 있는 Python 스크립트입니다. 명령을 사용하여 이미 존재하는 리포지토리를 제거할 수도 있습니다.

시스템에서 add-apt-repository를 사용할 수 없는 경우 "add-apt-repository 명령을 찾을 수 없습니다"라는 오류 메시지가 표시됩니다.

add-apt-repository 유틸리티는 software-properties-common 패키지에 포함되어 있습니다. 설치하려면 다음 명령을 실행합니다.

sudo apt update
sudo apt install software-properties-common

 

 

 

add-apt-pository를 사용하여 리포지토리를 추가

add-apt-repository 명령의 기본 구문은 다음과 같습니다.

add-apt-repository [options] repository

 

 

여기서 리포지토리는 deb http://repo.tld/ubuntu distro 구성 요소와 같은 source.list 파일에 추가할 수 있는 일반 리포지토리 항목 또는 ppa:<user>/<pa-name> 형식의 PPA 리포지토리일 수 있습니다.

add-apt-repository 명령의 사용 가능한 모든 옵션을 보려면 터미널에 man add-apt-repository를 입력합니다.

기본적으로 ubuntu 18.04 이상에서는 저장소 공용 키를 가져올 경우 add-apt-repository도 패키지 인덱스를 업데이트합니다.

패키지 색인은 시스템에서 활성화된 리포지토리에서 사용 가능한 패키지의 레코드를 보관하는 데이터베이스입니다.

 

MongoDB를 공식 리포지토리에 설치하려고 합니다.

먼저 저장소 공용 키를 가져옵니다.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4

 

 

아래 명령을 사용하여 MongoDB 저장소를 추가합니다.

sudo add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

 

 

저장소가 sources.list 파일에 추가됩니다.

이제 새로 사용하도록 설정된 리포지토리에서 다음 패키지를 설치할 수 있습니다.

sudo apt install mongodb-org

 

 

이전에 사용 가능으로 설정된 리포지토리를 제거하려면 --remove 옵션을 사용하십시오.

sudo add-apt-repository --remove 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

 

 

 

PPA 리포지토리를 추가

PPA(Personal Package Archives)는 Launchpad를 사용하여 구축 및 게시된 Ubuntu 원본 패키지를 적절한 리포지토리로 업로드할 수 있는 서비스입니다.

PPA 저장소를 추가할 때 add-apt-repository 명령은 /etc/apt/sources.list.d/ 디렉토리에 새 파일을 생성합니다.

예를 들어 FFmpeg 버전 4.x를 제공하는 Jonathon F의 PPA를 추가하려면 다음을 실행합니다.

메시지가 표시되면 Enter 키를 누릅니다. 저장소가 사용되도록 설정됩니다.

sudo add-apt-repository ppa:jonathonf/ffmpeg-4

# Press [ENTER] to continue or Ctrl-c to cancel adding it.

 

 

PPA 저장소 공용 키가 자동으로 다운로드 및 등록됩니다.

PPA가 시스템에 추가되면 다음 리포지토리 패키지를 설치할 수 있습니다.

sudo apt install ffmpeg

 

 

apt 명령은 패키지와 모든 종속성을 설치합니다.

 

 

수동으로 리포지토리를 추가

소스 구성 방식을 보다 세부적으로 제어하려면 /etc/apt/sources.list 파일을 수동으로 편집하고 해당 리포지토리 줄을 파일에 추가할 수 있습니다. 

데모를 위해 CouchDB 저장소를 활성화하고 소프트웨어를 설치합니다. CouchDB는 Apache Software Foundation에서 관리하는 무료 오픈 소스 무장애 NoSQL 데이터베이스입니다.

저장소를 추가하려면 텍스트 편집기로 sources.list 파일을 엽니다.

파일 끝에 저장소 줄을 추가합니다.

# /etc/apt/sources.list

deb https://apache.bintray.com/couchdb-deb bionic main

 

 

텍스트 편집기로 파일을 편집하는 대신 다음 명령을 사용하여 source.list 파일에 리포지토리 줄을 추가할 수 있습니다.

echo "deb https://apache.bintray.com/couchdb-deb $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list

 

 

$(lsb_release -cs)가 Ubuntu 코드 이름을 인쇄합니다. 예를 들어 Ubuntu 버전 18.04가 있는 경우 명령은 생체 공학(bionic)을 인쇄합니다.

또 다른 옵션은 /etc/apt/sources.list.d/ 디렉토리 아래에 새 리포지토리 파일을 생성하는 것입니다.

저장소를 수동으로 구성할 때는 공용 리포지토리 키도 수동으로 시스템에 가져와야 합니다. 그러려면 wget 또는 curling을 사용합니다.

curl -L https://couchdb.apache.org/repo/bintray-pubkey.asc | sudo apt-key add -

 

 

위의 명령은 확인을 출력해야 합니다. 즉, GPG 키를 성공적으로 가져왔으며 이 저장소의 패키지를 신뢰할 수 있는 것으로 간주합니다.

새로 추가된 리포지토리에서 패키지를 설치하기 전에 패키지 색인을 업데이트해야 합니다.

sudo apt update

 

 

패키지 인덱스가 업데이트되면 새로 추가된 리포지토리에서 패키지를 설치할 수 있습니다.

sudo apt install couchdb

 

 

지금까지 Ubuntu에서 적절한 리포지토리를 추가하는 방법을 살펴보았습니다. Kubuntu, Linux Mint 및 Elementary OS를 포함한 모든 Debian 기반 배포에도 동일한 지침이 적용됩니다.

반응형