Мне нужен source.list для ubuntu 17.04 [duplicate]

Я проанализировал источник программного обеспечения Ubuntu Software Center, написанный на python.

После этого я написал, что код работает хорошо. aptsources - это модуль python, используемый Ubuntu Software Center для управления /etc/apt/sources.list и /etc/apt/sources.list.d.

#!/usr/bin/python

import aptsources.sourceslist
from subprocess import Popen, PIPE
import errno

import os

def _lsb_release():
    """Call lsb_release --idrc and return a mapping."""
    result = {'Codename': 'sid', 'Distributor ID': 'Debian',
              'Description': 'Debian GNU/Linux unstable (sid)',
              'Release': 'unstable'}
    try:
        out = Popen(['lsb_release', '-idrc'], stdout=PIPE).communicate()[0]
        # Convert to unicode string, needed for Python 3.1
        out = out.decode("utf-8")
        result.update(l.split(":\t") for l in out.split("\n") if ':\t' in l)
    except OSError as exc:
        if exc.errno != errno.ENOENT:
            logging.warning('lsb_release failed, using defaults:' % exc)
    return result


if __name__ == "__main__":
    if len(os.sys.argv) != 3 or \
        os.sys.argv[1] not in ['enable', 'disable'] or \
        os.sys.argv[2] not in ['updates', 'security', 'proposed', 'backports', 'default']:
        print "Usage: apt-add-update <enable|disable> <default|updates|security|proposed|backports>"
        os.sys.exit(0)

    release = _lsb_release()
    codename = release['Codename']

    sourcelist = aptsources.sourceslist.SourcesList()

    template = None

    main_uri = ""
    main_comps = []
    main_types = []
    child_comps = []
    child_types = []

    for tmpl in sourcelist.matcher.templates:
        if tmpl.name == codename and tmpl.distribution == "Ubuntu":
            template = tmpl
            break

    updated = False

    for source in sourcelist.list:
        if source.invalid:
            continue
        for comp in source.comps:
            if comp not in child_comps:
                child_comps.append(comp)

        if source.template and source.template.official and source.dist == codename and source.template.name == codename:
            main_uri = source.uri

            for comp in source.comps:
                if comp not in main_comps:
                    main_comps.append(comp)

            main_types.append(source.type)
        else:
            child_types.append(source.type)

        if source.dist == codename + "-" + os.sys.argv[2]:
            if os.sys.argv[1] == 'enable' and source.type in main_types:
                source.set_enabled(True)
            if os.sys.argv[1] == 'disable':
                source.set_enabled(False)
            updated = True

        if source.dist == codename and os.sys.argv[2] == "default":
            if os.sys.argv[1] == 'enable' and source.type in child_types:
                source.set_enabled(True)
            if os.sys.argv[1] == 'disable':
                source.set_enabled(False)
            updated = True

    if not main_uri:
        main_uri = "http://archive.ubuntu.com/ubuntu"

    if os.sys.argv[2] == "default" and not main_comps:
        main_comps = child_comps

    if not main_comps:
        main_comps = ['main', 'restricted', 'universe', 'multiverse']

    if not updated and os.sys.argv[1] != 'disable':

        if os.sys.argv[2] == "default":
            uri = main_uri
            if tmpl.base_uri:
                uri = tmpl.base_uri

            tmpl = template
            line = tmpl.type + " " + uri + " " + tmpl.name + " " + " ".join(main_comps)

            sourceentry = aptsources.sourceslist.SourceEntry(line)
            sourcelist.list.append(sourceentry)


        for tmpl in template.children:
            if tmpl.name != codename + "-" + os.sys.argv[2] and \
                not (os.sys.argv[2] == "default" and tmpl.name == codename):
                continue

            if os.sys.argv[2] == "default" and tmpl.type not in child_types:
                continue

            if os.sys.argv[2] != "default" and tmpl.type not in main_types:
                continue

            uri = main_uri
            if tmpl.base_uri:
                uri = tmpl.base_uri
            if not uri:
                continue

            line = tmpl.type + " " + uri + " " + tmpl.name + " " + " ".join(main_comps)

            sourceentry = aptsources.sourceslist.SourceEntry(line)
            sourcelist.list.append(sourceentry)

    sourcelist.save()

Сохраните этот код с именем файла, /usr/local/bin/apt-add-update. Затем выполните следующую команду:

$ sudo apt-add-update <enable|disable> <default|updates|security|proposed|backports>

I Программный центр Ubuntu для поддержки нескольких дистрибутивов, например. trusty и wily.

#!/usr/bin/python

import aptsources.sourceslist
import os

subdistnames = ['updates', 'security', 'proposed', 'backports']

def get_subdistname(distname):
    rc = "default"
    try:
        rc = distname.split("-")[1]
    except:
        pass
    return rc

def get_distname(distname):
    rc = distname
    try:
        rc = distname.split("-")[0]
    except:
        pass
    return rc

def duplicate_check(entries):
    new_entries = []
    for source in entries:
        for newsource in new_entries:
            if source.type == newsource.type and source.uri == newsource.uri and source.dist == newsource.dist:
                for comp in newsource.comps:
                    if comp in source.comps:
                        source.comps.remove(comp)

        if len(source.comps) > 0:
            new_entries.append(source)
    return new_entries

if __name__ == "__main__":
    if len(os.sys.argv) != 3 or \
        os.sys.argv[1] not in ['enable', 'disable'] or \
        ( os.sys.argv[2] not in subdistnames and os.sys.argv[2] != 'default' ):
        print "Usage: apt-add-update <enable|disable> <default|updates|security|proposed|backports>"
        os.sys.exit(0)

    sourcelist = aptsources.sourceslist.SourcesList()
    sourcelist.list = []
    sourcelist.load('/etc/apt/sources.list')

    main_entries = []
    child_entries = []
    other_entries = []

    distro_names = []

    for tmpl in sourcelist.matcher.templates:
        if tmpl.name.find('-') > 0 or tmpl.distribution != "Ubuntu":
            continue
        distro_names.append(tmpl.name)

    for source in sourcelist.list:
        if source.invalid or source.disabled:
            continue
        subdistname = get_subdistname(source.dist)

        if source.dist in distro_names:
            main_entries.append(source)
        elif subdistname in subdistnames:
            child_entries.append(source)
        else:
            other_entries.append(source)

    if os.sys.argv[2] in subdistnames:
        modified = True
        while modified:
            modified = False
            for source in child_entries:
                if get_subdistname(source.dist) == os.sys.argv[2]:
                    child_entries.remove(source)
                    modified = True
                    continue

        if os.sys.argv[1] == "enable":
            for source in main_entries:
                uri = source.uri
                if os.sys.argv[2] == "security":
                    uri = "http://security.ubuntu.com/ubuntu"
                comps = []
                for i in source.comps:
                    if i in ['main', 'restricted', 'universe', 'multiverse']:
                        comps.append(i)
                line = source.type + " " + uri + " " + source.dist + "-" + os.sys.argv[2] + " " + " ".join(comps)
                sourceentry = aptsources.sourceslist.SourceEntry(line)
                child_entries.append(sourceentry)

    else:
        main_entries = []
        if os.sys.argv[1] == "enable":
            for source in child_entries:
                uri = source.uri
                if get_subdistname(source.dist) == "security":
                    uri = "http://archive.ubuntu.com/ubuntu"
                comps = []
                for i in source.comps:
                    if i in ['main', 'restricted', 'universe', 'multiverse']:
                        comps.append(i)
                line = source.type + " " + uri + " " + get_distname(source.dist) + " " + " ".join(comps)
                sourceentry = aptsources.sourceslist.SourceEntry(line)
                main_entries.append(sourceentry)

    main_entries = duplicate_check(main_entries)
    child_entries = duplicate_check(child_entries)
    other_entries = duplicate_check(other_entries)

    sourcelist.list = []
    sourcelist.list.extend(main_entries)
    sourcelist.list.extend(child_entries)
    sourcelist.list.extend(other_entries)

    sourcelist.save()

Справочный URL: https://github.com/dupingping/apt-add-update/tree/master

14
задан 13 April 2017 в 15:24

18 ответов

я не уверен, что ты хочешь, но:

родительский репозиторий всегда http://archive.ubuntu.com/ubuntu все остальное - зеркало. В остальные первичные зеркала все есть домен вида <cctld>.archive.ubuntu.com, где два персонажа короткий код является национальным доменом верхнего уровня. Вы можете найти дополнительные зеркала с их статусом в launchpad. Кодовое распределение является частью канала (третий термин). Вы можете использовать [F4] для того, чтобы выяснить это, и это первое слово освобождения красивое имя в Нижнем регистре (trusty для надежный Тар, например). Есть пять каналов: <codename>, <codename>-security, [F8] и [F9] и и <codename>-proposed. Первое необходимо, поскольку оно составляет основу, второй является очень рекомендуется, так как он содержит исправления, четвертый только если вам нужна пакете версии более новой версии, а пятый только если Разработчик просит Вас включить его для тестирования можно исправить. Существует четыре репозитория разделы: на [F11], multiverse, [от f13] и restricted (какая разница между мультивселенной, Вселенной, ограничена и главным?)

так что вы всегда сможете создать безопасный sources.list, который содержит только:

deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted

, если вы хотите команду для этого:

printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list

в дополнение к списку запуска, перечень предусмотренных программой источников программное обеспечение от /usr/share/python-apt/templates/Ubuntu.mirrors, которая находится в пакете [f17 в]. Этот пакет имеет только косвенное предполагает зависимость apt, поэтому он не может быть установлен по умолчанию на сервере.

17
ответ дан 18 July 2018 в 07:16

Я не уверен, что вы хотите, но:

Родительский репозиторий всегда http://archive.ubuntu.com/ubuntu - все остальное является зеркалом этого. Другие первичные зеркала имеют домен формы <cctld>.archive.ubuntu.com, где два коротких кода символов - это домен верхнего уровня кода страны. Вы можете найти дополнительные зеркала с их статусом на Launchpad. Кодовое имя распространения является частью канала (третий термин). Вы можете использовать lsb_release -sc, чтобы узнать это, и это первое слово красивого имени выпуска в нижнем регистре (например, trusty для Trusty Tahr). Существует пять каналов: <codename>, <codename>-security, <codename>-updates, <codename>-backports и <codename>-proposed. Первое необходимо, так как оно является базовым, второе настоятельно рекомендуется по мере того, как оно содержит исправления безопасности, четвертое - только если вам нужен пакет, переданный из более новой версии, а пятый - только если разработчик попросит вас включить его для тестирования возможного исправить. Существует четыре раздела репозитория: main, multiverse, universe и restricted (в чем разница между мультивселенной, юниверсом, ограниченным и основным?)

Таким образом, вы всегда можете создать безопасный sources.list, который содержит только:

deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted

Если вы хотите выполнить команду:

printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list

В дополнение к списку Launchpad, список, предоставленный программой «Источники программного обеспечения», указан из /usr/share/python-apt/templates/Ubuntu.mirrors, который находится в пакете python-apt-common. Этот пакет является лишь косвенной зависимостью от apt, поэтому он не может быть установлен по умолчанию на сервере.

17
ответ дан 24 July 2018 в 18:46

Я не уверен, что вы хотите, но:

  • Родительский репозиторий всегда http://archive.ubuntu.com/ubuntu - все остальное является зеркалом этого. Другие первичные зеркала имеют домен формы <cctld>.archive.ubuntu.com, где короткий короткий код символа - домен верхнего уровня кода страны . Вы можете найти дополнительные зеркала со своим статусом в Launchpad .
  • Кодовое имя распространения является частью канала (третий термин). Вы можете использовать lsb_release -sc , чтобы найти это, и это первое слово красивого имени выпуска в нижнем регистре (например, trusty для Trusty Tahr).
  • Существует пять каналов: <codename>, <codename>-security, <codename>-updates, <codename>-backports и <codename>-proposed. Первое необходимо, так как оно является базовым, второе настоятельно рекомендуется по мере того, как оно содержит исправления безопасности, четвертое - только если вам нужен пакет, переданный из более новой версии, а пятый - только если разработчик попросит вас включить его для тестирования возможного fix.
  • Существует четыре раздела репозитория: main, multiverse, universe и restricted (. В чем разница между мультивселенной, юниверсом, ограниченным и основным? )

Таким образом, вы всегда можете создать безопасный sources.list, который содержит только:

deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted
deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted

Если вы хотите, чтобы команда сделала это:

printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list

В дополнение к списку Launchpad список, предоставленный программой Software Sources, находится в /usr/share/python-apt/templates/Ubuntu.mirrors, который находится в пакете python-apt-common . Этот пакет является только косвенным предполагает зависимость apt , поэтому он не может быть установлен по умолчанию на сервере.

17
ответ дан 31 July 2018 в 21:51

Я не уверен, что вы хотите, но:

  • Родительский репозиторий всегда http://archive.ubuntu.com/ubuntu - все остальное является зеркалом этого. Другие первичные зеркала имеют домен формы <cctld>.archive.ubuntu.com, где короткий короткий код символа - домен верхнего уровня кода страны . Вы можете найти дополнительные зеркала со своим статусом в Launchpad .
  • Кодовое имя распространения является частью канала (третий термин). Вы можете использовать lsb_release -sc , чтобы найти это, и это первое слово красивого имени выпуска в нижнем регистре (например, trusty для Trusty Tahr).
  • Существует пять каналов: <codename>, <codename>-security, <codename>-updates, <codename>-backports и <codename>-proposed. Первое необходимо, так как оно является базовым, второе настоятельно рекомендуется по мере того, как оно содержит исправления безопасности, четвертое - только если вам нужен пакет, переданный из более новой версии, а пятый - только если разработчик попросит вас включить его для тестирования возможного fix.
  • Существует четыре раздела репозитория: main, multiverse, universe и restricted (. В чем разница между мультивселенной, юниверсом, ограниченным и основным? )

Таким образом, вы всегда можете создать безопасный sources.list, который содержит только:

deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted
deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted

Если вы хотите, чтобы команда сделала это:

printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list

В дополнение к списку Launchpad список, предоставленный программой Software Sources, находится в /usr/share/python-apt/templates/Ubuntu.mirrors, который находится в пакете python-apt-common . Этот пакет является только косвенным предполагает зависимость apt , поэтому он не может быть установлен по умолчанию на сервере.

17
ответ дан 2 August 2018 в 15:06

Я не уверен, что вы хотите, но:

  • Родительский репозиторий всегда http://archive.ubuntu.com/ubuntu - все остальное является зеркалом этого. Другие первичные зеркала имеют домен формы <cctld>.archive.ubuntu.com, где короткий короткий код символа - домен верхнего уровня кода страны . Вы можете найти дополнительные зеркала со своим статусом в Launchpad .
  • Кодовое имя распространения является частью канала (третий термин). Вы можете использовать lsb_release -sc , чтобы найти это, и это первое слово красивого имени выпуска в нижнем регистре (например, trusty для Trusty Tahr).
  • Существует пять каналов: <codename>, <codename>-security, <codename>-updates, <codename>-backports и <codename>-proposed. Первое необходимо, так как оно является базовым, второе настоятельно рекомендуется по мере того, как оно содержит исправления безопасности, четвертое - только если вам нужен пакет, переданный из более новой версии, а пятый - только если разработчик попросит вас включить его для тестирования возможного fix.
  • Существует четыре раздела репозитория: main, multiverse, universe и restricted (. В чем разница между мультивселенной, юниверсом, ограниченным и основным? )

Таким образом, вы всегда можете создать безопасный sources.list, который содержит только:

deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted
deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted

Если вы хотите, чтобы команда сделала это:

printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list

В дополнение к списку Launchpad список, предоставленный программой Software Sources, находится в /usr/share/python-apt/templates/Ubuntu.mirrors, который находится в пакете python-apt-common . Этот пакет является только косвенным предполагает зависимость apt , поэтому он не может быть установлен по умолчанию на сервере.

17
ответ дан 3 August 2018 в 19:12

Я не уверен, что вы хотите, но:

  • Родительский репозиторий всегда http://archive.ubuntu.com/ubuntu - все остальное является зеркалом этого. Другие первичные зеркала имеют домен формы <cctld>.archive.ubuntu.com, где короткий короткий код символа - домен верхнего уровня кода страны . Вы можете найти дополнительные зеркала со своим статусом в Launchpad .
  • Кодовое имя распространения является частью канала (третий термин). Вы можете использовать lsb_release -sc , чтобы найти это, и это первое слово красивого имени выпуска в нижнем регистре (например, trusty для Trusty Tahr).
  • Существует пять каналов: <codename>, <codename>-security, <codename>-updates, <codename>-backports и <codename>-proposed. Первое необходимо, так как оно является базовым, второе настоятельно рекомендуется по мере того, как оно содержит исправления безопасности, четвертое - только если вам нужен пакет, переданный из более новой версии, а пятый - только если разработчик попросит вас включить его для тестирования возможного fix.
  • Существует четыре раздела репозитория: main, multiverse, universe и restricted (. В чем разница между мультивселенной, юниверсом, ограниченным и основным? )

Таким образом, вы всегда можете создать безопасный sources.list, который содержит только:

deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted
deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted

Если вы хотите, чтобы команда сделала это:

printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list

В дополнение к списку Launchpad список, предоставленный программой Software Sources, находится в /usr/share/python-apt/templates/Ubuntu.mirrors, который находится в пакете python-apt-common . Этот пакет является только косвенным предполагает зависимость apt , поэтому он не может быть установлен по умолчанию на сервере.

17
ответ дан 5 August 2018 в 04:01

Я не уверен, что вы хотите, но:

  • Родительский репозиторий всегда http://archive.ubuntu.com/ubuntu - все остальное является зеркалом этого. Другие первичные зеркала имеют домен формы <cctld>.archive.ubuntu.com, где короткий короткий код символа - домен верхнего уровня кода страны . Вы можете найти дополнительные зеркала со своим статусом в Launchpad .
  • Кодовое имя распространения является частью канала (третий термин). Вы можете использовать lsb_release -sc , чтобы найти это, и это первое слово красивого имени выпуска в нижнем регистре (например, trusty для Trusty Tahr).
  • Существует пять каналов: <codename>, <codename>-security, <codename>-updates, <codename>-backports и <codename>-proposed. Первое необходимо, так как оно является базовым, второе настоятельно рекомендуется по мере того, как оно содержит исправления безопасности, четвертое - только если вам нужен пакет, переданный из более новой версии, а пятый - только если разработчик попросит вас включить его для тестирования возможного fix.
  • Существует четыре раздела репозитория: main, multiverse, universe и restricted (. В чем разница между мультивселенной, юниверсом, ограниченным и основным? )

Таким образом, вы всегда можете создать безопасный sources.list, который содержит только:

deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted
deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted

Если вы хотите, чтобы команда сделала это:

printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list

В дополнение к списку Launchpad список, предоставленный программой Software Sources, находится в /usr/share/python-apt/templates/Ubuntu.mirrors, который находится в пакете python-apt-common . Этот пакет является только косвенным предполагает зависимость apt , поэтому он не может быть установлен по умолчанию на сервере.

17
ответ дан 6 August 2018 в 21:00

Я не уверен, что вы хотите, но:

  • Родительский репозиторий всегда http://archive.ubuntu.com/ubuntu - все остальное является зеркалом этого. Другие первичные зеркала имеют домен формы <cctld>.archive.ubuntu.com, где короткий короткий код символа - домен верхнего уровня кода страны . Вы можете найти дополнительные зеркала со своим статусом в Launchpad .
  • Кодовое имя распространения является частью канала (третий термин). Вы можете использовать lsb_release -sc , чтобы найти это, и это первое слово красивого имени выпуска в нижнем регистре (например, trusty для Trusty Tahr).
  • Существует пять каналов: <codename>, <codename>-security, <codename>-updates, <codename>-backports и <codename>-proposed. Первое необходимо, так как оно является базовым, второе настоятельно рекомендуется по мере того, как оно содержит исправления безопасности, четвертое - только если вам нужен пакет, переданный из более новой версии, а пятый - только если разработчик попросит вас включить его для тестирования возможного fix.
  • Существует четыре раздела репозитория: main, multiverse, universe и restricted (. В чем разница между мультивселенной, юниверсом, ограниченным и основным? )

Таким образом, вы всегда можете создать безопасный sources.list, который содержит только:

deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted
deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted

Если вы хотите, чтобы команда сделала это:

printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list

В дополнение к списку Launchpad список, предоставленный программой Software Sources, находится в /usr/share/python-apt/templates/Ubuntu.mirrors, который находится в пакете python-apt-common . Этот пакет является только косвенным предполагает зависимость apt , поэтому он не может быть установлен по умолчанию на сервере.

17
ответ дан 9 August 2018 в 01:30

Я не уверен, что вы хотите, но:

  • Родительский репозиторий всегда http://archive.ubuntu.com/ubuntu - все остальное является зеркалом этого. Другие первичные зеркала имеют домен формы <cctld>.archive.ubuntu.com, где короткий короткий код символа - домен верхнего уровня кода страны . Вы можете найти дополнительные зеркала со своим статусом в Launchpad .
  • Кодовое имя распространения является частью канала (третий термин). Вы можете использовать lsb_release -sc , чтобы найти это, и это первое слово красивого имени выпуска в нижнем регистре (например, trusty для Trusty Tahr).
  • Существует пять каналов: <codename>, <codename>-security, <codename>-updates, <codename>-backports и <codename>-proposed. Первое необходимо, так как оно является базовым, второе настоятельно рекомендуется по мере того, как оно содержит исправления безопасности, четвертое - только если вам нужен пакет, переданный из более новой версии, а пятый - только если разработчик попросит вас включить его для тестирования возможного fix.
  • Существует четыре раздела репозитория: main, multiverse, universe и restricted (. В чем разница между мультивселенной, юниверсом, ограниченным и основным? )

Таким образом, вы всегда можете создать безопасный sources.list, который содержит только:

deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted
deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted

Если вы хотите, чтобы команда сделала это:

printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list

В дополнение к списку Launchpad список, предоставленный программой Software Sources, находится в /usr/share/python-apt/templates/Ubuntu.mirrors, который находится в пакете python-apt-common . Этот пакет является только косвенным предполагает зависимость apt , поэтому он не может быть установлен по умолчанию на сервере.

17
ответ дан 14 August 2018 в 19:39
  • 1
    Это именно то, что я хотел прояснить. Спасибо! – Ryan Burnette 19 February 2015 в 03:47
  • 2
    это отлично отвечает за сообщения обеих сторон (одно связанное и это) – Brian Thomas 16 August 2016 в 05:37

Если вы понимаете, что означает каждая строка в /etc/apt/sources.list, вы можете создать свой собственный список. Например, строка в моей sources.list есть,

deb http://archive.ubuntu.com/ubuntu/ trusty main

Она имеет 4 раздела:

Раздел 1: здесь первый раздел deb, что означает, что это репозиторий всех двоичных пакетов. только другое возможное значение - deb-src, что означает его хранилище исходных кодов. Раздел 2. Этот раздел содержит URI репозитория (http://us.archive.ubuntu.com/ubuntu/ в этом случае). URI может изменяться для зеркал, например. если вы хотите использовать официальное зеркало США, то URI будет http://us.archive.ubuntu.com/ubuntu/. Раздел 3: Он содержит кодовое имя (и название канала) выпуска, который вы используете, в данном случае trusty, который является кодовым именем моей версии Ubuntu (14.04 LTS). вы можете найти свой lsb_release -sc. Например, если вы используете 12.04, кодовое имя будет «точным». Теперь, чтобы объявить другие каналы, например. для объявления канала безопасности, который вы должны использовать trusty-security. Раздел 4: Этот раздел содержит «имена разделов» в репозитории. Обычно используется 4 названия разделов: main, restricted, universe, multiverse. Вы можете поместить все имена разделов в одну строку объявления репозитория или вы можете использовать разные строки для каждого из разделов, но не должно быть дубликатов. Если вы прочитаете /etc/apt/sources.list, вы увидите описание пакетов, в которых содержится каждый из этих разделов.
6
ответ дан 18 July 2018 в 07:16

Если вы понимаете, что означает каждая строка в /etc/apt/sources.list, вы можете создать свой собственный список. Например, строка в моей sources.list есть,

deb http://archive.ubuntu.com/ubuntu/ trusty main

Она имеет 4 раздела:

Раздел 1: здесь первый раздел deb, что означает, что это репозиторий всех двоичных пакетов. только другое возможное значение - deb-src, что означает его хранилище исходных кодов. Раздел 2. Этот раздел содержит URI репозитория (http://us.archive.ubuntu.com/ubuntu/ в этом случае). URI может изменяться для зеркал, например. если вы хотите использовать официальное зеркало США, то URI будет http://us.archive.ubuntu.com/ubuntu/. Раздел 3: Он содержит кодовое имя (и название канала) выпуска, который вы используете, в данном случае trusty, который является кодовым именем моей версии Ubuntu (14.04 LTS). вы можете найти свой lsb_release -sc. Например, если вы используете 12.04, кодовое имя будет «точным». Теперь, чтобы объявить другие каналы, например. для объявления канала безопасности, который вы должны использовать trusty-security. Раздел 4: Этот раздел содержит «имена разделов» в репозитории. Обычно используется 4 названия разделов: main, restricted, universe, multiverse. Вы можете поместить все имена разделов в одну строку объявления репозитория или вы можете использовать разные строки для каждого из разделов, но не должно быть дубликатов. Если вы прочитаете /etc/apt/sources.list, вы увидите описание пакетов, в которых содержится каждый из этих разделов.
6
ответ дан 24 July 2018 в 18:46

Если вы понимаете, что означает каждая строка в /etc/apt/sources.list, вы можете создать свой собственный список. Например, строка в моей sources.list есть,

deb http://archive.ubuntu.com/ubuntu/ trusty main

Она имеет 4 раздела:

  • Раздел 1: здесь первый раздел deb, что означает, что это является хранилищем всех двоичных пакетов. только другое возможное значение - deb-src, что означает его репозиторий исходных кодов.
  • Раздел 2: Этот раздел содержит URI репозитория ( http://us.archive.ubuntu.com / ubuntu / в этом случае). URI может изменяться для зеркал, например. если вы хотите использовать официальное зеркало США, то URI будет http://us.archive.ubuntu.com/ubuntu/ .
  • Раздел 3: Он содержит кодовое имя (и название канала) используемой версии, в данном случае trusty, которая является кодовым названием моей версии Ubuntu (14.04 LTS). вы можете найти свой lsb_release -sc. Например, если вы используете 12.04, кодовое имя будет «точным». Теперь, чтобы объявить другие каналы, например. для объявления канала безопасности, который вы должны использовать trusty-security.
  • Раздел 4: Этот раздел содержит «имена разделов» в репозитории. Обычно используется 4 названия разделов: main, restricted, universe, multiverse. Вы можете поместить все имена разделов в одну строку объявления репозитория или вы можете использовать разные строки для каждого из разделов, но не должно быть дубликатов. Если вы прочитаете /etc/apt/sources.list, вы увидите описание пакетов, в которых содержится каждый из этих разделов.
6
ответ дан 31 July 2018 в 21:51

Если вы понимаете, что означает каждая строка в /etc/apt/sources.list, вы можете создать свой собственный список. Например, строка в моей sources.list есть,

deb http://archive.ubuntu.com/ubuntu/ trusty main

Она имеет 4 раздела:

  • Раздел 1: здесь первый раздел deb, что означает, что это является хранилищем всех двоичных пакетов. только другое возможное значение - deb-src, что означает его репозиторий исходных кодов.
  • Раздел 2: Этот раздел содержит URI репозитория ( http://us.archive.ubuntu.com / ubuntu / в этом случае). URI может изменяться для зеркал, например. если вы хотите использовать официальное зеркало США, то URI будет http://us.archive.ubuntu.com/ubuntu/ .
  • Раздел 3: Он содержит кодовое имя (и название канала) используемой версии, в данном случае trusty, которая является кодовым названием моей версии Ubuntu (14.04 LTS). вы можете найти свой lsb_release -sc. Например, если вы используете 12.04, кодовое имя будет «точным». Теперь, чтобы объявить другие каналы, например. для объявления канала безопасности, который вы должны использовать trusty-security.
  • Раздел 4: Этот раздел содержит «имена разделов» в репозитории. Обычно используется 4 названия разделов: main, restricted, universe, multiverse. Вы можете поместить все имена разделов в одну строку объявления репозитория или вы можете использовать разные строки для каждого из разделов, но не должно быть дубликатов. Если вы прочитаете /etc/apt/sources.list, вы увидите описание пакетов, в которых содержится каждый из этих разделов.
6
ответ дан 2 August 2018 в 15:06

Если вы понимаете, что означает каждая строка в /etc/apt/sources.list, вы можете создать свой собственный список. Например, строка в моей sources.list есть,

deb http://archive.ubuntu.com/ubuntu/ trusty main

Она имеет 4 раздела:

  • Раздел 1: здесь первый раздел deb, что означает, что это является хранилищем всех двоичных пакетов. только другое возможное значение - deb-src, что означает его репозиторий исходных кодов.
  • Раздел 2: Этот раздел содержит URI репозитория ( http://us.archive.ubuntu.com / ubuntu / в этом случае). URI может изменяться для зеркал, например. если вы хотите использовать официальное зеркало США, то URI будет http://us.archive.ubuntu.com/ubuntu/ .
  • Раздел 3: Он содержит кодовое имя (и название канала) используемой версии, в данном случае trusty, которая является кодовым названием моей версии Ubuntu (14.04 LTS). вы можете найти свой lsb_release -sc. Например, если вы используете 12.04, кодовое имя будет «точным». Теперь, чтобы объявить другие каналы, например. для объявления канала безопасности, который вы должны использовать trusty-security.
  • Раздел 4: Этот раздел содержит «имена разделов» в репозитории. Обычно используется 4 названия разделов: main, restricted, universe, multiverse. Вы можете поместить все имена разделов в одну строку объявления репозитория или вы можете использовать разные строки для каждого из разделов, но не должно быть дубликатов. Если вы прочитаете /etc/apt/sources.list, вы увидите описание пакетов, в которых содержится каждый из этих разделов.
6
ответ дан 3 August 2018 в 19:12

Если вы понимаете, что означает каждая строка в /etc/apt/sources.list, вы можете создать свой собственный список. Например, строка в моей sources.list есть,

deb http://archive.ubuntu.com/ubuntu/ trusty main

Она имеет 4 раздела:

  • Раздел 1: здесь первый раздел deb, что означает, что это является хранилищем всех двоичных пакетов. только другое возможное значение - deb-src, что означает его репозиторий исходных кодов.
  • Раздел 2: Этот раздел содержит URI репозитория ( http://us.archive.ubuntu.com / ubuntu / в этом случае). URI может изменяться для зеркал, например. если вы хотите использовать официальное зеркало США, то URI будет http://us.archive.ubuntu.com/ubuntu/ .
  • Раздел 3: Он содержит кодовое имя (и название канала) используемой версии, в данном случае trusty, которая является кодовым названием моей версии Ubuntu (14.04 LTS). вы можете найти свой lsb_release -sc. Например, если вы используете 12.04, кодовое имя будет «точным». Теперь, чтобы объявить другие каналы, например. для объявления канала безопасности, который вы должны использовать trusty-security.
  • Раздел 4: Этот раздел содержит «имена разделов» в репозитории. Обычно используется 4 названия разделов: main, restricted, universe, multiverse. Вы можете поместить все имена разделов в одну строку объявления репозитория или вы можете использовать разные строки для каждого из разделов, но не должно быть дубликатов. Если вы прочитаете /etc/apt/sources.list, вы увидите описание пакетов, в которых содержится каждый из этих разделов.
6
ответ дан 5 August 2018 в 04:01

Если вы понимаете, что означает каждая строка в /etc/apt/sources.list, вы можете создать свой собственный список. Например, строка в моей sources.list есть,

deb http://archive.ubuntu.com/ubuntu/ trusty main

Она имеет 4 раздела:

  • Раздел 1: здесь первый раздел deb, что означает, что это является хранилищем всех двоичных пакетов. только другое возможное значение - deb-src, что означает его репозиторий исходных кодов.
  • Раздел 2: Этот раздел содержит URI репозитория ( http://us.archive.ubuntu.com / ubuntu / в этом случае). URI может изменяться для зеркал, например. если вы хотите использовать официальное зеркало США, то URI будет http://us.archive.ubuntu.com/ubuntu/ .
  • Раздел 3: Он содержит кодовое имя (и название канала) используемой версии, в данном случае trusty, которая является кодовым названием моей версии Ubuntu (14.04 LTS). вы можете найти свой lsb_release -sc. Например, если вы используете 12.04, кодовое имя будет «точным». Теперь, чтобы объявить другие каналы, например. для объявления канала безопасности, который вы должны использовать trusty-security.
  • Раздел 4: Этот раздел содержит «имена разделов» в репозитории. Обычно используется 4 названия разделов: main, restricted, universe, multiverse. Вы можете поместить все имена разделов в одну строку объявления репозитория или вы можете использовать разные строки для каждого из разделов, но не должно быть дубликатов. Если вы прочитаете /etc/apt/sources.list, вы увидите описание пакетов, в которых содержится каждый из этих разделов.
6
ответ дан 6 August 2018 в 21:00

Если вы понимаете, что означает каждая строка в /etc/apt/sources.list, вы можете создать свой собственный список. Например, строка в моей sources.list есть,

deb http://archive.ubuntu.com/ubuntu/ trusty main

Она имеет 4 раздела:

  • Раздел 1: здесь первый раздел deb, что означает, что это является хранилищем всех двоичных пакетов. только другое возможное значение - deb-src, что означает его репозиторий исходных кодов.
  • Раздел 2: Этот раздел содержит URI репозитория ( http://us.archive.ubuntu.com / ubuntu / в этом случае). URI может изменяться для зеркал, например. если вы хотите использовать официальное зеркало США, то URI будет http://us.archive.ubuntu.com/ubuntu/ .
  • Раздел 3: Он содержит кодовое имя (и название канала) используемой версии, в данном случае trusty, которая является кодовым названием моей версии Ubuntu (14.04 LTS). вы можете найти свой lsb_release -sc. Например, если вы используете 12.04, кодовое имя будет «точным». Теперь, чтобы объявить другие каналы, например. для объявления канала безопасности, который вы должны использовать trusty-security.
  • Раздел 4: Этот раздел содержит «имена разделов» в репозитории. Обычно используется 4 названия разделов: main, restricted, universe, multiverse. Вы можете поместить все имена разделов в одну строку объявления репозитория или вы можете использовать разные строки для каждого из разделов, но не должно быть дубликатов. Если вы прочитаете /etc/apt/sources.list, вы увидите описание пакетов, в которых содержится каждый из этих разделов.
6
ответ дан 9 August 2018 в 01:30

Если вы понимаете, что означает каждая строка в /etc/apt/sources.list, вы можете создать свой собственный список. Например, строка в моей sources.list есть,

deb http://archive.ubuntu.com/ubuntu/ trusty main

Она имеет 4 раздела:

  • Раздел 1: здесь первый раздел deb, что означает, что это является хранилищем всех двоичных пакетов. только другое возможное значение - deb-src, что означает его репозиторий исходных кодов.
  • Раздел 2: Этот раздел содержит URI репозитория ( http://us.archive.ubuntu.com / ubuntu / в этом случае). URI может изменяться для зеркал, например. если вы хотите использовать официальное зеркало США, то URI будет http://us.archive.ubuntu.com/ubuntu/ .
  • Раздел 3: Он содержит кодовое имя (и название канала) используемой версии, в данном случае trusty, которая является кодовым названием моей версии Ubuntu (14.04 LTS). вы можете найти свой lsb_release -sc. Например, если вы используете 12.04, кодовое имя будет «точным». Теперь, чтобы объявить другие каналы, например. для объявления канала безопасности, который вы должны использовать trusty-security.
  • Раздел 4: Этот раздел содержит «имена разделов» в репозитории. Обычно используется 4 названия разделов: main, restricted, universe, multiverse. Вы можете поместить все имена разделов в одну строку объявления репозитория или вы можете использовать разные строки для каждого из разделов, но не должно быть дубликатов. Если вы прочитаете /etc/apt/sources.list, вы увидите описание пакетов, в которых содержится каждый из этих разделов.
6
ответ дан 14 August 2018 в 19:39

Другие вопросы по тегам:

Похожие вопросы: