Из-за ошибки # 693758 я бы хотел запретить apt-get upgrade
и Update Manager обновлять пакет "libgtk2.0-0".
Как этого достичь?
Из-за ошибки # 693758 я бы хотел запретить apt-get upgrade
и Update Manager обновлять пакет "libgtk2.0-0".
Как этого достичь?
disable packages from the auto-update
Ответы:
Держа
Существует четыре способа удержания пакетов: с помощью dpkg, apt, aptitude или dselect.
Dpkg
Поставить пакет на удержание:
Снять трюм:
Показать статус ваших пакетов:
Показать статус одного пакета:
склонный
Держите посылку:
Снять трюм:
Показать все пакеты в ожидании:
Dselect
С помощью dselect войдите в экран [S] elect, найдите пакет, который вы хотите сохранить в его текущем состоянии, и нажмите =или H. Изменения вступят в силу сразу после выхода из экрана выбора [S].
Следующие подходы ограничены тем, что блокировка / удержание пакета в aptitude или synaptic не влияет на apt-get / apt.
уместность
Держите посылку:
Снять трюм:
Блокировка с помощью Synaptic Package Manager
Перейдите в Менеджер пакетов Synaptic (Система> Администрирование> Менеджер пакетов Synaptic).
Нажмите кнопку поиска и введите имя пакета.
Найдя пакет, выберите его, перейдите в меню « Пакет» и выберите « Заблокировать версию» .
Этот пакет теперь не будет отображаться в диспетчере обновлений и не будет обновляться.
источник
devscripts
многие упакованные тянутся как рекомендуемые пакеты. Поскольку мне не нужен почтовый сервер (postfix), я мог бы отключить его установку, запустив егоecho postfix hold | sudo dpkg --set-selections
перед запускомsudo apt-get install devscripts
. Это действие удержания сохраняется только для этой установки, после установки выбранные значения сбрасываются.apt-mark
не поддерживаетсяhold
в версии 0.7.25 (Ubuntu Lucid)apt-mark hold fglrx fglrx-amdcccle fglrx-dev && aptitude hold fglrx fglrx-amdcccle fglrx-dev
.Чтобы поставить пакет "foo" на удержание:
В вашем случае мы собираемся приостановить производство вина:
Чтобы снять трюм:
источник
apt-get install wine=1.2.3
. Находясь на удержании, не можетapt-get (dist-)upgrade
изменить его./var/cache/apt/archives
) не зависит от удержаний, обновлений и прочего, поэтому все загруженные вами версии будут там до тех пор, пока вы не запуститеapt-get [auto]clean
Я искал то же самое, и после многих исследований я обнаружил, что используя следующий синтаксис, вы можете запретить одну конкретную версию, но разрешить следующее обновление:
Это идет в файл / etc / apt / preferences.
источник
Установите
synaptic
с помощьюsudo apt-get install synaptic
.Запустите используя
gksudo synaptic
и в окне поиска найдите пакет, который вы хотите заблокировать, а именно:gedit
В меню пакета выберите Lock version :
И это все, версия, установленная на момент блокировки, останется установленной даже во время обновлений.
источник
Запрет установки пакета называется «удержанием пакета», и это очень просто сделать:
... где * имя_пакета * - это имя пакета, который вы хотите запретить установку.
Примечание: приведенная выше команда предполагает права суперпользователя. Другими словами, вам, вероятно, нужно будет набрать текст
sudo su
перед запуском.источник
s/sudo su/sudo -s/g
(илиsudo -i
). (-i
даст логин оболочки,-s
не даст).Поскольку некоторое время
apt-get
заменяется наapt
, например, я хочу запретить обновление Firefox до версии выше 56, потому что многие надстройки, такие как «Группы вкладок», больше не работают с новым Firefox 57 (см. «Расширения WebExtensions». Обновить").Можно удерживать более одного пакета одной командой и использовать подстановочные знаки.
Запретить обновление Firefox
Если вы захотите отменить их позже, это будет команда:
источник
Я синаптически могу заморозить версию определенного пакета. Я не уверен на 100% в том, что это изменит apt-get, но это определенно остановит менеджер обновлений.
Чтобы заморозить пакет, выберите его в synaptic, затем откройте меню пакета и выберите «заморозить версию».
Надеюсь это поможет
редактировать: этот вопрос 16668 имеет дело с аналогичной ситуацией
источник
Все, что вы когда-либо хотели знать о «удержании» и «закреплении» пакетов в определенных версиях: https://help.ubuntu.com/community/PinningHowto
источник
Смотрите ошибки # 75332 , # 158981 и # 72806 .
В итоге, удержание на уровне apt-get / aptitude не вызывает состояние удержания в dpkg (особенно см. Ошибку 72806), а менеджер обновлений считывает состояние из dpkg.
Обходной путь запускается от имени пользователя root:
echo "package hold" | dpkg --set-selections
источник
Вы можете использовать на aptitude «конкретное переопределение», например так:
Это однократное использование (не сохраняется для будущих переустановок), сохранение определенного переопределения, для переустановки всех пакетов в вашей системе, но не oracle-java8-jre.
Если вы используете специальное переопределение keep, пакет на мгновение будет в состоянии keep aptitude не будет пытаться установить его.
Очень хорошая вещь, если вы думаете, что ваша система была скомпрометирована каким-то образом.
источник
Если у вас установлен Synaptic, вы можете выбрать пакет и использовать меню Package -> Lock Version, чтобы предотвратить его обновление.
Вы можете установить Synaptic с помощью sudo apt-get install synaptic. Я лично нахожу это более полезным, чем Центр программного обеспечения ... опять же, я довольно старая школа. :)
источник
Иногда может потребоваться скрыть все установленные в данный момент пакеты. Вот как.
Сначала сохраните текущее состояние, чтобы вы могли отменить:
Затем, чтобы сдержать все пакеты:
Наконец, когда вы хотите вернуться к предыдущему состоянию:
Одним из вариантов использования этого может быть создание моментального снимка виртуальной машины или Amazon AMI для миграции из QA в производственную среду.
источник
Добавление подробностей в комментарии @ soger относительно Ubuntu 16.04.
Ubuntu 16.04 по умолчанию не имеет существующего файла / etc / apt / preferences. Если у вас его нет, просто создайте новый файл и заполните его разделом, как @soger описывает выше, чтобы исключить данный пакет и его зависимости из обновлений.
После беги
apt update
и ты GTG. : 0)Например, у меня есть сервер Ubuntu 16.04.5 LTS со встроенной видеокартой Intel и картой NVidia. Карта NVidia используется только одна. Сервер также использует драйверы CUDA. У меня была проблема где
apt
настаивал(Драйверы Intel) требовали обновления, но не могли определить, какую версию установить. Это сводило меня с ума, и мне все равно не нужны были драйверы Intel. Я ввел этот текст в файл настроек и очистил apt, проблема решена.
источник