zoukankan      html  css  js  c++  java
  • 实践:RPM 和 YUM 包管理

    引用自:http://www.ibm.com/developerworks/cn/linux/l-setup-rpmyum-pr/solutions-sidefile.html

    各种命令的确切输出会根据系统的配置而有所不同。

    练习 1. 安装 RPM 包的解答

    清单 1 显示了如何安装。


    清单 1. 使用 rpm 命令安装包

    				
    [tbost@t60 ~]$ sudo yumdownloader rpl
    [tbost@t60 ~]$ sudo rpm -ivh rpl-1.5.5-3.fc12.noarch.rpm 
    Preparing...                ########################################### [100%]
       1:rpl                    ########################################### [100%]
    

    练习 1 中步骤的顺序如下:

    1. 以 sudo 用户的身份使用 yumdownloader 命令下载 RPM 文件。

      根据 Linux 系统发行版本的不同,包的名称可能会不同。此外,您也可以从一个可信的镜像站点下载该包。

    2. sudo 用户使用 rpm -ivh命令安装文件。

      i 表示这是一个安装程序。v 表示详细的输出,而 h 标志将在安装期间以一系列的井号显示进度。

    注意:根据您的 Linux 系统发行版本和下载方法的不同,rpl 版本可能会与清单 1 中显示的有所不同。

    练习 2. 使用 RPM 查询信息的解答

    清单 2 显示了具体方法。


    清单 2. 使用 rpm -q 命令进行查询

    				
    [tbost@t60 ~]$ rpm -q rpl
    rpl-1.5.5-3.fc12.noarch
    [tbost@t60 ~]$ rpm -ql rpl
    /usr/bin/rpl
    /usr/share/doc/rpl-1.5.5
    /usr/share/doc/rpl-1.5.5/COPYING
    /usr/share/man/man1/rpl.1.gz
    [tbost@t60 ~]$ rpm -qf /bin/ls
    coreutils-8.5-7.fc14.i686
    

    练习 2 中步骤的顺序如下:

    1. 使用 rpm -q rpl 命令查询是否已经安装了包。

      如果未安装 rpl,输出结果将会显示 package rpl is not installed

    2. 使用 rpm -ql rpl 命令将列出 rpl 包拥有的所有文件。
    3. 使用 rpm -qf /bin/ls 命令返回拥有 /bin/ls 文件的包。

      coreutils 包拥有 /bin/ls 文件。

    注意:在 RPM 数据库上执行查询时不需要 Root 或 sudo 权限。根据您的 Linux 系统发行版本的不同,rpl 版本可能与清单 2 有所不同。

    练习 3. 使用 RPM 卸载包的解答

    清单 3 显示要使用的命令。


    清单 3. 使用 rpm 命令卸载包

    				
    [tbost@t60 ~]$ sudo rpm -e rpl
    [tbost@t60 ~]$ 
    

    输入命令 sudo rpm -e rpl 来卸载包。e 表示 erase。成功卸载后返回到 shell,没有任何错误提示,如清单 3 所示。

    练习 4. 使用 YUM 查找软件的信息的解答

    清单 4 显示如何使用 YUM 查找软件的信息。


    清单 4. 使用 YUM 安装软件

    				
    [tbost@t60 ~]$ yum list tcsh
    Loaded plugins: langpacks, presto, refresh-packagekit
    Adding en_US to language list
    Available Packages
    tcsh.i686 
    [tbost@t60 ~]$ yum info tcsh
    Loaded plugins: langpacks, presto, refresh-packagekit
    Adding en_US to language list
    Available Packages
    Name        : tcsh
    Arch        : i686
    Version     : 6.17
    Release     : 12.fc14
    Size        : 404 k
    Repo        : updates
    Summary     : An enhanced version of csh, the C shell
    URL         : http://www.tcsh.org/
    License     : BSD
    Description : Tcsh is an enhanced but completely compatible version of csh, the C
                : shell.  Tcsh is a command language interpreter which can be used both
                : as an interactive login shell and as a shell script command processor.
                : Tcsh includes a command line editor, programmable word completion,
                : spelling correction, a history mechanism, job control and a C language
                : like syntax.
    
    [tbost@t60 ~]$ yum deplist tcsh
    Loaded plugins: langpacks, presto, refresh-packagekit
    Adding en_US to language list
    Finding dependencies: 
    package: tcsh.i686 6.17-8.fc14
      dependency: rtld(GNU_HASH)
       provider: glibc.i686 2.12.90-17
       provider: glibc.i686 2.13-1
      dependency: libc.so.6(GLIBC_2.3)
       provider: glibc.i686 2.12.90-17
       provider: glibc.i686 2.13-1
      dependency: libc.so.6
       provider: glibc.i686 2.12.90-17
       provider: glibc.i686 2.13-1
      dependency: libc.so.6(GLIBC_2.1)
       provider: glibc.i686 2.12.90-17
       provider: glibc.i686 2.13-1
      dependency: libc.so.6(GLIBC_2.0)
       provider: glibc.i686 2.12.90-17
       provider: glibc.i686 2.13-1
      dependency: grep
       provider: grep.i686 2.7-1.fc14.1
       provider: grep.i686 2.7-2.fc14
      dependency: libc.so.6(GLIBC_2.3.4)
       provider: glibc.i686 2.12.90-17
       provider: glibc.i686 2.13-1
      dependency: libcrypt.so.1(GLIBC_2.0)
       provider: glibc.i686 2.12.90-17
       provider: glibc.i686 2.13-1
      dependency: libcrypt.so.1
       provider: glibc.i686 2.12.90-17
       provider: glibc.i686 2.13-1
      dependency: /bin/sh
       provider: bash.i686 4.1.7-3.fc14
    .....
    .....
    ......
    [tbost@t60 ~]$ 
    

    任务 1 中步骤的顺序如下:

    1. 使用 yum list tcsh 命令查询 tcsh 的可用性。

      如果您对某个包的名称不确定,您也可以使用 yum search 命令。

    2. 一旦您知道软件的名称后,请使用 yum info tcsh 命令来查询更详细的信息,例如许可证、软件大小、可用的版本以及软件用途描述。
    3. 使用 yum deplist tcsh 命令查询可用软件所必须的依赖软件。

      YUM 的一项优秀的功能就是能够查找和安装依赖软件,这是 rpm 命令不具备的。

    注意:rpm 命令一样,使用 YUM 执行查询时既不需要 root 权限也不需要 sudo 选项。根据您的 Linux 系统的发行版本的不同,软件的版本可能与清单 4 中所显示的有所不同。

    练习 5. 使用 YUM 安装软件的解答

    清单 5 显示预期的输入和输出。


    清单 5. 安装软件与依赖软件

    				
    [tbost@t60 ~]$ sudo yum install tcsh
    Loaded plugins: langpacks, presto, refresh-packagekit
    Adding en_US to language list
    Setting up Install Process
    Resolving Dependencies
    --> Running transaction check
    ---> Package tcsh.i686 0:6.17-12.fc14 set to be installed
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    .....
    .....
    .....
    .....
    
    Install       1 Package(s)
    
    Total download size: 404 k
    Installed size: 1.1 M
    Is this ok [y/N]: y
    			

    作为 sudo 用户输入 sudo yum install tcsh 来安装 tcsh,同时安装任何必需的但还未安装的依赖软件。请注意清单 5 的最后一行显示了 YUM 在试图安装任何软件之前需要征得您的同意。 默认值为 n,所以您必需明确地输入 y 来完成安装。 此外,您可以输入 sudo yum install -y tcsh 来指示 YUM 自动下载并安装该软件。

    注意: 根据您的 Linux 系统的发行版本的不同,软件的版本可能与清单 5 中所显示的有所不同。

    练习 6. 使用 YUM 卸载软件的解答

    清单 6 给出了解答。


    清单 6. 使用 yum 卸载软件

    				
    [tbost@t60 ~]$ sudo yum remove tcsh
    Loaded plugins: langpacks, presto, refresh-packagekit
    Adding en_US to language list
    Setting up Remove Process
    Resolving Dependencies
    --> Running transaction check
    ---> Package tcsh.i686 0:6.17-12.fc14 set to be erased
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    ........
    ........
    ........
    
    Installed size: 1.1 M
    Is this ok [y/N]: y
    Downloading Packages:
    Running rpm_check_debug
    Running Transaction Test
    Transaction Test Succeeded
    Running Transaction
    Erasing  : tcsh-6.17-12.fc14.i686   1/1
    
    Removed:
      tcsh.i686 0:6.17-12.fc14                                                            
    
    Complete!
    [tbost@t60 ~]$ 
    

    作为 sudo 用户输入 sudo yum remove tcsh 来卸载 tcsh,同时卸载与其一起安装的依赖软件,而您计算机中的当前任何软件都不再需要这些依赖软件。 请再次注意清单 6 中 YUM 在试图卸载任何软件之前需要征得您的同意。默认值为 n,所以您必需明确地输入 y 来完成卸载过程。 或者,您可以输入 sudo yum remove -y tcsh 来指示卸载不再提示。

    注意: 根据您的 Linux 系统的发行版本的不同,软件的版本可能与清单 6 中所显示的有所不同。

  • 相关阅读:
    LuaJIT 之 FFI
    rtmp时间戳问题导致的丢帧,帧率显示错误
    c# 调用 c++的 dll 中关于 char*传入传出参数
    “Microsoft”中不存在类型或命名空间名称“Office”(是否缺少程序集引用?)
    udp,select超时和recvfrom收不到数据原因
    rtmpdump应用在window中
    Win7下安装openssl
    debug模式不报错,release模式报错
    qt 断点无效
    http协议 c++ 接收
  • 原文地址:https://www.cnblogs.com/langqi250/p/2731812.html
Copyright © 2011-2022 走看看