首先简要介绍一下ubuntu的包安装机制。 ubuntu的包安装机制是从debian一脉继承过来的。在/etc/apt/sources.list里面记录了很多包的安装源,这些源是一些经过特殊处理的服务器的url地址。这些服务器上大多都能提供一个列表,上面写有对于ubuntu的某个版本我能提供什么软件,每个软件的名称、版本号、大小、MD5校验码各是多少等等信息。这样apt包管理器就可以去这些服务器上取自己想要的包。至于"新立得软件包管理器"是apt的一个GUI包装,它更加方便了像我这种外行and新鸟使用。
菜鸟玩Linux最忌讳的一件事就是胡乱卸载原装的软件。因为Linux是不限制你卸载的,它体现的就是这种自由的感觉。有很多软件都有依赖关系,比如他依赖于某个库,如果那个库被删掉的话这个软件肯定跑不起来的。有时候缺少依赖的库时会有提示,你可以根据提示去装对应的库;但是如果是系统一级的库丢失了,就可能啥提示也米有了。(这对于我们coder来说很容易理解,一般调用频繁的底层地方很少会去做log处理) "新立得软件包管理器"使用图形界面的方式很好的标出了每个包的功能,服务器上的最新版本号,当前安装的版本号,以及当前包和其他包的调用和被调用的依赖关系,方便用户做出选择。另外有明显的依赖错误,它还可以自动去修复。
今天上午我在调mplayer时胡乱卸载和安装了一些gstreamer解码器,结果下午系统整个没有声音了。我心里立马凉了一半,完蛋了——上google查上ubuntu中文查也没有查到对应的解决方案。(对于这种依赖关系造成的问题在网上很难查到,原因正是因为我前面说的菜鸟们都知道“菜鸟玩Linux最忌讳的一件事就是胡乱卸载原装的软件”,所以都不会犯这种软错误) 如果是以前,我也只有重装系统了(菜吧?),但是今天竟然运气好,没有装。原因是"新立得软件包管理器"的“编辑”菜单中有一项“使用任务分组标记软件包" —— 这是什么东东?原来ubuntu记录了各种发布版(ubuntu有7~8中不同规格的发布版,比如ubuntu,kubuntu,xubuntu,edubuntu,……) 所预装的所有包的包依赖,使用这个功能就可以把比原先预装的包少的包给标识出来。我标出来一看,原来不是解码器少了,而是我把Totem和Totem-gstreamer这个预装的音乐播放器给删掉了,汗!!
重新装上后,声音就正常了。Thanks God!!
--------------------next---------------------
阅读(622) | 评论(0) | 转发(0) |