Чтобы что-то скомпилировать, мне понадобился 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
... но это кажется неправильным.
apt-mark может помочь вам:
apt-mark auto zlib1g-dev
Для версии 11.04 или более ранней используйте markauto вместо auto.
Aptitude может помочь вам при первоначальной установке пакета:
aptitude install "zlib1g-dev&M"
Или после того, как вы установили пакет:
aptitude markauto "zlib1g"
Редактировать: Если у вас нет способностей, вы можете использовать
apt-mark auto zlib1g-dev
Это то, что вы ищете.
sudo apt-get markauto first-package second-package etc-package
Источник:
apt-get --help