关于安装软件大小与卸载大小的问题

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
头像
lipeng8413
帖子: 129
注册时间: 2006-11-29 12:13
来自: china beijing
联系:

关于安装软件大小与卸载大小的问题

#1

帖子 lipeng8413 » 2008-06-01 19:37

我举个例子,更好说明问题:
比如我安装totem-xine,用apt-get install,它会依照依赖关系推荐给我5个包,会下载5M,安装后消耗10M左右

然后我卸载totem-xine,用apt-get remove,它就只删除totem-xine这1个包,只会腾出2M空间,这时咋就不分析依赖关系呢?

这么一来,我电脑里就多了4个包,占用8M空间,而且这些都是没用的,感觉很不爽呢。
难道我要一个一个卸载,它就不会根据依赖关系自动找出来,然后卸载掉它们吗?

我现在电脑里面有75000个包,估计有好多不用的,但是自己又不知道怎么处理?咋办呢?
I.A.J.M - linux is so attractive!

blog:http://hi.baidu.com/leepeng
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

#2

帖子 BigSnake.NET » 2008-06-01 19:59

aptitude 可以帮你..
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
sirxenofex
帖子: 204
注册时间: 2008-01-07 16:39

#3

帖子 sirxenofex » 2008-06-01 20:09

不是这样的。apt在安装软件的时候,会分为两种,一种是你命令它安装的,另一种是因为依赖安装的也就是自动安装的。apt-get autoremove就可以自动删除那些不再被任何手动安装的包所依赖的、被标记为自动安装的包。

如果你想让一个被标记为自动安装的包变成手动安装,也就是不被 apt-get autoremove 清除,只要apt-get install这个包就行了。比如你手动安装了smplayer,这样mplayer会被自动安装。如果哪一天你不想要smplayer了,但是还想用mplayer,只要apt-get install mplayer,这个包就会被标记为手动安装。
头像
lipeng8413
帖子: 129
注册时间: 2006-11-29 12:13
来自: china beijing
联系:

#4

帖子 lipeng8413 » 2008-06-02 10:06

2楼的太精辟了,使我无从下手阿

3楼的说的狠详细,谢谢,不过我的apt没有找到autoremove选项,只有autoclean。

我先自己折腾一会吧
I.A.J.M - linux is so attractive!

blog:http://hi.baidu.com/leepeng
头像
yiding_he
帖子: 2677
注册时间: 2006-10-25 18:10
来自: 长沙
联系:

#5

帖子 yiding_he » 2008-06-02 11:03

打个比方,你装软件包 A 的时候,同时安装了 A 所依赖的软件包 B;

后来又安装软件包 C,而 C 依赖于 A,不过你已经把 A 装上了,所以不会重新下载 A 了。

后来你要卸载 A。这时候 C 也会跟着卸载,但是 B 不会。当你将来要安装依赖于 B 的其他软件包,就不用重新下载 B 了。

但是你不打算留着 B。所以你可以键入“sudo apt-get autoremove”命令。系统会自动找出没有依赖的包,并将其卸载。

B 卸载了,但是 B 的安装包仍然留在系统当中,这是为了免得下载而缓存起来的。你可以键入“sudo apt-get clean” 来删除这些缓存,进一步省出空间。
你是自由的。别人也是。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#6

帖子 eexpress » 2008-06-02 11:07

球猫说的是:sudo aptitude remove/purge。其实你看到关键词,就应该马上man或者google。
● 鸣学
头像
jarlyyn
帖子: 4671
注册时间: 2006-04-12 18:54
联系:

#7

帖子 jarlyyn » 2008-06-02 19:37

eexpress 写了:球猫说的是:sudo aptitude remove/purge。其实你看到关键词,就应该马上man或者google。
autoremove
autoremove is used to remove packages that were automatically
installed to satisfy dependencies for some package and that are no
more needed.


apt-get的

我记得我以前就用过
头像
jarlyyn
帖子: 4671
注册时间: 2006-04-12 18:54
联系:

#8

帖子 jarlyyn » 2008-06-02 19:38

jarlyyn@jarlyynlaptop:~$ sudo apt-get autoremove
[sudo] password for jarlyyn:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
读取状态信息... 完成
已经不需要下列自动安装的软件包:
scim-dev-doc
下列软件包将被【卸载】:
scim-dev-doc
共升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 0 个软件未被升级。
操作完成后,会释放 11.2MB 的磁盘空间。
您希望继续执行吗?[Y/n]y
(正在读取数据库 ... 系统当前总共安装有 159200 个文件和目录。)
正在删除 scim-dev-doc ...
头像
lipeng8413
帖子: 129
注册时间: 2006-11-29 12:13
来自: china beijing
联系:

#9

帖子 lipeng8413 » 2008-06-03 8:54

lipeng@lipeng-laptop:~$ sudo apt-get autoremove
E: 无效的操作 autoremove

呵呵,是不是apt也要升级阿,我是ubuntu 6.06 dapper

昨天我用aptitude删除了一些我自己不需要的应用软件包。与系统有关的都没敢动,到底那里面的包是不是都有用我也不知道。
I.A.J.M - linux is so attractive!

blog:http://hi.baidu.com/leepeng
回复