zoukankan      html  css  js  c++  java
  • 15个Linux Yum命令实例--安装/卸载/更新

    转自:http://songzj.iteye.com/blog/1920773

    第一次翻译外文,如有不正确之处请指出.  至于版权, 应该是属于原作者吧. 闹球不清.

        在linux环境中, 安装, 卸载更新包是一个极为常见的操作.大部分的linux环境都提供了包的管理工具, 例如:apt-get, dpkg, rpm, yum等等.

        一些Linux环境中,yum是默认的包管理工具.Yum是Yellowdog Updater Modified的简称.


     该文章阐释了经常被使用到yum命令的15个场景.

    1> 使用yum install 安装包.

         要安装一个包,使用 'yum install 包名'. 该命令将会自动的安装该包的依赖.

    # yum install postgresql.x86_64
    Resolving Dependencies
    Install       2 Package(s)
    Is this ok [y/N]: y
    
    Package(s) data still to download: 3.0 M
    (1/2): postgresql-9.0.4-5.fc15.x86_64.rpm          | 2.8 MB     00:11
    (2/2): postgresql-libs-9.0.4-5.fc15.x86_64.rpm    | 203 kB     00:00
    ------------------------------------------------------------------
    Total                                        241 kB/s | 3.0 MB     00:12     
    
    Running Transaction
      Installing : postgresql-libs-9.0.4-5.fc15.x86_64             1/2
      Installing : postgresql-9.0.4-5.fc15.x86_64                   2/2 
    
    Complete!

    默认的'yum install'命令, 将会在安装这些包之前 提示你"接受"或"放弃", 如果想要使用yum自动安装包,而不对你进行提示. 使用 -y 选项. 如下所示:

    # yum -y install postgresql.x86_64  

    2> 使用yum remove 卸载包.

      如下所示:使用'yum remove 包名' 命令卸载包.

    # yum remove  postgresql.x86_64
    Resolving Dependencies
    ---> Package postgresql.x86_64 0:9.0.4-5.fc15 will be erased
    
    Is this ok [y/N]: y
    
    Running Transaction
      Erasing    : postgresql-9.0.4-5.fc15.x86_64       1/1 
    
    Removed:
      postgresql.x86_64 0:9.0.4-5.fc15
    
    Complete!
     

    3> 使用 'yum update'命令升级已存在的包.

         如果你的系统中存在一个旧版本的包, 使用'yum update 包名' 可以使它升级到最新版本. 当然,这个命令也会自动的找出并安装该报的所有必须的依赖. 

    # yum update postgresql.x86_64  

    4> 使用'yum search'命令查找包. 

       如果你不知道你想要安装的包的准确包名, 可以使用'yum search 关键字', 他将会搜索并列出匹配你的'关键字'的所有记录. 

       下面的实例是在yum的资源库中搜索所有匹配关键字'firefox'的包, 并且将其罗列出来. 

    # yum search firefox
    Loaded plugins: langpacks, presto, refresh-packagekit
    ============== N/S Matched: firefox ======================
    firefox.x86_64 : Mozilla Firefox Web browser
    gnome-do-plugins-firefox.x86_64 : gnome-do-plugins for firefox
    mozilla-firetray-firefox.x86_64 : System tray extension for firefox
    mozilla-adblockplus.noarch : Adblocking extension for Mozilla Firefox
    mozilla-noscript.noarch : JavaScript white list extension for Mozilla Firefox
    
    Name and summary matches only, use "search all" for everything.

    5> 使用'yum info' 查看包的额外信息.

         一旦你使用yum search搜索到了一个包, 你就可以使用'yum info 包名' 来查看该包的额外信息.

    下面的例子展示了 'samba-common'包的额外信息.

    # yum info samba-common.i686
    Loaded plugins: langpacks, presto, refresh-packagekit
    Available Packages
    Name        : samba-common
    Arch        : i686
    Epoch       : 1
    Version     : 3.5.11
    Release     : 71.fc15.1
    Size        : 9.9 M
    Repo        : updates
    Summary     : Files used by both Samba servers and clients
    URL         : http://www.samba.org/
    License     : GPLv3+ and LGPLv3+
    Description : Samba-common provides files necessary for both the server and client
                : packages of Samba.

    6> 使用yum list 查看所有可见包.

        下面的命令将会列出yum 数据库中所有的可见包. 

    # yum list | less 
     

    7> 使用 yum list installed 查看你自己系统中已经安装的包. 

    # yum list installed | less  

    8>  使用'yum provides 文件名' 可以查看该文件属于哪个包.

    如果你想知道某个文件属于哪个包, 使用'yum provides'. 例如, 如想要知道 /etc/sysconfig/nfs 文见属于哪个包.可以使用如下命令.

    # yum provides /etc/sysconfig/nfs
    Loaded plugins: langpacks, presto, refresh-packagekit
    1:nfs-utils-1.2.3-10.fc15.x86_64 : NFS utilities and supporting clients and
                                     : daemons for the kernel NFS server
    Repo        : fedora
    Matched from:
    Filename    : /etc/sysconfig/nfs
    
    1:nfs-utils-1.2.4-1.fc15.x86_64 : NFS utilities and supporting clients and
                                    : daemons for the kernel NFS server
    Repo        : updates
    Matched from:
    Filename    : /etc/sysconfig/nfs
    
    1:nfs-utils-1.2.4-1.fc15.x86_64 : NFS utilities and supporting clients and
                                    : daemons for the kernel NFS server
    Repo        : installed
    Matched from:
    Other       : Provides-match: /etc/sysconfig/nfs

     9> 使用yum grouplist 查看可见的"软件集合",

          在yum 中,在一个指定的软件集合中,一些有关系的包被归类在一起, 你可以简单滴安装整个"软件集合"来安装所有该集合下的所有包, 而不是一个个的搜索和安装每个独立的包.

    如下所示. 你可以执行"yum grouplist"来查看所有可见的"软件集合", 列出的三个已安装"集合"有, 已安装语言, 可见"软件集合."

    # yum grouplist
    
    Installed Groups:
       Administration Tools
       Base
       Design Suite
       ....
    
    Installed Language Groups:
       Arabic Support [ar]
       Armenian Support [hy]
       Bengali Support [bn]
       ....
    
    Available Groups:
       Authoring and Publishing
       Books and Guides
       Clustering
       DNS Name Server
       Development Libraries
       Development Tools
       Directory Server
       Dogtag Certificate System
       ...

    10> 使用"yum groupinstall" 安装指定的"软件集合".

    如下示例中使用了'yum groupinstall' 功能来安装指定的软件集合 "DNS Name Server" 集合包含了bind 和bind-chroot.

    # yum groupinstall 'DNS Name Server'
    
    Dependencies Resolved
    Install       2 Package(s)
    Is this ok [y/N]: y
    
    Package(s) data still to download: 3.6 M
    (1/2): bind-9.8.0-9.P4.fc15.x86_64.rpm             | 3.6 MB     00:15
    (2/2): bind-chroot-9.8.0-9.P4.fc15.x86_64.rpm   |  69 kB     00:00
    -----------------------------------------------------------------
    Total               235 kB/s | 3.6 MB     00:15
    
    Installed:
      bind-chroot.x86_64 32:9.8.0-9.P4.fc15
    
    Dependency Installed:
      bind.x86_64 32:9.8.0-9.P4.fc15
    
    Complete!

       说明: 当然我们会稍后讨论如何使用yum groupinstall 安装mysql 数据库.

           原文链接.http://www.thegeekstuff.com/2010/04/yum-groupinstall-mysql-database/

    11>使用"yum groupupdate" 升级已存在的软件集合.

          如果你已经使用 yum groupinstall 安装用了一个"软件集合",然后想要把它升级到最新的版本. 你可以使用如下命令.

    # yum groupupdate 'Graphical Internet'
    
    Dependencies Resolved
    Upgrade       5 Package(s)
    Is this ok [y/N]: y   
    
    Running Transaction
      Updating   : evolution-data-server-3.0.2-1.fc15.x86_64     1/10
      Updating   : evolution-3.0.2-3.fc15.x86_64                 2/10
      Updating   : evolution-NetworkManager-3.0.2-3.fc15.x86_64  3/10
      Updating   : evolution-help-3.0.2-3.fc15.noarch            4/10
      Updating   : empathy-3.0.2-3.fc15.x86_64                   5/10
      Cleanup    : evolution-NetworkManager-3.0.1-1.fc15.x86_64  6/10
      Cleanup    : evolution-help-3.0.1-1.fc15.noarch            7/10
      Cleanup    : evolution-3.0.1-1.fc15.x86_64                 8/10
      Cleanup    : empathy-3.0.1-3.fc15.x86_64                   9/10
      Cleanup    : evolution-data-server-3.0.1-1.fc15.x86_64     10/10 
    
    Complete!

    12: 使用"yum groupremove" 来卸载软件集合.

       好不容易装上了, 又升级到最新版本了. 又要卸载掉.有病吧.^_^.......

    # yum groupremove 'DNS Name Server'
    Dependencies Resolved
    Remove        2 Package(s)
    Is this ok [y/N]: y
    
    Running Transaction
      Erasing    : 32:bind-chroot-9.8.0-9.P4.fc15.x86_64  1/2
      Erasing    : 32:bind-9.8.0-9.P4.fc15.x86_64            2/2 
    
    Complete!

    13>  使用"yum repolist"列出你当前的yum 资源库.

     所有的yum命令"依赖"这一个或者多个yum资源库. 执行'yum repolist' 可以查看你系统中所有的yum资源库配置信息. 

    如下所列的只有可用的资源库.

    # yum repolist
    repo id     repo name                        status
    fedora      Fedora 15 - x86_64               24,085
    updates     Fedora 15 - x86_64 - Updates     5,612

    如果想要查看所有的包含"可用"和"不可用"资源库, 使用"yum repolist all"

    # yum repolist all
    repo id                   repo name                                status
    fedora                    Fedora 15 - x86_64                       enabled: 24,085
    fedora-debuginfo          Fedora 15 - x86_64 - Debug               disabled
    fedora-source             Fedora 15 - Source                       disabled
    rawhide-debuginfo         Fedora - Rawhide - Debug                 disabled
    rawhide-source            Fedora - Rawhide - Source                disabled
    updates                   Fedora 15 - x86_64 - Updates             enabled:  5,612
    updates-debuginfo         Fedora 15 - x86_64 - Updates - Debug     disabled
    updates-source            Fedora 15 - Updates Source               disabled
    updates-testing           Fedora 15 - x86_64 - Test Updates        disabled
    updates-testing-debuginfo Fedora 15 - x86_64 - Test Updates Debug  disabled
    updates-testing-source    Fedora 15 - Test Updates Source          disabled

    如果想要查看不可用资源库. 使用 "yum repositories disabled"

    14> 从不可用的资源库安装, 可用使用"yum -enablerepo"

    yum默认的会从可用的资源库中安装文件. 不过某些原因下,你必须从不可用的资源库安装它, 那么你可以使用

    -enablerepo参数.如下所示.

    # yum --enablerepo=fedora-source install vim-X11.x86_64
    Dependencies Resolved
    Install       1 Package(s)
    Is this ok [y/N]: y
    
    Running Transaction
      Installing : 2:vim-X11-7.3.138-1.fc15.x86_64   1/1 
    
    Complete!

    15> 使用Yum Shell 的方式来执行yum命令.

    yum支持使用yum shell的方式来运行多个yum命令. 

    # yum shell
    Setting up Yum Shell
    > info samba.x86_64
    Available Packages
    Name        : samba
    Arch        : x86_64
    Epoch       : 1
    Version     : 3.5.11
    Release     : 71.fc15.1
    Size        : 4.6 M
    Repo        : updates
    Summary     : Server and Client software to interoperate with Windows machines
    URL         : http://www.samba.org/
    License     : GPLv3+ and LGPLv3+
    Description :
                : Samba is the suite of programs by which a lot of PC-related
                : machines share files, printers, and other information (such as
                : lists of available files and printers). The Windows NT, OS/2, and
                : Linux operating systems support this natively, and add-on packages
                : can enable the same thing for DOS, Windows, VMS, UNIX of all
                : kinds, MVS, and more. This package provides an SMB/CIFS server
                : that can be used to provide network services to SMB/CIFS clients.
                : Samba uses NetBIOS over TCP/IP (NetBT) protocols and does NOT
                : need the NetBEUI (Microsoft Raw NetBIOS frame) protocol.
    
    > 

    当然, yum也可以从一个text文件中读取命令,然后一行行的执行, 对于你有多个系统的时候是非常有用的.

    创建一个包含这些命令的text文件,然后使用 'yum shell'来执行这些命令, 而不必再每个系统上执行一样的命令.

    # cat yum_cmd.txt
    repolist
    info nfs-utils-lib.x86_64
    
    # yum shell yum_cmd.txt 
    repo id     repo name                        status
    fedora      Fedora 15 - x86_64               24,085
    updates     Fedora 15 - x86_64 - Updates     5,612
    
    Available Packages
    Name        : nfs-utils-lib
    Arch        : x86_64
    Version     : 1.1.5
    Release     : 5.fc15
    Size        : 61 k
    Repo        : fedora
    Summary     : Network File System Support Library
    URL         : http://www.citi.umich.edu/projects/nfsv4/linux/
    License     : BSD
    Description : Support libraries that are needed by the commands and
                : daemons the nfs-utils rpm.
    
    Leaving Shell
  • 相关阅读:
    gc buffer busy/gcs log flush sync与log file sync
    给Oracle年轻的初学者的几点建议
    Android 编程下帧动画在 Activity 启动时自动运行的几种方式
    Android 编程下 Touch 事件的分发和消费机制
    Java 编程下 static 关键字
    Java 编程下 final 关键字
    Android 编程下模拟 HOME 键效果
    Why Are Thread.stop, Thread.suspend, Thread.resume and Runtime.runFinalizersOnExit Deprecated ?
    Extjs4 大型项目目录结构重构
    [转]SQLServer 2008 允许远程连接的配置方法
  • 原文地址:https://www.cnblogs.com/sevenyuan/p/6349432.html
Copyright © 2011-2022 走看看