Как я могу вернуться назад от обновления до Предложенного репозитория?

Я по ошибке включил предрелизным обновлениям (аккуратно предложенный) репозиторий и затем обновил все пакеты.

Как я могу отменить это?

Вот результаты испытаний из инструкций @enzotib и результаты испытаний из моих инструкций.

23
задан 13 April 2017 в 05:25

6 ответов

Здесь более общий способ вернуться от локально установленных пакетов, предложенных, и бэкпортирует пакеты к stable+updates каналу. В то время как другие ответы корректны и работают похожим способом, я думаю, что это - более изящный подход.

  1. Удостоверьтесь, что Вы удалили записи -proposed или -backports в Вашем /etc/apt/sources.list и /etc/apt/sources.list.d/* файлы.
  2. Добавьте файл способных предпочтений, например. /etc/apt/preferences.d/99-back-to-stable-updates содержа (для precise здесь - заменяют Вашей версией):

    Package: *
    Pin: release a=precise
    Pin-Priority: 1001
    
    Package: *
    Pin: release a=precise-updates
    Pin-Priority: 1001
    
    Package: *
    Pin: release a=precise-security
    Pin-Priority: 1001
    
    Package: *
    Pin: release a=precise-proposed
    Pin-Priority: -10
    
    Package: *
    Pin: release a=precise-backports
    Pin-Priority: -10
    

    Это прикрепление> 1000 сделает способную силу снижением на пакетах от того канала и приоритета <0 на -proposed и -backports каналы сделают, удаляют любые дополнительные пакеты также.

  3. Теперь выполненный

    sudo apt-get update
    sudo apt-get dist-upgrade
    

    Осмотрите склонное предлагаемое решение, даст Вам, и если Вы думаете, что это хорошо, затем примите его. Если необходимо проверить, до почему и какой версии это будет понижено, проверьте это с apt-cache policy packagename видеть, какие версии доступны и что склонный решает, - кандидат на установку.

  4. Удалите /etc/apt/preferences.d/99-back-to-stable-updates зарегистрируйте снова, поскольку это больше не нужно.

Благодаря mlind на форумах Ubuntu для этого вдохновения при прикреплении в его сообщении больше чем от 5 лет назад - все же это выручило меня вполне прилично сегодня.

24
ответ дан 23 November 2019 в 01:28

Я не могу найти простое решение, чем следующее. Все же надеясь кто-то входит с лучшим ответом.

Следующий сценарий, который может выполнить снижение

#!/bin/bash

# get a list of installed packages
dpkg --get-selections | awk '{ print $1 }' > all-packages

# run apt-cache policy on each of them, then elaborate with the awk script 
apt-cache policy $(<all-packages) |
  ./get-prev-pkg-vers >old-versions

# install previous version of packages
sudo apt-get --simulate install $(< old-versions)

awk сценарий, названный get-prev-pkg-vers следующие

#!/usr/bin/awk -f

/^[^ ]/ {
    package = $1
    gsub(":", "", package)
    search_next = 0
}
/^     [^ ]/ {
    installed = 0
    version = $1
    if (search_next == 1) {
        print package "=" version
        search_next = 0
    }
}
/^ \*\*\* [^ ]/ {
    installed = 1
}
/^        [^ ]/ {
    branch = $3
    if (installed == 1 && branch ~ /proposed/) {
        search_next = 1
    }
    installed = 0
}

При запущении скрипта предложенный repo НЕ должен был быть, отключают все же.

Не забудьте устанавливать исполняемый файл, обдумал оба сценария.

Проблема с этим подходом состоит в том, что все пониженные пакеты закончатся, как вручную установлено (также те, которые были automacally установлены).

Для сейфа добавьте --simulate опция к apt-get в конце сценария удара.

2
ответ дан 23 November 2019 в 01:28

Эта страница предполагает, что прикрепление Кв. может использоваться для понижения из всего репозитория путем усиления того, что приоритеты контакта выше, чем 1 000 могут вызвать снижения пакета.

Одно решение, затем, могло бы быть для временного постепенного увеличения 1 000 приоритеты по умолчанию всех файлов пакета за исключением тех, которые от natty-proposed репозиторий:

apt-cache policy | awk '
    /^ [0-9]+ / {
        p = $1;
        getline;
        r = $0;
        if (r !~ /a=natty-proposed/) p += 1000;
        print "Package: *\nPin: " r "\nPin-priority: " p "\n"
    }
' | sudo tee /etc/apt/preferences.d/downgrade-from-natty-proposed

(Примечание: Этому методу не удается увеличить приоритет файлов пакета, поля выпуска которых содержат запятые. Посмотрите этот вопрос.)

После выполнения этого, apt-get --simulate upgrade может использоваться для тестирования на успешное обнаружение снижения. После подтверждения, что корректные снижения обнаруживаются, sudo apt-get upgrade должно быть все, что необходимо для выполнения снижения.

Когда снижение будет завершено, используйте Источники программного обеспечения для отключения предрелизных обновлений (аккуратно предложенный) репозиторий, затем удалите временное приоритетное увеличение:

sudo rm /etc/apt/preferences.d/downgrade-from-natty-proposed

Наконец, перезагрузка так, чтобы все запускающие программы были своими пониженными версиями.

4
ответ дан 23 November 2019 в 01:28

Возвращение всех пакетов от аккуратно предложенного, вероятно, не нужно: большинство пакетов будет скоро обновлено к тем же версиям посредством аккуратных обновлений так или иначе.

В случае, если у Вас есть проблема с одним пакетом, Вы могли вернуться, который один пакет с помощью метода darent подарки (после того, как отключение - сделало предложение), или можно использовать sudo aptitude install packagename/natty. Но что еще более важно, необходимо зарегистрировать ошибку против пакета. Немного людей на самом деле тестируют аккуратно предложенный, и если регрессии (=new проблемы) происходят, о них нужно, конечно, сообщить. Иначе они могли бы закончить в обновлениях для всех пользователей человечности. Таким образом, если у Вас есть какие-либо проблемы, сообщите.

2
ответ дан 23 November 2019 в 01:28

В синаптическом можно отключить репозиторий для предложенного и обновить источники. Затем Вы будете видеть, чем все пакеты, чем было обновлено, появляется, как локально установлено (так как они больше не находятся в repos).

Теперь необходимо будет "понизить" те пакеты. Выберите один за другим, и в верхнем меню выбрал:

package > force version

(или Control+E)

Меню появится с avalliable опциями. Я выбрал бы более низкий номер версии для каждого пакета. Если Вы сделаете ошибку и существует более новая версия в нормальном repos, то она будет решена в более позднем обновлении.

Быстрое решение состояло бы в том, чтобы использовать команду чистки-ppa, указывающую на предложенный репозиторий, но не знает, работало ли это с ними, я только использовал его для чистки внешнего ppa's и пакеты снижения к официальным версиям человечности. Я не рекомендую Вам сделать это в этом случае, возможно, кто-то знает, является ли это надежный метод...

1
ответ дан 23 November 2019 в 01:28

Я предложил обеспечить функцию для понижения всех proposed пакеты с простой сохраняемой командой equiavalent к ppa-purge в https://bugs.launchpad.net/ubuntu / + source/software-properties / + ошибка/1810499, так как сообщения здесь все еще, кажется, представляют состояние системы.

"предложенный" - получают его?

0
ответ дан 23 November 2019 в 01:28

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

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