Linux学习笔记(十二)软件安装

1. 源代码

        绝大多数开源软件都是直接以源代码形式发布,源代码一般会被打包成tar.gz的归档压缩文件,需要编译成二进制之后才能运行使用。

        开源软件的基本编译流程:

(1) ./configure----检查编译环境、相关库文件以及配置参数并生成makefile

(2) .make----对源代码进行编译,生成可执行文件

(3) make install----将生成的可执行文件安装到当前的计算机

        源代码形式的软件使用起来较为麻烦,但是兼容性及可控性较好。开源软件一般都会大量使用其他开源软件的功能,所以开源软件会有大量的依赖关系(使用某软件需要先安装其他软件)

        因此,源代码形式的优点是:适于所有操作系统,可控性强,缺点是操作复杂、编译时间长、极易出现错误。为了方便使用,出现了RPM(Redhat Package Manager)。

2. RPM

        RPM通过将源代码基于特定的平台系统编译为可执行文件,并保存依赖关系,来简化开源软件的安装管理。

        RPM的设计目标是:使用简单、使用单一软件包格式文件发布、可升级、追踪软件的依赖关系、可查询基本信息、支持软件验证功能、支持多平台(不同平台,编译不用RPM包)。

        RPM软件包的常用命名规范为:linuxcast-1.2.0-30.el6.i686.rpm,其中linuxcast为软件名,1.20.0-30为版本号,el6为系统平台,i686为32位。

        RPM基础命令

        安装软件:rpm -i software.rpm           卸载软件:rpm -e software(只跟软件)

        升级形式安装:rpm -U software-new.rpm

        rpm支持通过http、ftp协议安装文件:rpm -ivh http://www.linux.net/software.rpm,其中-v表示显示详细信息,-h显示进度条

        RPM查询:

        列出所有安装的rpm软件:rpm -qa

查询指定已安装rpm软件的信息:rpm -qi packagename

查询指定已安装rpm软件包含的文件:rpm -ql packagename

查询目标文件属于哪个rpm包:rpm -qf filename

查询rpm文件的信息:rpm -qip software.rpm

查询rpm文件包含的文件:rpm -qlp software.rpm

        RPM验证:软件在传播的过程中可能会被恶意的修改,所以安全起见,现代系统都加入了对软件的验证功能,一般使用非对称加密算法,所以需要一个密钥。

        导入密钥的方法:rpm --import RPM-GPG-KEY-CentOS -6

        验证rom文件:rpm -k software.rpm

        验证已安装的软件:rpm -v software

3. 软件管理:YUM

        YUM(Yellowdog Updater Modified)是一个RPM的前端程序,主要目的是设计用来自动解决RPM的依赖关系问题。

        YUM的特点是:自动解决依赖关系、可对RPM进行分组,并基于组进行安装操作、引入仓库概念并支持多个仓库、配置简单等

        YUM引入仓库(repo)的概念,仓库用来存放所有现有的rpm软件包,使用yum安装一个rpm软件的时候,如果存在依赖关系,会自动在仓库中查找依赖软件并安装。仓库可以是本地的,也可通过http、ftp或NFS形成使用集中的,统一的网络仓库。仓库的配置文件保存在/etc/yum.repos.d/目录下。格式如下:

[linux-rpm-package]

name = this is xx rpm software repo

baseurl = http://www.linux.com/yum/centos

enabled = 1

gpgcheck = 1

        yum配置文件必须以.repo结尾,一个配置文件可以保存多个仓库的配置信息。

YUM仓库:

        yum管理软件常见命令:

yum install software-name        表示安装指定文件

yum remove software-name     表示卸载指定文件

yum update software-name      表示升级指定文件

YUM查询:

yum search keyword                 表示按照指定关键字进行搜索

yum list (all|installed|updates)   表示列出全部、已安装的、最近的、软件更新

yum info packagename             表示显示指定软件信息

yum whatprovides filename       表示查询哪个rpm软件包含目标文件

创建YUM仓库:

        手工创建yum仓库:

(1) 将所有的rpm包拷贝到一个文件夹(一般在安装光盘中的package文件中)

(2) 通过rpm命令手工安装createrepo软件

(3) 运行命令,出现repodata文件夹:createrepo -v /rpm-directory

(4) 如果有分组信息,则运行命令的时候用-g参数指定分组文件

      createrepo -g /tmp/ *comps.xml   /rpm-directory

      CentOS/RHEL的分组信息保存在光盘repodata/目录下,文件名以.xml结尾的xml文件

(5) 创建好之后,编写yum配置文件,本机可以通过file方式直接使用,如需作为对外的YUM仓库服务器,可通过HTTP、FTP或NFS协议获取

在/etc/yum.repos.d目录下,创建.repo配置文件

[linux-base]

name = linux yum repo

baseurl = file:///linux-yum/

enabled = 1

gpgcheck = 1

        yum为了提高速度会缓存很多信息这些缓存有时会造成一些故障,可通过: yum clean all消除缓存,每次安装或查询类命令会重建yum缓存。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mengrennwpu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值