• linux无网络情况下安装rpm包


      首先理清楚两个东西:rpm和yum。rpm全称redhat package manager,用来管理软件包;yum全称yellow dog updater,modified,它是rpm的前端程序,因为它解决了rpm的软件包依赖问题,有点像maven的自动依赖管理。言归正传,rpm和yum都需要root权限;如果要下载软件包,毫无疑问,他们两者都需要联网。现在假设有两台linux机器,A机器能上网,B则啥都没有,我们来看下如何将rpm包搬家。

      我们先登上A的root,通过yum下载我们需要的包:

    # yum install ncurses-devel
    Loaded plugins: fastestmirror, product-id, search-disabled-repos, subscription-manager
    This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
    Loading mirror speeds from cached hostfile
    DVD                                                                                                                                              | 4.1 kB  00:00:00     
    cloudera-manager                                                                                                                                 |  951 B  00:00:00     
    mysql-connectors-community                                                                                                                       | 2.5 kB  00:00:00     
    mysql-tools-community                                                                                                                            | 2.5 kB  00:00:00     
    mysql56-community                                                                                                                                | 2.5 kB  00:00:00     
    (1/3): mysql-tools-community/x86_64/primary_db                                                                                                   |  61 kB  00:00:00     
    (2/3): mysql-connectors-community/x86_64/primary_db                                                                                              |  44 kB  00:00:00     
    (3/3): mysql56-community/x86_64/primary_db                                                                                                       | 233 kB  00:00:01     
    Package ncurses-devel-5.9-13.20130511.el7.x86_64 already installed and latest version
    Nothing to do

      再查查确认下:

    # yum list installed | grep ncurses-devel
    ncurses-devel.x86_64             5.9-13.20130511.el7         @DVD 

      下载好了,就要先搬到本地了,那么我们得知道它的存储路径,先看完整包名叫啥:

    # rpm -qa | grep 'ncurses-devel'
    ncurses-devel-5.9-13.20130511.el7.x86_64

      定位到具体路径:

    ]# cd ..
    # find . -name 'ncurses-devel-5.9-13.20130511.el7.x86_64*'
    ./mnt/Packages/ncurses-devel-5.9-13.20130511.el7.x86_64.rpm

      进入该路径,通过sz下载到本地目录:

    # cd /mnt/Packages
    # sz ncurses-devel-5.9-13.20130511.el7.x86_64.rpm
    rz
    开始 zmodem 传输。  按 Ctrl+C 取消。
      100%     712 KB  712 KB/s 00:00:01       0 Errors64.rpm...

      好了,我们打开B的非root用户wlf,通过rz上传上面的rpm包到soft目录:

    $ cd soft
    $ rz -y
    rz waiting to receive.
    开始 zmodem 传输。  按 Ctrl+C 取消。
      100%     712 KB  712 KB/s 00:00:01       0 Errors64.rpm...

      开始安装:

    $ rpm -ivh *.rpm --force --nodeps
    error: can't create transaction lock on /var/lib/rpm/.rpm.lock (Permission denied)

      我们发现rpm安装时创建事务需要使用锁文件,而普通用户没有权限访问,只能求助root了,切换到root后再次进入soft目录执行:

    # rpm -ivh ncurses-devel-5.9-13.20130511.el7.x86_64.rpm --force --nodeps
    Preparing...                          ################################# [100%]
    Updating / installing...
       1:ncurses-devel-5.9-13.20130511.el7################################# [100%]

      最后看下以上的yum命令:

      yum list installed:查看已经安装过的

      yum install:安装数据包

      yum remove:卸载数据包

      rpm的参数说明:

      -i:安装数据包

      -v:显示详细信息

      -h:显示安装进度

      (以上3个在安装时配套使用)

      --nodeps:取消依赖关系

      --force:强制安装

      -qa:查询所有安装包

  • 相关阅读:
    sqoop
    HBase API操作
    Hbase 01-安装| shell操作
    Azkaban
    Kafka-API
    Oozie
    Kafka Manager| KafkaMonitor
    kafka工作流程| 命令行操作
    CDH| HUE的自动化安装部署
    Impala
  • 原文地址:https://www.cnblogs.com/wuxun1997/p/11578515.html
Copyright © 2020-2023  润新知