डेबियन में शेल से भंडार कैसे जोड़ें?


141

Ubuntu में एक निम्नलिखित आदेश के माध्यम से एक भंडार जोड़ सकते हैं -

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

जैसा कि उबंटू डेबियन कोड आधार पर आधारित है, मैं उम्मीद कर रहा था कि वही डेबियन में भी काम करेगा, लेकिन ऐसा नहीं है।

  • इसका कारण क्या है?
  • क्या कुछ अन्य शेल कमांड हैं जिन्हें मैं समान प्राप्त करने के लिए उपयोग कर सकता हूं?

नोट: मुझे पता है कि मैं संपादित कर सकता हूं /etc/apt/sources.list, लेकिन मैं इसे शेल से हासिल करना चाहता हूं। मैं यह भी जानना चाहता हूं कि जब कोड आधार समान होगा तो वही कमांड काम क्यों नहीं करेगा।

जवाबों:


182

डेबियन जेसी और बाद में (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 संस्करण में उस पैकेज में जोड़ा गया था। डेबियन स्टेबल ('निचोड़') का वर्तमान संस्करण 0.60 है, इसलिए यह इसमें नहीं है। वर्तमान में डेबियन परीक्षण ("wheezy") में संस्करण 0.82.7.1debian1 है, इसलिए यह वहां उपलब्ध है।


9
कम से कम साइड में, ऐड-ऑप-रिपॉजिटरी स्क्रिप्ट सॉफ़्टवेयर-गुण-सामान्य में स्थानांतरित हो गई है
एडम बैक्सटर

संस्करण 0.92 अजगर-सॉफ्टवेयर-गुणों के यहाँ, और (फिर से) गायब :-(
गैटोपिच

3
अपने ऊपर टिप्पणी देखें - यह अब में हैsoftware-properties-common
जिम पेरिस

बाधाओं हालांकि अद्यतन करने के लिए किया था
peterretief

17

यह मानते हुए कि आप डेबियन (Etch या बाद के संस्करण) का एक गैर-प्राचीन संस्करण चला रहे हैं, आप सिर्फ एक फ़ाइल को छोड़ सकते हैं जिसमें /etc/apt/sources.list.d/फ़ाइल नाम समाप्त हो सकता है .list; डेबियन स्ट्रेच (अभी तक जारी नहीं) .sourcesएक अलग प्रारूप के साथ जोड़ देगा ।

प्रारूप मुख्य स्रोतों की सूची के समान है। फ़ाइल।

लाभ, विशेष रूप से अगर यह आपके द्वारा वितरित किए जा रहे कुछ सॉफ़्टवेयर के लिए है, तो आपको अपने परिवर्तनों को संभवतः-संपादित /etc/apt/source.list फ़ाइल में विलय करने की आवश्यकता नहीं है (यदि आपका प्रोग्राम है तो इससे निपटने के लिए विशेष रूप से कठिन है) अनइंस्टॉल)। dpkgफ़ाइल को डालने के लिए आप कंफिल का सहारा ले सकते हैं /etc/apt/sources.list.d/


sources.list.dईच के बाद से मौजूद है, मुझे लगता है।
गिल्स

1
हाँ, लेकिन apt-add-repositoryएक http://ppa.launchpad...प्रकार से "ppa:" का अनुवाद करने और रिपॉजिटरी कुंजी को डाउनलोड करने और स्थापित करने जैसी चीज़ों का ध्यान रखता है ताकि पैकेज को संदिग्ध न
समझा जाए

@ मुझे लगता है कि आप सही हैं - यह मेरे पास एक सर्ज मशीन पर नहीं है, और एक ईच मशीन पर है।
derobert

13

add-apt-repositoryअब software-properties-commonपैकेज में पाया जा सकता है ।


@rbaleksandar यह सभी विकृतियों में नहीं है क्योंकि इसमें बहुत सारी अतिरिक्त चीजें हैं जो आप नहीं चाहते हैं, खासकर डॉकटर में। चूंकि इस कार्य का अंतिम लक्ष्य कुछ जोड़ना है /etc/apt/sources.list, इसलिए आप इस प्रश्न में @Goez के उत्तर को देख सकते हैं।
माइक डी

8

उबंटू डेबियन पर आधारित है, लेकिन इसमें डेबियन नहीं (बाद में अक्सर डेबियन में शामिल किया गया है) चीजें शामिल हैं। 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

अपने डेबियन डिस्ट्रो में ppa repo का उपयोग करने की अनुशंसा नहीं की जाती है। वहाँ प्रतिष्ठानों कि बनाने के बारे में कोई नियंत्रण नहीं है।
फ्रांसिस रोड्रिग्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.