2010/6/21 chenw...@gmail.com <chenw...@gmail.com>: > 看了changelog, 测试了下,两者算是基本一样的 > > apt-get一开始并没有记录auto-install的信息 > 在apt (0.6.44.2exp1)此版本时(06年),apt-get增加了类似于aptitude的auto-install > 记录(/var/lib/apt/extended_states). > > 此后,aptitude在版本0.4.5.1(07年)转向使用apt-get的auto-install记录,而抛弃了自 > 己原先的记录方式
如果二者都通过 /var/lib/apt/extended_states 记录自动安装状态 那基本可以推测二者的行为是一样的 > 再随后apt-get在版本0.7.7(07年)增加了autoremove的选项 > > apt-get c++的源代码我就看不懂了,只能通过测试来判断两者是否有区别 > (测试方式通过修改/var/lib/dpkg/status和/var/lib/apt/extended_states这两个文件 > 来强制修改包的依赖关系记录和是否auto install的记录) > > 他们都会删除因为depends或者recommends而自动安装上的并且没有被其他手动安装的包依赖或间接依赖的包 > 如果那些自动安装上的包被其他包recommends,依然会删除 这句看上去不太对阿 似乎与我的经验有违 你能给出具体的例子么 Tao -- http://huangtao.me/ http://www.google.com/profiles/UniIsland