Прежде чем я обновлю свой дистрибутив 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-*
Я до сих пор не уверен, достаточно ли удерживать только эти пакеты, чтобы предотвратить обновление MySQL (может быть, другие пакеты, специфичные для MySQL, тоже следует отложить?).
blockquote>Ответ - Нет. Вам не нужно хранить все пакеты, поскольку вы держите основной пакет, от которого зависит другой пакет. Например, пакеты 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