linux上软件二进制安装主要分为:rpm手动安装和yum在线安装(其所安装的都为rpm二进制包)。

关于rpm手动安装,学习后面内容前需分清如下内容:

  • 包全名 : 操作的包是没有安装的软件包时,使用包全名。而且需要注意路径
  • 包名 : 操作已经安装的软件包时,使用包名,是搜索 /var/lib/rpm中的数据库。

一、安装包分类  

  linux下软件安装包就分为如下两种:

  • 源码安装包。(安装较复杂)
  • 二进制安装包(.rpm包)。

此处以centos上安装为例

二、rpm包简介

  • rmp包来源

    rpm包在系统光盘中。

  • RPM包依赖性(rpm安装存在依赖性)

    • 树形依赖:a-->b-->c
    • 环形依赖:a-->b-->c-->a(各软件包在同一条RPM命令中执行安装)
    • 模块依赖:模块依赖,查询网址:www.rpmfind.net
  • RPM包命名规则

    • httpd-2.2.15-15.el6.centos.1.i686.rpm

      --httpd 软件包名

      --2.2.15 软件版本

      --15 软件发布次数

      --el6.centos 适合的linux平台

      --i686 适合的硬件平台

      --rpm rpm包扩展名

三、rpm命令介绍(rpm手动安装)

  若使用rmp命令,手动安装,由于各软件包存在一定的rpm依赖关系,安装过程会比较麻烦(后面介绍的yum在线安装,将自动安装依赖的rpm包,会使得安装过程非常简单)

  • rpm安装

    • rpm -ivh 包全名
    • 选项:
      • -i(instal) 安装
      • -v(verbose) 显示详细信息
      • -h(hash) 显示进度
      • --nodeps不监测依赖性(不推荐使用)
  • rpm包升级(仅推荐个人电脑上使用,一般服务器上不推荐升级软件版本,因为升级的话需要付出相应的代价)
    • rpm -Uvh 包全名
    • 选项 :
      •   -U(upgrade) 升级
  • 卸载
    • rpm -e 包名
    • 选项 :
      • -e (erase) 卸载
      • --nodeps(不推荐使用)
  • 查询是否安装
    • rpm -q 包名(查询包是否安装)
    • rpm -qa  (查询所有已经安装的rpm包)
  • 查询软件包详细信息
    • rpm -qi 包名
    • 选项 :
      • -i 查询软件信息(information)
      • -p 查询未安装包信息(package)
  • 查询包中文件安装位置
    • rpm -ql 包名
    • 选项 :
      • -l 列表(list)
      • -p 查询未安装包信息 (package)
      • -q 查询(query)
  • 查询系统文件属于哪个rpm包
    • rpm -qf 系统文件名
    • 选项 :
      • -f 查询系统文件件属于哪个rpm包(file)
  • rpm 包校验
    • rpm -V 已安装包名
    • 选项 :
      •  -V 检验指定RPM包中文件(verify)
      • 验证内容中的8个信息的具体内容如下:
        • S 文件大小是否改变
        • M 文件的类型或文件的权限(rwx) 是否被改变
        • 5 文件MD5校验和是否改变(可以看成文件内容是否改变)
        • D 设备的主从代码是否改变
        • L 文件路径是否变化
        • U 文件属主(所有者) 是否改变
        • G 文件属组是否改变
        • T 文件修改时间是否改变

四、yum命令介绍(yum在线安装)

  需要注意的 是,redhat的yum安装需要付费,而centos(已被redhat收购)的yum安装目前处于免费阶段

  • yum源文件

    • vi /etc/yum.repos.d/CentOS-Base.repo

      • [base] 容器名称,一定要放在[]中。
      • name 容器说明,自己可随便写。
      • mirrorlist 镜像站点,这个可以注释掉。
      • baseurl 我们的yum源服务器地址,默认是Centos官方yum源服务器。是可以使用的,如果你觉得慢,可以改成你喜欢的yum源地址。
      • enabled 此容器是否生效,如果不写或携程enable=1都是生效,写成enable=0就生效了。
      • gpgcheck 如果是1,是指RPM数字证书生效,如果是0则不生效。
      • gpgkey 数字证书的公钥文件保存位置,不用修改。
  • yum命令介绍
    • 安装(yum安装写包名即可)

      • yum -y install 包名
      • 选项 :
        • -install 安装
        • -y 自动回答yes(安装过程不需手动确认)
    • 卸载
      • yum -y remove 包名(服务器推荐最小化安装,用什么装什么,尽量不卸载)
      • 选项 :
        • -remove 卸载
        • -y 自动回答yes     

linux下软件安装与卸载的更多相关文章

  1. Linux下软件安装,卸载,管理

    一. 软件安装包的类型 通常Linux应用软件的安装有五种: 1) tar+ gz包,如software-1.2.3-1.tar.gz.     他是使用UNIX系统的打包工具tar打包的. 2) r ...

  2. linux下软件安装的几种方式

    linux下软件安装的几种方式(主要有源码安装, rpm安装, yum安装). 一:源码安装 几乎所有的开源软件都支持在Linux下运行,而这些软件一般都以源码形式发放,只需要Linux安装了gcc. ...

  3. Linux入门基础教程之Linux下软件安装

    Linux入门基础教程之Linux下软件安装 一.在线安装: sudo apt-get install 即可安装 如果在安装完后无法用Tab键补全命令,可以执行: source ~/.zshrc AP ...

  4. Linux 下软件安装

    Linux 下软件安装 一.Linux 上的软件安装 通常 Linux 上的软件安装主要有三种方式: 在线安装 从磁盘安装deb软件包 从二进制软件包安装 从源代码编译安装 这几种安装方式各有优劣,而 ...

  5. 2019-9-16:渗透测试,基础学习,Linux下软件安装,环境搭建,笔记

    Centos linux下软件安装yum 通过分析rpm包头数据后,自动解决依赖关系,直接云端下载软件,根据不同版本系统获取不同软件信息,按顺序下载rpm包,安装软件yum search 软件名:搜索 ...

  6. 【转】Linux下软件安装的几种方式

    转自Linux下软件安装的几种方式 Linux 系统的/usr目录 Linux 软件安装到哪里合适,目录详解 Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统 ...

  7. Linux下软件安装方法即路径设置

    Linux下软件安装方法即路径设置 http://www.cnblogs.com/edward259/archive/2010/07/02/1770066.html

  8. linux下软件安装的方法

    linux下软件的安装与卸载   第一章   linux下安装软件,如何知道软件安装位置 注:一般的软件的默认安装目录在 jdk-1_6_0_14-linux-i586-rpm.bin    ←修改为 ...

  9. (大数据工程师学习路径)第一步 Linux 基础入门----Linux 下软件安装

    介绍 介绍 Ubuntu 下软件安装的几种方式,及 apt,dpkg 工具的使用. 一.Linux 上的软件安装 通常 Linux 上的软件安装主要有三种方式: 在线安装 从磁盘安装deb软件包 从二 ...

随机推荐

  1. Deprecated: Call-time pass-by-reference has been deprecated in E:\wamp\www\admin\htdocs\busi.php on line 381

    Deprecated: Call-time pass-by-reference has been deprecated in E:\wamp\www\admin\htdocs\busi.php on ...

  2. DOM&BOM笔记

    day01正课:1. DOM概述2. ***DOM树3. *查找 1. DOM概述: DHTML:动态网页技术的统称 DHTML=HTML+CSS+JS 鄙视题: HTML XHTML DHTML X ...

  3. MySQL笔记--查询语句实践

    有一个用户表,属性为 id,age,buytime 创建表以及插入数据的语句 CREATE TABLE USER( id INT, age INT, buytime INT ) ,,); ,,); , ...

  4. TCP回射客户程序:str_cli函数

    str_cli函数完成客户处理循环: 从标准输入读入一行文本,写到服务器上,读回服务器对该行的回射,并把回射行写到标准输出上 读入一行,写到服务器 fgets读入一行文本,writen把该行发送给服务 ...

  5. ES聚合实例

    在es中需要根据app_categor进行聚合,JSON查询语句如下: { "query": { "bool": { "must": [ { ...

  6. poj Organize Your Train part II

    http://poj.org/problem?id=3007 #include<cstdio> #include<algorithm> #include<cstring& ...

  7. Qt自定义事件的实现(军队真正干活,但要增加监军,大平台通知事件,事件内容自定义)

    初学Qt,用了Qt自带的事件,然后想怎么才能定义自己的事件呢?又如何使用自定义事件呢?看了篇文章,说先要子类化QEvent,然后定义自己的QEvent::Type,然后重写QWidget::event ...

  8. android Base64加密解密

    // 加密传入的数据是byte类型的,并非使用decode方法将原始数据转二进制,String类型的数据 使用 str.getBytes()即可 String str = "Hello!&q ...

  9. Android AsynTask更新主界面

    虽然今天礼拜六还在加班,但是在等接口,所以还是有很多时间来自己学点东西的,所以就接着昨天的来.今天继续学的是不通过主线程来更新主线程的界面的问题. 昨天是用的开启线程调用Handler来更新线程,那个 ...

  10. 3Sum Closest——LeetCode

    Given an array S of n integers, find three integers in S such that the sum is closest to a given num ...