在debian系统上,我可以使用aptitude markauto和aptitude unmarkauto将软件包标记为手动或自动安装。 我通过标记我知道我想要的软件包来删除不需要的软件包。 然后apt-get autoremove将删除所有不需要的软件包。
我现在在一个Fedora系统,并希望在rpm或yum或其他程序类似的function。 rpm / yum是否还有像debian系统这样的手动/自动安装软件包的概念?
至less较新的yum版本(在yum 3.4.3的Fedora 20上testing)能够区分手动安装的软件包和作为依赖关系安装的软件包。 这个信息被存储在yumdb中,使用键“reason”可以被设置为“user”或者“dep”。
# yumdb set reason dep [package name or wildcard]
应该相当于“aptitude markauto”。 如果您不提供包名称,则更改将应用于所有包。 我不会这么做,不太激进的方法就是使用
# yumdb search reason user
并手动删除你不想要的包。
如果你跑步
# yum autoremove
如果所有标记为“dep”的软件包不再被其他软件包引用,则将其删除。 应该相当于“aptitude autoremove”。
安装不使用yum的软件包(例如rpm -i)可能没有“reason”键,我假设autoremove的默认行为是将它们当作“用户”软件包,但是它们没有使用“yumdb search”命令列出。
不,但没有理由不能写一个yum插件来提供这个能力。