Я по ошибке включил предрелизным обновлениям (аккуратно предложенный) репозиторий и затем обновил все пакеты.
Как я могу отменить это?
Вот результаты испытаний из инструкций @enzotib и результаты испытаний из моих инструкций.
Здесь более общий способ вернуться от локально установленных пакетов, предложенных, и бэкпортирует пакеты к stable+updates каналу. В то время как другие ответы корректны и работают похожим способом, я думаю, что это - более изящный подход.
-proposed
или -backports
в Вашем /etc/apt/sources.list
и /etc/apt/sources.list.d/*
файлы.Добавьте файл способных предпочтений, например. /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
каналы сделают, удаляют любые дополнительные пакеты также.
Теперь выполненный
sudo apt-get update
sudo apt-get dist-upgrade
Осмотрите склонное предлагаемое решение, даст Вам, и если Вы думаете, что это хорошо, затем примите его. Если необходимо проверить, до почему и какой версии это будет понижено, проверьте это с apt-cache policy packagename
видеть, какие версии доступны и что склонный решает, - кандидат на установку.
Удалите /etc/apt/preferences.d/99-back-to-stable-updates
зарегистрируйте снова, поскольку это больше не нужно.
Благодаря mlind
на форумах Ubuntu для этого вдохновения при прикреплении в его сообщении больше чем от 5 лет назад - все же это выручило меня вполне прилично сегодня.
Я не могу найти простое решение, чем следующее. Все же надеясь кто-то входит с лучшим ответом.
Следующий сценарий, который может выполнить снижение
#!/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
в конце сценария удара.
Эта страница предполагает, что прикрепление Кв. может использоваться для понижения из всего репозитория путем усиления того, что приоритеты контакта выше, чем 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
Наконец, перезагрузка так, чтобы все запускающие программы были своими пониженными версиями.
Возвращение всех пакетов от аккуратно предложенного, вероятно, не нужно: большинство пакетов будет скоро обновлено к тем же версиям посредством аккуратных обновлений так или иначе.
В случае, если у Вас есть проблема с одним пакетом, Вы могли вернуться, который один пакет с помощью метода darent подарки (после того, как отключение - сделало предложение), или можно использовать sudo aptitude install packagename/natty
. Но что еще более важно, необходимо зарегистрировать ошибку против пакета. Немного людей на самом деле тестируют аккуратно предложенный, и если регрессии (=new проблемы) происходят, о них нужно, конечно, сообщить. Иначе они могли бы закончить в обновлениях для всех пользователей человечности. Таким образом, если у Вас есть какие-либо проблемы, сообщите.
В синаптическом можно отключить репозиторий для предложенного и обновить источники. Затем Вы будете видеть, чем все пакеты, чем было обновлено, появляется, как локально установлено (так как они больше не находятся в repos).
Теперь необходимо будет "понизить" те пакеты. Выберите один за другим, и в верхнем меню выбрал:
package > force version
(или Control+E)
Меню появится с avalliable опциями. Я выбрал бы более низкий номер версии для каждого пакета. Если Вы сделаете ошибку и существует более новая версия в нормальном repos, то она будет решена в более позднем обновлении.
Быстрое решение состояло бы в том, чтобы использовать команду чистки-ppa, указывающую на предложенный репозиторий, но не знает, работало ли это с ними, я только использовал его для чистки внешнего ppa's и пакеты снижения к официальным версиям человечности. Я не рекомендую Вам сделать это в этом случае, возможно, кто-то знает, является ли это надежный метод...
Я предложил обеспечить функцию для понижения всех proposed
пакеты с простой сохраняемой командой equiavalent к ppa-purge
в https://bugs.launchpad.net/ubuntu / + source/software-properties / + ошибка/1810499, так как сообщения здесь все еще, кажется, представляют состояние системы.
"предложенный" - получают его?