Вопрос: Как удалить флаг «установлен вручную» и вернуться к «автоматически установленному» с помощью apt-get?


Чтобы скомпилировать что-то, мне нужно было zlib1g-dev пакет, который должен быть установлен, поэтому я запустил apt-get install zlib1g-dev,

apt-get сообщила мне, что пакет уже был установлен автоматически из-за другого пакета, и что он понимает, что я хочу, чтобы он был установлен прямо сейчас:

# apt-get install zlib1g-dev
zlib1g-dev is already the newest version.
zlib1g-dev set to manually installed.

Моя компиляция сделана, я не нуждаюсь в ней более явно, поэтому я хочу вернуть ее статус предыдущему: автоматически установлен. Таким образом, он будет автоматически обрезаться, когда он больше не понадобится с помощью простого apt-get autoremove,

Я не могу сделать apt-get remove zlib1g-dev поскольку некоторые пакеты все еще зависят от него.

Итак, как я могу вернуть пакет zlib1g-devсостояние установки автоустановка ?

Я знаю, что могу редактировать /var/lib/apt/extended_states от руки

Package: zlib1g-dev
Auto-Installed: 0

в

Package: zlib1g-dev
Auto-Installed: 1

... но это просто не так.


88
2017-11-24 20:18


Источник




Ответы:


Aptitude может помочь вам при первоначальной установке пакета:

aptitude install "zlib1g-dev&M"

Или, после того, как вы установили пакет:

aptitude markauto "zlib1g"

Редактировать: Если у вас нет способности, вы можете использовать

apt-mark auto zlib1g-dev

71
2017-11-24 20:59



Хороший ответ, но ответ I + 1's @ ArvindSing, используя apt-mark потому что он не требует установки aptitude, apt-mark поставляется с apt пакет, который все должны иметь. - Christopher Schultz


apt-mark может помочь вам:

apt-mark auto zlib1g-dev

Для 11.04 или старше используйте «markauto» вместо «auto»,


93
2017-08-10 08:21





Это то, что вы ищете.

sudo apt-get markauto first-package second-package etc-package

Источник:

apt-get --help

8
2018-01-18 15:44



Обратите внимание, что это устарело сейчас в пользу apt-mark - Joril