Chinaunix首页 | 论坛 | 博客
  • 博客访问: 8313529
  • 博文数量: 1413
  • 博客积分: 11128
  • 博客等级: 上将
  • 技术积分: 14685
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-13 10:03
个人简介

follow my heart...

文章分类

全部博文(1413)

文章存档

2013年(1)

2012年(5)

2011年(45)

2010年(176)

2009年(148)

2008年(190)

2007年(293)

2006年(555)

分类: LINUX

2010-03-04 10:16:53

这几天因为在安装mysql-server-5.1的时候,导致ubuntu的aptitude有问题了,问题如下:
john@john-desktop:~$ sudo aptitude reinstall mysql-server-5.1
正在读取软件包列表... 完成
正在分析软件包的依赖关系树      
正在读取状态信息... 完成      
正在读取扩展状态文件     
正在初始化软件包状态... 完成
下列软件包将被“重新安装”:
  mysql-server-5.1
0 个软件包被升级,新安装 0 个, 1 个被重新安装, 0 个将被删除, 同时 0 个将不升级。
需要获取 0B 的存档。 解包后将要使用 0B。
E: 我无法找到一个对应 mysql-server-5.1 软件包的文件。在这种情况下可能需要您手动修正这个软件包。(缘于架构缺失)
正在编辑扩展状态信息... 完成
E: 我无法找到一个对应 mysql-server-5.1 软件包的文件。在这种情况下可能需要您手动修正这个软件包。(缘于架构缺失)
E: 内部错误:无法生成下载软件包列表

通过aptitude remove mysql-server-5.1, reinstall, upgrade,都不能完全的对该包进行卸载或重装,而且导致其它软件包也不能安装。最后,用sudo aptitude dist-upgrade命令,解决了该问题。

ubuntu的软件包管理wiki: %E8%BD%AF%E4%BB%B6%E5%8C%85%E7%AE%A1%E7%90%86&variant=zh-hans

下面是aptitude upgrade和aptitude dist-upgrade的区别的描述:
apt-get upgrade 和 apt-get dist-upgrade 本质上是没有什么不同的。

只不过,dist-upgrade 会识别出当依赖关系改变的情形并作出处理,而upgrade对此情形不处理。

例如软件包 a 原先依赖 b c d,但是在源里面可能已经升级了,现在是 a 依赖 b c e。这种情况下,dist-upgrade 会删除 d 安装 e,并把 a 软件包升级,而 upgrade 会认为依赖关系改变而拒绝升级 a 软件包。
阅读(2466) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~