태그 보관물: repository

repository

데비안 쉘에서 리포지토리를 추가하는 방법은 무엇입니까? 우분투에서는 다음 명령을 통해

우분투에서는 다음 명령을 통해 저장소를 추가 할 수 있습니다-

sudo add-apt-repository ppa:yannubuntu/boot-repair

우분투는 데비안 코드베이스를 기반으로하기 때문에 데비안에서도 동일하게 작동 할 것으로 기대했지만 그렇지 않습니다.

  • 그 이유는 무엇입니까?
  • 동일한 것을 달성하기 위해 사용할 수있는 다른 쉘 명령이 있습니까?

참고 : 편집 할 수 /etc/apt/sources.list는 있지만 쉘 에서이 작업을 수행하려고합니다. 또한 코드베이스가 동일 할 때 왜 같은 명령이 작동하지 않는지 알고 싶습니다.



답변

데비안 제시 이상 (2014-)

주석에서 @voltagex가 지적했듯이 이제 software-properties-common패키지 에서 찾을 수 있습니다 .

sudo apt-get install software-properties-common

데비안 위지와 그 이전 :

이 프로그램 add-apt-repository 데비안에서 사용할 수 있습니다. 그것은에서의 python-software-properties패키지 :

sudo apt-get install python-software-properties

버전 0.75에서 해당 패키지에 추가되었습니다. 데비안 스 테이블 ( ‘squeeze “)의 현재 버전은 0.60이므로 아직 가지고 있지 않습니다. 데비안 테스팅 (“wheezy “)의 현재 버전은 0.82.7.1debian1이므로 사용할 수 있습니다.


답변

Ancient가 아닌 버전의 데비안 (Etch 이상)을 실행한다고 가정하면 파일을 /etc/apt/sources.list.d/다음으로 삭제하면됩니다 . 파일 이름은 .list; 데비안 스트레치 (아직 출시되지 않은)는 .sources다른 형식으로 추가 될 것 입니다.

형식은 기본 sources.list 파일과 동일합니다.

장점은 특히 배포중인 일부 소프트웨어의 경우 변경 사항을 편집 가능한 /etc/apt/sources.list 파일에 병합 할 필요가 없다는 것입니다 (특히 프로그램이 제거됨). dpkgconffile 지원을 사용 하여 파일을에 넣을 수 있습니다 /etc/apt/sources.list.d/.


답변

add-apt-repositorysoftware-properties-common패키지 에서 찾을 수 있습니다 .


답변

우분투는 데비안을 기반으로하지만 데비안이 지원하지 않는 것들을 포함합니다. 이 add-apt-repository명령은 먼저 우분투에 포함 된 예입니다.

add-apt-repository실제로 단지 저장소를 추가 할 명령의 몇 가지를 실행합니다 :

  • 저장소를 추가 /etc/apt/sources.list
  • 머신에 저장소 키를 추가하십시오.

여기 에서 찾을 수있는 것과 같은 종류의 스크립트가 아래에 인용되어 있습니다.

#!/bin/bash
if [ $# -eq 1 ]
NM=$(uname -a && date)
NAME=$(echo $NM | md5sum | cut -f1 -d" ")
then
    ppa_name=$(echo "$1" | cut -d":" -f2 -s)
    if [ -z "$ppa_name" ]
    then
        echo "PPA name not found"
        echo "Utility to add PPA repositories in your debian machine"
        echo "$0 ppa:user/ppa-name"
    else
        echo "$ppa_name"
        echo "deb http://ppa.launchpad.net/$ppa_name/ubuntu lucid main" >> /etc/apt/sources.list
        apt-get update >> /dev/null 2> /tmp/${NAME}_apt_add_key.txt
        key=$(cat /tmp/${NAME}_apt_add_key.txt | cut -d":" -f6 | cut -d" " -f3)
        apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key
        rm -rf /tmp/${NAME}_apt_add_key.txt
    fi
else
    echo "Utility to add PPA repositories in your debian machine"
    echo "$0 ppa:user/ppa-name"
fi

답변