Как понизить пакеты в Ubuntu
Диспетчер обновлений Ubuntu сохраняет ваши пакеты на последней версии, но иногда новая версия пакета может работать неправильно. Вы можете понизить версию установленного пакета и заблокировать его в определенной версии, чтобы предотвратить его обновление.
Это особенно полезно, когда вы сталкиваетесь с обновленным пакетом с регрессией - ошибкой, которая мешает нормальной работе.
Как это устроено
Ваша система обычно имеет несколько версий пакета, доступных в своих репозиториях - например, когда Ubuntu обновляет пакет, он помещает новый, обновленный пакет в специальный репозиторий обновлений. Старый пакет все еще находится в главном хранилище Ubuntu и может быть установлен с несколькими хитростями. Если вы установили более новую версию пакета из личного архива пакетов (PPA), более старые пакеты, включенные в Ubuntu, все еще находятся в репозиториях Ubuntu..
Как предупреждает нас Synaptic, это может вызвать проблемы с зависимостями пакета. Система управления программным обеспечением Ubuntu не предназначена для понижения версий пакетов, считая это неподдерживаемым приемом.
Графически - Synaptic
Упрощенный интерфейс Ubuntu Software Center не предлагает возможность понижения пакетов. Однако Synaptic, более продвинутый графический интерфейс диспетчера пакетов, который Ubuntu использовал для включения, предлагает эту опцию. Чтобы графически понизить версию пакета, сначала установите приложение Synaptic..
После этого откройте диспетчер пакетов Synaptic из Dash..
Найдите пакет, для которого вы хотите установить более старую версию в Synaptic, выберите его и используйте опцию Пакет -> Принудительная версия.
Выберите версию, которую хотите установить, и нажмите «Принудительная версия». Synaptic покажет вам только версии, доступные в ваших репозиториях.
Нажмите кнопку Применить, чтобы применить ваши изменения и установить старую версию пакета, при условии, что все работает правильно.
После понижения версии пакета выберите его и используйте параметр «Пакет» -> «Заблокировать версию». Если вы этого не сделаете, Ubuntu попытается обновить установленный пакет при следующем обновлении установленных пакетов..
Терминал - apt-get
Вы можете установить конкретную версию пакета с помощью apt-get в терминале. Сначала определите доступные версии, которые вы можете установить, с помощью следующей команды
apt-cache showpkg имя пакета
Затем запустите команду apt-get install и укажите версию пакета, который вы хотите установить.
sudo apt-get install имя пакетазнак равноверсия
После установки выполните следующую команду, чтобы сохранить установленную версию, не позволяя диспетчеру пакетов автоматически обновлять ее в будущем:
sudo echo “пакет держать »| sudo dpkg -set-selection