• 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
  • 相关阅读:
    antd4.x Form组建改变
    react hook 使用注意点
    Dockerfile怎么编写
    在spring boot中3分钟上手阿里巴巴服务熔断系统sentinel
    容器和镜像的导入导出及部署
    设计模式之 ==> 装饰器设计模式
    Jenkins + Gradle + Docker 自动化部署 SpringBoot 项目到远程服务器
    Linux运维常用的40个命令总结
    ceph集群部署
    tcpdump常用命令
  • 原文地址:https://www.cnblogs.com/sevenyuan/p/6349432.html
Copyright © 2020-2023  润新知