Ste*_*epp 121 ubuntu debian apt
为了编译一些东西,我需要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.
Run Code Online (Sandbox Code Playgroud)
我的编译完成了,我不再需要它了,所以我想把它的状态恢复到以前的状态:自动安装。这样,当不再需要它时,它将使用简单的apt-get autoremove.
我不能做,apt-get remove zlib1g-dev因为有些包仍然依赖它。
那么如何将包zlib1g-dev安装状态恢复为自动安装?
我知道我可能会/var/lib/apt/extended_states手动编辑
Package: zlib1g-dev
Auto-Installed: 0
Run Code Online (Sandbox Code Playgroud)
到
Package: zlib1g-dev
Auto-Installed: 1
Run Code Online (Sandbox Code Playgroud)
……但就是感觉不太对劲。
小智 126
apt-mark 可以帮助您:
apt-mark auto zlib1g-dev
Run Code Online (Sandbox Code Playgroud)
对于 11.04 或更早版本,请使用“markauto”而不是“auto”
Mik*_*l S 102
最初安装软件包时,Aptitude 可以为您提供帮助:
aptitude install "zlib1g-dev&M"
Run Code Online (Sandbox Code Playgroud)
或者,在您安装软件包后:
aptitude markauto "zlib1g"
Run Code Online (Sandbox Code Playgroud)
编辑:如果你没有能力,你可以使用
apt-mark auto zlib1g-dev
Run Code Online (Sandbox Code Playgroud)
小智 8
这就是你要找的。
sudo apt-get markauto first-package second-package etc-package
Run Code Online (Sandbox Code Playgroud)
来源:
apt-get --help
Run Code Online (Sandbox Code Playgroud)