Я позволил менеджеру обновлений установить 200 Mib обновлений, и я думаю, что это обновление запускает мой графический драйвер в проблему. Итак, мне нужен способ удалить обновления, которые были установлены с 30 мая по 12 мая, например (или любой другой даты). Если мне придется удалить их вручную (в случае их удаления по одному), просим вас дать мне инструкции, как это сделать.
Существует альтернативный подход командной строки для получения истории установки.
Менеджер пакетов apt
, кажется, регистрирует все в /var/log/apt/history.log
и /var/log/apt/term.log
, включая разделение всего на метки даты. Оба содержат похожую, полезную информацию, но term.log
оба более многословны и не указывают явно, что инициировало операцию.
/var/log/apt/history.log
содержит краткую сводку по каждому прогону apt
. Вот мой фрагмент для ручной установки:
Start-Date: 2014-08-22 17:17:52
Commandline: apt-get install nautilus-dropbox
Install: nautilus-dropbox:amd64 (1.6.1-1), python-gpgme:amd64 (0.3-0ubuntu3, automatic)
End-Date: 2014-08-22 17:19:13
Поле Commandline:
указывает, что вызвало запуск, и в случае установок, выполненных менеджером обновлений, оно должно выглядеть примерно так:
Commandline: aptdaemon role='role-commit-packages' sender=':1.131'
... и вот ваш список пакетов, отсортированный по дате, методу и действию (установка / обновление / удаление). Обратите внимание, что если вы хотите передать эти пакеты обратно в apt-get remove ...
:
Вам нужно будет убрать скобки, их содержимое и разделитель запятых из списка с помощью предпочтительного метода обработки текста (например, sed
, vim
и т. Д.). Поэтому, если я хочу удалить пакеты из приведенного выше фрагмента, я могу использовать строку относительно напрямую:
sudo apt-get remove nautilus-dropbox:amd64 python-gpgme:amd64
Обычно /var/log/apt/term.log
менее удобно структурированный, но для полноты вы можете получить ту же информацию. Вывод терминала снова ограничен временными метками, и установки пакетов можно получить из строк следующего вида:
Selecting previously unselected package nautilus-dropbox.
Ниже приведен один из способов печати списка установленных пакетов в терминал для всего журнала:
$ awk '/^Selecting/ {gsub(/\./,""); print $5}' /var/log/apt/term.log
Это может быть адаптировано или расширено, чтобы получить установки в диапазоне дат.
Примечание: В отличие от Windows, удаление обновления в Ubuntu обычно удаляет этот пакет / программу и не просто возвращает (или понижает версию) это к предыдущей версии.
blockquote>Вы можете открыть Ubuntu Software Center и нажать на историю
Как только вы это сделаете, нажмите на обновления, и это покажет вам все обновления, которые установлены в вашей системе. Как только вы найдете обновления, которые вам нужно удалить, вам нужно сделать это вручную.
Для удаления вы можете использовать Synaptic Package Manager. Если он не установлен, вы можете установить его из