解决CentOS 6.5更新后无法联网的问题以及利用yum的 yum-versionlock 插件锁定某个软件版本不升级的方法

来源:互联网 发布:淘宝400电话 编辑:程序博客网 时间:2024/06/05 21:54
        最近我把握的CentOS 6.5用yum update更新了,但是当我重启的时候,就无法联网了,只有系统刚刚安装时自带的System eth0能够连上网。但是它连接上的是局域网,无法上互联网。点击“网络连接”图标,显示的是VPN Connections (no plugin installed),我实在是找不到解决的办法。最后经过多次的重装与每次重装后的更新,我发现了问题所在,原来是因为更新的时候把NetworkManager相关的软件更新了,但是这些软件不知道什么原因,更新了之后,就能不能正常上网了,就会显示VPN Connections (no plugin installed)。
      例如,我的系统在更新的时候,在更新软件的列表中有如下的字体
        Updating:
             NetworkManager                  x86_64 1:0.8.1-75.el6            base    1.1 M
             NetworkManager-glib             x86_64 1:0.8.1-75.el6            base    232 k
             NetworkManager-gnome            x86_64 1:0.8.1-75.el6            base    465 k
             ORBit2                          x86_64 2.14.17-5.el6             base    168 k
             PackageKit                      x86_64 0.5.8-23.el6              base    527 k
      上面的含有NetworkManager的软件就是导致我的系统不能上网的罪魁祸首。
      那么,解决问题的办法就是,在用yum update升级的时候,不要升级NetworkManager相关的项。我们可以在网上下载到一个名叫yum-versionlock的yum插件,这个插件是可以在网上下载到的,然后安装这个插件。这个插件的作用就是可以锁定一些软件的版本,防止在用yum更新的时候把这些软件更新掉。然后我们需要配置yum的配置文件。在终端输入# vi /etc/yum.conf  编辑yum的配置文件。在[main]的下面一行(实际上只要在[main]的作用域内就行了)加上这样一句话exclude=*NetworkManager*  (其实在这里写上exclude=NetworkManager*就可以了,我为了保险起见,就那样写了)然后保存,退出(对于vim编辑器的使用,要是不会保存然后退出的话,可以百度vim编辑器的使用教程)。
      这时就可放心得使用yum update 或者使用 yum upgrade 进行更新了。
      上面的解决办法是一种永久性的。以后要想更新这些被锁定的软件,就重新编辑这个文件,并且把那行去掉就行了。当然,用编辑这个文件的方法可以解决很多软件不想更新的问题,只要将多个软件名都写在后面,然后用空客分割开来就行了。例如我除了不想更新NetworkManager之外,还不想更新内核,所以我这样编辑yum.conf文件exclude=kernel* *NetworkManager*,中间是用空格分割的。这种方法使用的是“*”通配符(可以代替零个或者若干个字符,例如上面的“*NetworkManager*”,代替的是名字中含有字符串“NetworkManager”的软件)。另外还可一使用“?”通配符(代替一个单个的字符)。
      如果只想在一次的更新中不更新某个版本,以后更新时还是要更新这个软件,那么就用这样的语句去更新  #yum --exclude=exclude=kernel* *NetworkManager* update   ,这个语句只会在本次的更新中掠过这个软件,即是临时性的。
      不知到怎么回事,在尝试解决CentOS 6.5更新后不能上网的问题时候,我尝试过安装CentOS 6.6版本,结果这个版本刚刚装上就不能上网,就提示VPN Connections (no plugin installed)。这个问题我没有解决。
0 0