Как добавить репозиторий, но только для определенного пакета / версии и ее зависимостей?

Я хотел бы использовать репозиторий Natty Narwhal для кукольных пакетов, но я не хочу обновлять весь свой сервер. Возможно ли это?

Мое текущее решение - извлечь пакеты .deb вручную

5
задан 18 August 2011 в 18:16

7 ответов

Pinning - это усовершенствованная технология управления пакетами, которая позволяет вам оставаться на стабильном выпуске, захватывая пакеты из более новой версии. Смешивание репозиториев не поддерживается и может вызвать у вас проблемы, если пакет, который вы хотите, был скомпилирован в разных версиях библиотеки, чем в вашей системе. Если возможно, вы должны сначала попробовать получить пакет из репозитория backports (или, возможно, хорошо поддерживаемого PPA). Тем не менее, вы, кажется, уже знаете, что puppet из Natty хорошо работает в вашей системе.

Чтобы связать puppet с natty-версией, нам нужно будет отредактировать несколько файлов. Сначала вам нужно будет установить версию по умолчанию в /etc/apt/apt.conf.d/01ubuntu (я предполагаю, что вы используете lucid, очевидно, заменяете фактический выпуск):

APT { Default-Release "lucid"; };

Затем вам нужно добавить natty к вашему /etc/apt/sources.list или создать новый файл /etc/apt/sources.list.d/natty.sources.list со следующими источниками:

deb http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse

Затем вам нужно установить «Приоритет Pin» для пакета puppet от Natty выше приоритета для выпуска по умолчанию. Установка версии по умолчанию в /etc/apt/apt.conf.d/01ubuntu по существу устанавливает приоритет для всех пакетов, начиная с этой версии, до 990. Поэтому в /etc/apt/preferences нам нужно перегрузить это для puppet, используя что-то более высокое, например:

Package: puppet Pin: release n=natty Pin-Priority: 995

Теперь вам просто нужно запустить и apt-get update && apt-get upgrade

4
ответ дан 25 July 2018 в 22:26
  • 1
    Это хорошо сработало для меня, но все же оставило репозиции, обновленные в будущем, я должен был добавить с «500». приоритет, который я все еще считаю слишком высоким. Я попытался выровнять все, ЗА ИСКЛЮЧЕНИЕМ того, что мне нужно было ниже, используя Package: * Pin: release n=yakkety Pin-Priority: 400, но это, похоже, не работает. Также я думаю, что стоит сделать сухую установку пакетов, которые вы хотите от нового репо, чтобы узнать, нужно ли обновлять любые другие зависимые пакеты. Затем вы можете отметить их и пробел - отделить их в разделе «Пакет: & quot; строка файла настроек. – Scott 21 April 2017 в 20:59

Pinning - это усовершенствованная технология управления пакетами, которая позволяет вам оставаться на стабильном выпуске, захватывая пакеты из более новой версии. Смешивание репозиториев не поддерживается и может вызвать у вас проблемы, если пакет, который вы хотите, был скомпилирован в разных версиях библиотеки, чем в вашей системе. Если возможно, вы должны сначала попробовать получить пакет из репозитория backports (или, возможно, хорошо поддерживаемого PPA). Тем не менее, вы, кажется, уже знаете, что puppet из Natty хорошо работает в вашей системе.

Чтобы связать puppet с natty-версией, нам нужно будет отредактировать несколько файлов. Сначала вам нужно будет установить версию по умолчанию в /etc/apt/apt.conf.d/01ubuntu (я предполагаю, что вы используете lucid, очевидно, заменяете фактический выпуск):

APT { Default-Release "lucid"; };

Затем вам нужно добавить natty к вашему /etc/apt/sources.list или создать новый файл /etc/apt/sources.list.d/natty.sources.list со следующими источниками:

deb http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse

Затем вам нужно установить «Приоритет Pin» для пакета puppet от Natty выше приоритета для выпуска по умолчанию. Установка версии по умолчанию в /etc/apt/apt.conf.d/01ubuntu по существу устанавливает приоритет для всех пакетов, начиная с этой версии, до 990. Поэтому в /etc/apt/preferences нам нужно перегрузить это для puppet, используя что-то более высокое, например:

Package: puppet Pin: release n=natty Pin-Priority: 995

Теперь вам просто нужно запустить и apt-get update && apt-get upgrade

4
ответ дан 26 July 2018 в 21:36
  • 1
    Это хорошо сработало для меня, но все же оставило репозиции, обновленные в будущем, я должен был добавить с «500». приоритет, который я все еще считаю слишком высоким. Я попытался выровнять все, ЗА ИСКЛЮЧЕНИЕМ того, что мне нужно было ниже, используя Package: * Pin: release n=yakkety Pin-Priority: 400, но это, похоже, не работает. Также я думаю, что стоит сделать сухую установку пакетов, которые вы хотите от нового репо, чтобы узнать, нужно ли обновлять любые другие зависимые пакеты. Затем вы можете отметить их и пробел - отделить их в разделе «Пакет: & quot; строка файла настроек. – Scott 21 April 2017 в 20:59

Pinning - это усовершенствованная технология управления пакетами, которая позволяет вам оставаться на стабильном выпуске, захватывая пакеты из более новой версии. Смешивание репозиториев не поддерживается и может вызвать у вас проблемы, если пакет, который вы хотите, был скомпилирован в разных версиях библиотеки, чем в вашей системе. Если возможно, вы должны сначала попробовать получить пакет из репозитория backports (или, возможно, хорошо поддерживаемого PPA). Тем не менее, вы, кажется, уже знаете, что puppet из Natty хорошо работает в вашей системе.

Чтобы связать puppet с natty-версией, нам нужно будет отредактировать несколько файлов. Сначала вам нужно будет установить версию по умолчанию в /etc/apt/apt.conf.d/01ubuntu (я предполагаю, что вы используете lucid, очевидно, заменяете фактический выпуск):

APT { Default-Release "lucid"; };

Затем вам нужно добавить natty к вашему /etc/apt/sources.list или создать новый файл /etc/apt/sources.list.d/natty.sources.list со следующими источниками:

deb http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse

Затем вам нужно установить «Приоритет Pin» для пакета puppet от Natty выше приоритета для выпуска по умолчанию. Установка версии по умолчанию в /etc/apt/apt.conf.d/01ubuntu по существу устанавливает приоритет для всех пакетов, начиная с этой версии, до 990. Поэтому в /etc/apt/preferences нам нужно перегрузить это для puppet, используя что-то более высокое, например:

Package: puppet Pin: release n=natty Pin-Priority: 995

Теперь вам просто нужно запустить и apt-get update && apt-get upgrade

4
ответ дан 31 July 2018 в 12:35
  • 1
    Это хорошо сработало для меня, но все же оставило репозиции, обновленные в будущем, я должен был добавить с «500». приоритет, который я все еще считаю слишком высоким. Я попытался выровнять все, ЗА ИСКЛЮЧЕНИЕМ того, что мне нужно было ниже, используя Package: * Pin: release n=yakkety Pin-Priority: 400, но это, похоже, не работает. Также я думаю, что стоит сделать сухую установку пакетов, которые вы хотите от нового репо, чтобы узнать, нужно ли обновлять любые другие зависимые пакеты. Затем вы можете отметить их и пробел - отделить их в разделе «Пакет: & quot; строка файла настроек. – Scott 21 April 2017 в 20:59

Pinning - это усовершенствованная технология управления пакетами, которая позволяет вам оставаться на стабильном выпуске, захватывая пакеты из более новой версии. Смешивание репозиториев не поддерживается и может вызвать у вас проблемы, если пакет, который вы хотите, был скомпилирован в разных версиях библиотеки, чем в вашей системе. Если возможно, вы должны сначала попробовать получить пакет из репозитория backports (или, возможно, хорошо поддерживаемого PPA). Тем не менее, вы, кажется, уже знаете, что puppet из Natty хорошо работает в вашей системе.

Чтобы связать puppet с natty-версией, нам нужно будет отредактировать несколько файлов. Сначала вам нужно будет установить версию по умолчанию в /etc/apt/apt.conf.d/01ubuntu (я предполагаю, что вы используете lucid, очевидно, заменяете фактический выпуск):

APT { Default-Release "lucid"; };

Затем вам нужно добавить natty к вашему /etc/apt/sources.list или создать новый файл /etc/apt/sources.list.d/natty.sources.list со следующими источниками:

deb http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse

Затем вам нужно установить «Приоритет Pin» для пакета puppet от Natty выше приоритета для выпуска по умолчанию. Установка версии по умолчанию в /etc/apt/apt.conf.d/01ubuntu по существу устанавливает приоритет для всех пакетов, начиная с этой версии, до 990. Поэтому в /etc/apt/preferences нам нужно перегрузить это для puppet, используя что-то более высокое, например:

Package: puppet Pin: release n=natty Pin-Priority: 995

Теперь вам просто нужно запустить и apt-get update && apt-get upgrade

4
ответ дан 2 August 2018 в 03:53
  • 1
    Это хорошо сработало для меня, но все же оставило репозиции, обновленные в будущем, я должен был добавить с «500». приоритет, который я все еще считаю слишком высоким. Я попытался выровнять все, ЗА ИСКЛЮЧЕНИЕМ того, что мне нужно было ниже, используя Package: * Pin: release n=yakkety Pin-Priority: 400, но это, похоже, не работает. Также я думаю, что стоит сделать сухую установку пакетов, которые вы хотите от нового репо, чтобы узнать, нужно ли обновлять другие зависимые пакеты. Затем вы можете отметить их и пробел - отделить их в разделе «Пакет: & quot; строка файла настроек. – Scott 21 April 2017 в 20:59

Pinning - это усовершенствованная технология управления пакетами, которая позволяет вам оставаться на стабильном выпуске, захватывая пакеты из более новой версии. Смешивание репозиториев не поддерживается и может вызвать у вас проблемы, если пакет, который вы хотите, был скомпилирован в разных версиях библиотеки, чем в вашей системе. Если возможно, вы должны сначала попробовать получить пакет из репозитория backports (или, возможно, хорошо поддерживаемого PPA). Тем не менее, вы, кажется, уже знаете, что puppet из Natty хорошо работает в вашей системе.

Чтобы связать puppet с natty-версией, нам нужно будет отредактировать несколько файлов. Сначала вам нужно будет установить версию по умолчанию в /etc/apt/apt.conf.d/01ubuntu (я предполагаю, что вы используете lucid, очевидно, заменяете фактический выпуск):

APT { Default-Release "lucid"; };

Затем вам нужно добавить natty к вашему /etc/apt/sources.list или создать новый файл /etc/apt/sources.list.d/natty.sources.list со следующими источниками:

deb http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse

Затем вам нужно установить «Приоритет Pin» для пакета puppet от Natty выше приоритета для выпуска по умолчанию. Установка версии по умолчанию в /etc/apt/apt.conf.d/01ubuntu по существу устанавливает приоритет для всех пакетов, начиная с этой версии, до 990. Поэтому в /etc/apt/preferences нам нужно перегрузить это для puppet, используя что-то более высокое, например:

Package: puppet Pin: release n=natty Pin-Priority: 995

Теперь вам просто нужно запустить и apt-get update && apt-get upgrade

4
ответ дан 4 August 2018 в 19:57
  • 1
    Это хорошо сработало для меня, но все же оставило репозиции, обновленные в будущем, я должен был добавить с «500». приоритет, который я все еще считаю слишком высоким. Я попытался выровнять все, ЗА ИСКЛЮЧЕНИЕМ того, что мне нужно было ниже, используя Package: * Pin: release n=yakkety Pin-Priority: 400, но это, похоже, не работает. Также я думаю, что стоит сделать сухую установку пакетов, которые вы хотите от нового репо, чтобы узнать, нужно ли обновлять другие зависимые пакеты. Затем вы можете отметить их и пробел - отделить их в разделе «Пакет: & quot; строка файла настроек. – Scott 21 April 2017 в 20:59

Pinning - это усовершенствованная технология управления пакетами, которая позволяет вам оставаться на стабильном выпуске, захватывая пакеты из более новой версии. Смешивание репозиториев не поддерживается и может вызвать у вас проблемы, если пакет, который вы хотите, был скомпилирован в разных версиях библиотеки, чем в вашей системе. Если возможно, вы должны сначала попробовать получить пакет из репозитория backports (или, возможно, хорошо поддерживаемого PPA). Тем не менее, вы, кажется, уже знаете, что puppet из Natty хорошо работает в вашей системе.

Чтобы связать puppet с natty-версией, нам нужно будет отредактировать несколько файлов. Сначала вам нужно будет установить версию по умолчанию в /etc/apt/apt.conf.d/01ubuntu (я предполагаю, что вы используете lucid, очевидно, заменяете фактический выпуск):

APT { Default-Release "lucid"; };

Затем вам нужно добавить natty к вашему /etc/apt/sources.list или создать новый файл /etc/apt/sources.list.d/natty.sources.list со следующими источниками:

deb http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse

Затем вам нужно установить «Приоритет Pin» для пакета puppet от Natty выше приоритета для выпуска по умолчанию. Установка версии по умолчанию в /etc/apt/apt.conf.d/01ubuntu по существу устанавливает приоритет для всех пакетов, начиная с этой версии, до 990. Поэтому в /etc/apt/preferences нам нужно перегрузить это для puppet, используя что-то более высокое, например:

Package: puppet Pin: release n=natty Pin-Priority: 995

Теперь вам просто нужно запустить и apt-get update && apt-get upgrade

4
ответ дан 6 August 2018 в 03:59
  • 1
    Это хорошо сработало для меня, но все же оставило репозиции, обновленные в будущем, я должен был добавить с «500». приоритет, который я все еще считаю слишком высоким. Я попытался выровнять все, ЗА ИСКЛЮЧЕНИЕМ того, что мне нужно было ниже, используя Package: * Pin: release n=yakkety Pin-Priority: 400, но это, похоже, не работает. Также я думаю, что стоит сделать сухую установку пакетов, которые вы хотите от нового репо, чтобы узнать, нужно ли обновлять другие зависимые пакеты. Затем вы можете отметить их и пробел - отделить их в разделе «Пакет: & quot; строка файла настроек. – Scott 21 April 2017 в 20:59

Pinning - это усовершенствованная технология управления пакетами, которая позволяет вам оставаться на стабильном выпуске, захватывая пакеты из более новой версии. Смешивание репозиториев не поддерживается и может вызвать у вас проблемы, если пакет, который вы хотите, был скомпилирован в разных версиях библиотеки, чем в вашей системе. Если возможно, вы должны сначала попробовать получить пакет из репозитория backports (или, возможно, хорошо поддерживаемого PPA). Тем не менее, вы, кажется, уже знаете, что puppet из Natty хорошо работает в вашей системе.

Чтобы связать puppet с natty-версией, нам нужно будет отредактировать несколько файлов. Сначала вам нужно будет установить версию по умолчанию в /etc/apt/apt.conf.d/01ubuntu (я предполагаю, что вы используете lucid, очевидно, заменяете фактический выпуск):

APT { Default-Release "lucid"; };

Затем вам нужно добавить natty к вашему /etc/apt/sources.list или создать новый файл /etc/apt/sources.list.d/natty.sources.list со следующими источниками:

deb http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse

Затем вам нужно установить «Приоритет Pin» для пакета puppet от Natty выше приоритета для выпуска по умолчанию. Установка версии по умолчанию в /etc/apt/apt.conf.d/01ubuntu по существу устанавливает приоритет для всех пакетов, начиная с этой версии, до 990. Поэтому в /etc/apt/preferences нам нужно перегрузить это для puppet, используя что-то более высокое, например:

Package: puppet Pin: release n=natty Pin-Priority: 995

Теперь вам просто нужно запустить и apt-get update && apt-get upgrade

4
ответ дан 7 August 2018 в 21:57
  • 1
    Это хорошо сработало для меня, но все же оставило репозиции, обновленные в будущем, я должен был добавить с «500». приоритет, который я все еще считаю слишком высоким. Я попытался выровнять все, ЗА ИСКЛЮЧЕНИЕМ того, что мне нужно было ниже, используя Package: * Pin: release n=yakkety Pin-Priority: 400, но это, похоже, не работает. Также я думаю, что стоит сделать сухую установку пакетов, которые вы хотите от нового репо, чтобы узнать, нужно ли обновлять другие зависимые пакеты. Затем вы можете отметить их и пробел - отделить их в разделе «Пакет: & quot; строка файла настроек. – Scott 21 April 2017 в 20:59

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

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