Как мне перейти на более новую версию Ubuntu? отлично объясняет, как выполнить обновление версии. В нем также говорится «Обновление Ubuntu работает 99 раз из 100», что не было моим опытом - у меня были проблемы примерно 6 из 6 раз (я не виню Ubuntu - я думаю, что мой беспорядок с моей установкой без глубокого понимания из того, что я делаю, создает нетипичные проблемы). Поэтому я всегда создаю образ всей своей системы перед попыткой обновления. Затем я пытаюсь выполнить обновление, и если оно не проходит успешно, а мои попытки решить проблемы не удаются, я возвращаю систему туда, откуда я начал. Все это занимает довольно много времени.
Так что мне интересно, есть ли способ смоделировать обновление версии, чтобы я мог выяснить, будут ли проблемные зоны, и потенциально устранить их до фактическое обновление.
Например, в моей текущей установке 14.04.3, apt-get check
и apt-get -f install
не сообщают о проблемах. Но после того, как я выполнил обновление до 14.10 прошлой ночью, 3 или 4 пакета были сломаны, и я не мог разрешить конфликты. Есть ли способ, прежде чем пытаться выполнить обновление, чтобы увидеть, что не так с установкой, которая может вызвать проблемы при обновлении?
Я полагаю, что это может быть полезной информацией, даже если вы не обновляете - эти «скрытые» проблемы могут вызывать проблемы со стабильностью или производительностью ...
do-release-upgrade
выполнит обновление версии, но do-release-upgrade
не имеет опции пробного прогона. Но, это действительно имеет --sandbox
опция.
От точки выполнения в --sandbox
режим, любые изменения, внесенные в Вашу систему, будут на самом деле записаны в электронный диск и сброшены на перезагрузку через волшебную OS Aufs. Это позволяет Вам протестировать свою машину полностью в полностью функционирующем состоянии, не рискуя повреждением его.
Из исходного списка рассылки;
"Идея... состояла в том, чтобы создать перезаписываемое наложение в/tmp на вершине systemdirs в "/" и затем выполнить обновление версии. Таким образом, мы можем протестировать легко, если система обновила бы чисто (если никаких dpkg отказов сценария ошибок/специалиста по обслуживанию не происходит). Все записи входят в/tmp поэтому после обновления, и на следующей перезагрузке система вернулась к своему предварительно обновленному состоянию снова (/по модулю домой, который не является overlayed)".
Для получения дополнительной информации об этом относятся к исходный список рассылки или этот сообщение.
Для dist-обновлений, можно использовать --dry-run
с sudo apt-get dist-upgrade
для моделирования выполнения этой команды, на самом деле не выполняя обновление.
-s, --simulate, --just-print, --dry-run, --recon, --no-act
No action; perform a simulation of events that would occur but do not actually change the
system. Configuration Item: APT::Get::Simulate.
Simulate prints out a series of lines each one representing a dpkg operation, Configure (Conf),
Remove (Remv), Unpack (Inst). Square brackets indicate broken packages with and empty set of
square brackets meaning breaks that are of no consequence (rare).
-u, --show-upgraded
Show upgraded packages; Print out a list of all packages that are to be upgraded. Configuration
Item: APT::Get::Show-Upgraded.
do-release-upgrade
сценарий имеет --sandbox
опция, которая работает, обновление на aufs накладывают файловую систему. Это означает, что все изменения записаны в отдельную файловую систему, накладывающую исходные файлы. Выбросьте наложение, и Вы вернулись к своей исходной файловой системе.Отказ от ответственности: У меня нет собственного опыта с этой функцией.
Независимо от Вашего подхода, действительно удостоверьтесь, что Ваша система перед обновлением последовательна. Так выполняет sudo apt-get update && sudo apt-get dist-upgrade
и решают любые вопросы, обнаруживающиеся прежде, чем работать do-release-upgrade
.