Обновите все пакеты кроме MySQL через способность

Прежде чем я обновлю свой дистрибутив Linux, я хотел бы обновить все свои пакеты - однако, я хочу придерживаться своей текущей версии (5.6) MySQL.

Я знаю, что существует опция содержать пакет, как это:

sudo aptitude hold package_name

Когда я работаю sudo apt-get upgrade, У меня есть следующие перечисленные пакеты MySQL:

mysql-client-5.6 mysql-client-core-5.6 mysql-общий mysql-common-5.6 mysql-server-5.6 mysql-server-core-5.6

Я могу передать их всех hold управлять как аргументы? Или есть ли более легкий способ заблокировать мой MySQL от обновления?

Примечание: Я работаю в VM, таким образом, никакой GUI я мог использовать, просто терминал.

Обновление

Хорошо, я попробовал его и ДА, можно передать все пакеты к hold команда, и они будут не допущены в обновление.

Я все еще не уверен, достаточно ли содержать только эти пакеты для предотвращения обновления MySQL (возможно, другие определенные для MySQL пакеты должны быть протянуты также?). Например, команда ниже, будет содержать много пакетов с "mysql" на имя, и я понятия не имею, релевантны ли они или нет:

sudo aptitude mysql-*
0
задан 27 April 2017 в 09:11

1 ответ

1113 Похоже, вы уже поняли ответ. Однако вы попросили другого с правкой.

Я до сих пор не уверен, достаточно ли удерживать только эти пакеты, чтобы предотвратить обновление MySQL (может быть, другие пакеты, специфичные для MySQL, тоже следует отложить?).

Ответ - Нет. Вам не нужно хранить все пакеты, поскольку вы держите основной пакет, от которого зависит другой пакет. Например, пакеты mysql-server, mysql-client зависят от mysql-common (насколько я знаю), поэтому достаточно только удерживать этот пакет.

И aptitude умнее, чем apt в целом, и он должен понимать, чего вы хотели от трюма.


Обновлено с проверкой

Чтобы проверить ответ, я фактически выполнил тест с пакетом libgtk-3-0, который является основным для почти всех приложений gtk-3. У меня была версия 3.18 что-то. Затем я включил репозиторий, который предлагает версию 3.20. nautilus зависит от этого пакета, и репозиторий также предлагает более высокую версию nautilus.

При попытке использовать aptitude upgrade -s (-s для симуляции) в нем перечислены пакеты, которые он собирался обновить. nautilus там не было, потому что libgtk-3-0 не собирался обновляться, что требовалось для новой версии.

Другой вариант - закрепление пакетов путем создания файлов в каталоге /etc/apt/preferences.d, который предлагает больше возможностей и гибкости. Это не нужно в вашем простом случае, но не мешает знать :) Apt Pinning Howto

1
ответ дан 3 November 2019 в 08:59

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

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