Как пометить пакет в Ubuntu / Debian как не подлежащий автоматическому удалению?

2444
Jason Baker

Предположим, у меня есть пакет (в данном случае пакет Python), который я устанавливаю с помощью Synaptic. Поскольку версия этого пакета несколько устарела, я удаляю его в Synaptic, а затем устанавливаю его с помощью easy_install. Одна из его зависимостей была также установлена ​​с использованием Synaptic, но я бы предпочел сохранить версию, установленную Synaptic, а не easy_installingее.

Единственная проблема заключается в том, что зависимость теперь помечена как автоматически удаляемая. Есть ли способ пометить его как устанавливаемый вручную, кроме как удалить его и переустановить? Если это имеет значение, я использую Ubuntu Jaunty.

9

3 ответа на вопрос

6
danadam

Я знаю, что вы можете сделать это в способности. Вы можете сделать это либо в графическом интерфейсе, выбрав пакет и нажав «m», либо выбрав «Отметить руководство» в меню «Пакет», либо используя командную строку:

aptitude install <имя_пакета> & m
5
Thomas Guyot-Sionnest

You can use apt-mark manual <package> for that, of from Synaptic, Package => [ ] Automatically Installed (uncheck it).

ex:

# Mark <some_package> as manually-installed: apt-mark manual <some_package> # Mark <other_package> as automatically-installed (ex if you know it's a # dependency to something else and you want to make sure it'll be # auto-removable if it's no longer used): apt-mark auto <other_package> 

Also, if you use apt-get install <package> on a package that's already installed, it will be implicitly marked as manual.

Это, кажется, делает именно так, как хотелось бы. Он изменил статус моего пакета с `[установленный, автоматически удаляемый]` на просто `[установленный]`. mwfearnley 6 лет назад 0
3
nagul

Вы можете «держать» пакет в Ubuntu.

Удержание пакета означает, что вы говорите менеджеру пакетов, чтобы он сохранял текущую версию, несмотря ни на что. Это полезно, если более свежая версия работающей в данный момент программы перестает работать после обновления.

Вы можете сделать это через Synaptic или из командной строки через apt / dpkg. Версия командной строки для хранения пакета:

echo package_name hold | dpkg --set-selections 

В документации сообщества Ubuntu есть более полное руководство, объясняющее, как прикреплять или хранить пакеты .

Спасибо! http://askubuntu.com/questions/140136/marking-packages-as-non-removable-non-installable Andrejs Cainikovs 12 лет назад 0
Удержание обычно используется для предотвращения обновления до более новых версий; это не должно использоваться, чтобы держать пакет. Использование блокировки заблокирует вас от получения обновлений безопасности и дистрибутивов, а также будет дополнительным бременем во время обновлений. Пометка пакета как установленного вручную должна быть правильной (см. Мой ответ ...). Thomas Guyot-Sionnest 9 лет назад 1

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