转自:http://www.cnblogs.com/Quains/archive/2012/01/03/2311049.html

本文主要是记录下RedHat系列的软件包管理。

内容分为以下三个部分:二进制包的管理,源代码包的管理,脚本安装

一、二进制包的管理

1.1概念

主要有RPM和YUM这两种包管理。

两种包管理各有用处,其中主要区别是:YUM使用简单但需要联网,YUM会去网上的YUM包源去获取所需要的软件包。而RPM的需要的操作精度比较细,需要我们做的事情比较多。

1.1.1RPM

主要的操作

1)卸载

rpm  –e  [--nodeps]  sudo

[解析]  需要注意的是在卸载软件包的时候若和其它包有依赖关系,可以用--nodeps来强制卸载

2)安装

rpm  –i[v|h]  [--excludedocs |prefix |test |replace[pkgs |files] |nodeps]  sudo

[解析]  i为安装,v为显示详细信息,h为hash是进度信息

--excludedocs 不安装软件包的文档文件

--prefix PATH 将软件包安装到指定目录

--test 只对安装进行测试,并不实际安装(通常用来看下需要的依赖项)

--replace[pkgs|files] 当出现冲突时或想强制覆盖时可以使用

--nodeps 不考虑依赖关系,强制安装。(这样比较麻烦,而且通常无法使用。这也是使用RPM的一些不方便的地方,而YUM则解决了这个问题,在安装的时候会自动将所需要的都一起安装了)

【相关内容:】安装有时候会使用光驱安装,这里涉及到挂载点的概念。

在linux系统中,所有的设备都被看作文件,所以光驱也被看作文件。而要让系统不能直接访问这个文件,这时需要一个挂载点(通常是一个空文件,仅仅提供一个渠道,来连接系统和设备),然后系统就可以通过访问挂载点来访问光驱设备了。

挂载光驱的具体操作:

mkdir /mnt/cdrom 生成一个挂载点目录

mount /dev/cdrom /mnt/cdrom 讲dev中的cdrom挂载到挂载点上

3)查询

rpm  –q[a |f |p |i |l |d |c]  sudo

[解析]

-a  查询所有已安装的软件包

-f  查询 文件所属软件包

-p  查询软件包(通常用来看下还未安装的软件包)

-i  显示软件包信息

-l  显示软件包中的文件列表

-d  显示被标注为文档的文件列表

-c  显示被标注为配置文件的文件列表

[tips]  通常可以配合管道 | more [grep sudo] 来使用,使得结果更易读。

4)校验

rpm  -V  sudo

结果解析:S.5.L.T….

S 为文件大小

5 为文件的md5校验值

L 链接文件

T 文件创建时间

D 设备文件

U 文件的用户

G 文件的用户组

M 文件的权限

5)软件包文件提取

解压指定文件到当前目录

rpm2cpio   /../...rpm |cpio –idv   ./../..

1.1.2YUM

需要联网,操作一RPM类似,只是会自动安装依赖项。

主要操作:

1)安装 yum  install

2) 检测升级 yum  check-update

3) 升级 yum  update

4) 软件包查询 yum  list

5) 软件包信息 yum  info

6) 卸载 yum  remove

7) 帮助 yum  -help、man  yum

1.2实例

1.2.1从光盘中提取二进制包并恢复丢失的文件(用inittab做实验)

先建立一个挂载点并挂载

创建一个备份文档并删除inittab

通过挂载点读取光盘中的二进制包到当前目录

复制恢复被删除的文件

二、源代码包的管理

2.1源代码包的安装

1)解压解包

tar  -xzvf  源代码包

[解析]

x为解包、z为解压(仅适合gzip,bz2则先解包再bunzip解压)、v显示过程、f指定被解压包名

2)配置

进入解压后的目录,用 ./configure [—prefix=/usr/local/filname] 来配置,这个过程主要是收集系统信息、设置安装目录等(卸载的时候只需将这个目录删除则可)

3)编译

make

4)安装

make  install

三、脚本方式安装

1)解包解压

2)进入解压后的目录,查看README (vi READEME)获得安装方法

3)运行第二步获取的信息,通常是运行一个安装shell脚本(.sh)

Linux 软件包安装管理的更多相关文章

  1. Linux软件安装管理之——dpkg与apt-*详解 apt命令(dpkg和apt代替rpm)

    apt list *python* Nosee123关注赞赏支持   Linux软件安装管理之--dpkg与apt-*详解 [Linux软件安装管理系列]- - 传送门: - -<Linux软件 ...

  2. Linux软件安装管理之——dpkg与apt-*详解

    Linux软件安装管理之--dpkg与apt-*详解 [Linux软件安装管理系列]- - 传送门: - -<Linux软件安装管理之--源码安装详解> - -<Linux软件安装管 ...

  3. Linux软件安装管理

    1.软件包管理简介 1.软件包分类 源码包 脚本安装包 二进制包(RPM包.系统默认包) 2.源码包 源码包的优点是: 开源,如果有足够的能力,可以修改源代码 可以自由选择所需要的功能 软件设计编译安 ...

  4. Linux之软件包安装管理

    软件包分类: 源码包:脚本安装包(源C代码) 二进制包(rpm包,系统默认包) 源码包 1.源码包优点 开源,如果有足够的能力,完全可以修改源代码 可以自己选择所需要安装的功能 软件是编译安装,所以更 ...

  5. Linux软件安装管理概述

    介绍如何在Linux字符界面下安装软件 课程大纲: 一.软件包管理简介 二.rpm命令管理 三.yum在线管理 四.源码包管理 五.脚本安装包

  6. Linux软件包安装

    rpm命令 命名方式  name-VERSION-release.arch.rpm 常见的arch: x86:   i386  i486    i586   i686 x86_64:   x64    ...

  7. Linux软件安装管理---源码安装

    在Linux平台下,软件包的类型可以划分为两类:源码包.二进制包. 源码包: 即程序软件的源代码(一般也叫Tarball,即将软件的源码以tar打包后再压缩的资源包). 二进制包: 如 Red Hat ...

  8. Linux软件安装管理 - CentOS (三)

    1. 软件包管理简介 2. rpm命令管理(Redhat Package Manager) 3. yum在线安装 4. 源码包管理 4.1 源码包和RPM包的区别 4.1.1 区别 安装前:概念上的区 ...

  9. Linux软件安装管理 - CentOS (二)

    1. 软件包管理简介 2. rpm命令管理(Redhat Package Manager) 3. yum在线安装 3.1 yum源文件 vi /etc/yum.repos.d/CentOS-Base. ...

随机推荐

  1. spring XML格式

    使用spring遇见一个很坑的问题,在XML中 这样配置: <method name="newSoapParam2" parameters="java.lang.S ...

  2. JavaScript(2)——对象属性、原型与原型链

    对象属性.原型与原型链 哈哈哈,我的第二篇博客哟,说的是对象属性.原型与原型链.可能这些只是某些小点串联起来的,逻辑性没有很强.所以会对文章的可读性和理解性带来一些困扰.不过,今天我又前进了那么一小步 ...

  3. Objective-C相关Category的收集

    Objective-C相关Category的收集 Categories是给你得不到源码的classes增加功能的一种方法.这个页面收集一些相关的Category,并且持续更新,你可以订阅关注.作者是F ...

  4. JSON文件存入MySQL数据库

    目标:将不同格式的JSON文件存入MySQL数据库 涉及的点有: 1. java处理JSON对象,直接见源码. 2. java.sql.SQLException: Incorrect string v ...

  5. Lucene add、updateDocument添加、更新与search查询(转)

    package com.lucene;   import java.io.IOException;   import org.apache.lucene.analysis.standard.Stand ...

  6. SAX,DOM,JAXP,JDOM,DOM4J比较

    dom,sax,jdom,dom4j的技术特点: 1: DOMDOM 是用与平台和语言无关的方式表示 XML 文档的官方 W3C 标准.DOM 是以层次结构组织的节点或信息片断的集合.这个层次结构允许 ...

  7. ffmpeg合并多个视频

    实例1: 把4个视频(1.f4v, 2.f4v, 3.f4v, 4.f4v)合并成一个文件(out.mp4) 基本无损,而且速度飞快! #-vcodec copy -acodec copy   == ...

  8. PAT (Advanced Level) 1101. Quick Sort (25)

    树状数组+离散化 #include<cstdio> #include<cstring> #include<cmath> #include<map> #i ...

  9. Windows API 之 GetStartupInfo 、CreateProcess

    GetStartupInfo 参考:https://msdn.microsoft.com/en-us/library/windows/desktop/ms683230%28v=vs.85%29.asp ...

  10. AutoFac使用方法总结

    AutoFac是.net平台下的IOC容器产品,它可以管理类之间的复杂的依赖关系.在使用方面主要是register和resolve两类操作. 这篇文章用单元测试的形式列举了AutoFac的常用使用方法 ...