一、概述

现在Linux上软件的安装方式有多种,有源码包编译,软件包管理器,软件包管理器前端工具,通用二进制编译等。源码包,优点是,灵活性和可定制性比较好,缺点是,技术要求高,操作复杂,虽然网上有编译安装软件的文档,也有很多人在使用,也都是默认或者简单配置后编译的。后来出了软件包管理工具RPM,RPM软件包管理软件方便多了但是它的依赖关系让人头疼,所以又推出出了YUM解决了让人头疼的依赖关系。在这里我给大家介绍一下几种常用Linux软件安装方式。

二、软件包的组成

一个软件包安装之后包含多种类型文件,我们先了解一下它的组成与分布的位置

1、二进制文件

分布的目录:/bin,    /sbin,    /usr/bin,   /usr/sbin,   /usr/local/bin,   /usr/local/sbin

2、库文件

分布目录: /lib,   /usr/lib,   /usr/local/lib

3、配置文件

分布目录: /etc

4、帮助文件(通常这里会教你如何进行安装)

手册:README   INSTALL   /usr/share/doc

三、程序安装方式

1、通用二进制编译:别人编译好的,解压之后配置就能使用。

2、软件包管理器:使用rpm命令安装就可以使用了,但安装时要考虑到依赖关系。

3、软件包管理器前端工具:可以自动解决软件包的依赖关系。

4、源码包:源码包就是程序的源代码,必须通过编译器编译成二进制后才能使用,在编译时,软件所需的库文件一定要有,不然编译是不能成功的。

这里着重说一下源码包安装,由于一些特殊的个性化设置,我们需要源码包安装一个服务,我觉得它的基本思路就是遇到问题解决问题,当我们源码包安装一个服务时,最常见的问题就是缺少基础程序,也就是库文件(devel包),这时我们通过yum逐条击破安装,直到服务安装成功即可(不在报错)

源码包安装的基本流程:解压→进入目录→./configure --prefix=自己定义的安装路径(这个时候通常就是之前说的遇到问题的时候,提示缺少环境、依赖关系,用yum逐条安装即可)→make→make install

四、RPM软件包管理工具

1、基本功能:

打包、安装、查询升级、校验、写在、数据管理(重建)

2、rpm软件包包含:

文件清单、文件存放路径、提供的功能说明、依赖关系

3、数据库:软件包信息,软件包校验

4、源程序命名方式:

name-version.tar.{gz|bz2|xz}

版本号:major.minor.release 主版本号.次版本号.发行号

5、rpm包的命名方式:

name-version-release.arch.rpm

发行号:用于标识rpm包的本身发行号,可还包含所适用的操纵做系统

例如:el6:RHEL6

arch:主机平台

例如:i386、x86_64、amd64、ppc、noarch不区分平台

注意:下载软件包时要注意区分操作系统和平台,不然可能会装不上的

6、rpm分包

主包:核心包

分包:支包

例如:bind

bind-devel

7、常用软件包下载地址:

http://mirrors,sohu.com

http://rpmfind.net

8、安装软件包:rpm -i /path/to/rpm_file1 rpm_file2…

-i|–install    :安装一个新的软件包

-v :显示安装过程,-vv显示更详细的安装过程

-h :以#显示安装进度。一个#号表示2%的进度;

-ivh :通常这几个选项组合使用

–nodeps :安装时忽略依赖关系

–test :测试安装

–replacepkgs :重新安装

9、卸载软件包: rpm -e

10、查询软件包: rpm -q

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

rpm -qa |grep 'pattern'

-qi    :查询软件包的摘要信息

-ql    :查询软件包生成的文件清单:

-qf    :查询某文件由那个软件包安装生成:

-qc    :查询包安装生成的配置文件

-qd    :查询包安装生成的帮助文件

-q –scripts    :查询软件包相关的脚本

preinstall    :安装前脚本

postinstall   :安装后脚本

preuninstall   :卸载前脚本

postuninstall  :卸载后脚本

11、升级

-U:升级+安装

-F:升级

-Uvh

-Fvh

–force     强制安装

–nodeps    不检查依赖关系

注:内核不应该升级,应该尽可能安装,允许多版本并存

12、rpm数据库

rpm database:/var/lib/rpm

重建rpm数据库

rpm –initdb    :新建,不覆盖原有的数据库

rpm –rebuilddb    :覆盖,覆盖原有数据库(常用)

五、YUM软件包管理

1、自行解决依赖关系(比所有方法都方便,yum是Linux最佳实践)

2、repository:仓库,yum源

repodata/    :所在的父目录就是yum仓库,如果当前目录有repodata就说明这是一个yum仓库

RHEL6:的光盘镜像就是一个yum源

例如:把RHEL6的光盘挂载到/media/cdrom,那yum源配置文件里"baseurl=file:///media/cdrom"

3、客户端:

/etc/yum.conf    //yum主配置文件

/etc/yum.repos.d/*.repo    //yum配置文件

全局配置//对所有的yum仓库都生效# yum主配置文件详解

#/etc/yum.conf

#[main]    //定义yum源名称

#cachedir=/var/cache/yum    //定义yum的缓存目录

#keepcache=0    //保存缓存

#debuglevel=2    //调试级别

#logfile=/var/log/yum.log    //日志文件所在目录

#distroverpkg=redhat-release    //验证rpm发行版所使用的密钥文件

#tolerant=1    //忽略已安装的软件

#exactarch=1    //必须做平台的精确匹配

#obsoletes=1    //是否检查废弃的包

#gpgcheck=1    //是否检查rpm包的签名,验证rpm包来源的合法性

#plugins=1    //是否启用插件

# Note: yum-RHN-plugin doesn't honor this.

#metadata_expire=1h    //缓存文件在本地缓存多长时间#配置文件 /etc/yum.repos.d/*.repo详解

#[repo]

#name=Primary Yum repository

#baseurl=http://mirror.sohu.com/fedora-epel/6/i386/    //yum源网址

#enabled={0|1}       //{不开启|开启}

#gpgcheck={0|1}      //{不检查|检查签名}

#gpgkey=file:///etc/pki/RPM-GPG-KEY-redhat-base    //指定验证用的密钥文件

4、常用的yum命令//查询、清除建立缓存

#yum list {all|installed|available}    :列出软件包 {所有|已安装|可安装}

#yum repolist {all|enabled|disabled}   :列出yum源  {所有|开启的|未开启的}

#yum clean all                         :清除yum缓存

#yum makecache                         :生成yun缓存

//安装

#yum install package_name              :安装软件包,添加 -y可以自动回答yes

#yum reinstall package_name …         :重新安装软件包

#yum groupinstall "package-group_name" :安装一个包组

//升级

#yum update package_name               :升级软件包

#yum check-update                      :查询可升级的包

#yum update-to                         :升级到指定的版本

#yum groupupdate "group_name"          :升级包组

//卸载

#yum remove package_name …            :卸载一个软件包

#yum groupremove "group_name"          :卸载一个包组

总结了一下Linux下软件包安装方式,欢迎提问留言。

原文:http://blog.51cto.com/13210651/2116545

Linux_ppc下软件包安装,Linux下软件包安装详解相关推荐

  1. ps3slim安装linux,PS3 Slim配置详解 新旧款真机对比

    降价.轻薄.小巧,这都是玩家们看到PS3 Slim的第一印象.不过从厂商的角度来说,"Cost Down"降低成本肯定才是索尼推出PS3 Slim的源动力.向下兼容PS2肯定不要奢 ...

  2. 安装linux子系统报错,详解win10电脑中安装linux子系统出现错误0x80070057方法

    现在很多的小伙伴在安装系统的时候都是选择安装双系统的操作的,那其实可以根据需求安装 Win10的系统还有linux系统的是很常见的开发用户的程序的选择,win10电脑就内置有linux子系统的,安装出 ...

  3. linux下日志管理系统,Linux管理日志系统详解

    本文和大家探讨如何利用linux日志系统来管理系统.为方便阅读,在作者原文的基础上,有所修改. 对于日志信息的管理通常采用两种方法,一种方法是不同服务器的日志信息都存放在各自系统内,系统管理员对各服务 ...

  4. linux下lsof命令,Linux lsof命令使用详解

    在Linux终端下输入lsof即可显示系统打开的文件,因为 lsof 需要访问核心内存和各种文件,所以必须以 root 用户的身份运行它才能够充分地发挥其功能. COMMAND    PID      ...

  5. linux中etc目录下没有source,Linux /etc/profile文件详解及修改后如何立即生效(使用source命令)...

    Linux /etc/profile文件的改变会涉及到系统的环境,也就是有关Linux环境变量的东西,学习Linux要了解Linux profile文件的相关原理,这里对则以文件进行具体分析.这里修改 ...

  6. ubuntu 安装linux 下vmVMware tools 步骤及问题解决

    ubuntu 安装linux 下vmVMware tools 步骤及问题解决 参考文章: (1)ubuntu 安装linux 下vmVMware tools 步骤及问题解决 (2)https://ww ...

  7. jmeter linux安装,Linux下安装Jmeter

    今天我们学习下如何在Linux下安装Jmeter,因为Jmeter是Java开发的,需要依赖JDK环境,因此我们需提前安装好JDK. 本人环境: CentOS 7.3 64位 JDK 1.8(可参考文 ...

  8. linux下weblogic版本,Linux下weblogic10.3.6(jar)版本安装详解

    一.安装前的准备 安装weblogic是需要JDK环境的,虽然weblogic有自带的JDK,但是我一般是自己选择JDK进行安装,如果你要自行安装,可以参考我的另一篇博客 https://www.cn ...

  9. Ubuntu16.04下Mongodb官网安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 在这篇博客里,我采用了非官网的安装步骤,来进行安装.走了弯路,同时,也是不建议.因为在大数据领域和实际生产里,还是要走正规的为好. Ubuntu16.04下Mongodb(离线安 ...

  10. Ubuntu14.04下Mongodb数据库可视化工具安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 前期博客 Ubuntu14.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐) Ubuntu14.04下Mongodb官网安装部署步骤(图 ...

最新文章

  1. C++和Python的OpenCV中关于图像坐标的注意事项
  2. 六项任务、多种数据类型,谷歌、DeepMind提出高效Transformer评估基准
  3. iOS中本地化字符串
  4. 开放对静态资源的访问
  5. 推荐12个绚丽的CSS3图片悬停效果
  6. Linux下find命令用法详解
  7. 一直弹出adb已停止工作(远程主机强迫关闭现有的连接)的最简单完美解决法
  8. 2013职称计算机幻灯片题库,2013职称计算机考试题库宝典及答案解析(全).doc
  9. 嵌入式 Web Server 温度检测系统
  10. 苹果手机的Heic格式转换成jpg格式的简单python代码
  11. 2022-2028年全球与中国婴儿食品包装行业产销需求与投资预测分析
  12. python爬虫从入门到放弃,含案例分析,超详细讲解(一)
  13. arduino和stm32哪个更好学?
  14. plc控制伺服电机 四轴攻丝机案例(包含伺服接线图)
  15. 用深度学习识别海洋生物?飞桨轻松完成挑战!
  16. Android中Kotlin面试问题讲解
  17. ffmpeg 的 tbr tbc 和 tbn的意义
  18. 2020-05-16 购物时明白自己的需求才最重要+拖延症患者
  19. 《Linux命令行与shell脚本编程大全》第十三章 学习笔记
  20. html页面特效是怎么做的,HTML5实现晶莹剔透的雨滴特效

热门文章

  1. python random用法_python random 的用法
  2. 《 FRIDA系列文章 》
  3. apt-get、apt、yum、dpkg、rpm
  4. PL/SQL 连接配置
  5. java有关问题,java经典有关问题!
  6. oracle中having作用,oracle中having与where的区别
  7. 微软开源自动机器学习工具 – NNI安装与使用
  8. USTC 2011 homework list [现代软件工程 作业]
  9. 如何实现文件互拖-VMware Tools (ubuntu系统)安装详细过程与使用
  10. linux hash 算法,识别哈希算法类型hash-identifier