우분투에서는 다음 명령을 통해 저장소를 추가 할 수 있습니다-
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 파일에 병합 할 필요가 없다는 것입니다 (특히 프로그램이 제거됨). dpkg
conffile 지원을 사용 하여 파일을에 넣을 수 있습니다 /etc/apt/sources.list.d/
.
답변
add-apt-repository
software-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