频道栏目
首页 > 系统 > 其他 > 正文

Centos中软件安装

2017-06-19 09:34:22      个评论    来源:  
收藏   我要投稿

Centos中软件安装

安装工具简单介绍:

centos 中安装 软件可以分为使用包管理器安装,以及编译安装。

使用包管理器安装软件方便快捷,但是包管理安装的软件都是已经定制完成的。编译安装步骤虽然繁琐,但是 可以自己定制。

centos使用的包管理器有rpm与yum,但是yum的实现是基于rpm的,如果系统中没有安装rpm包管理器,yum同样无法安装软件包。


RPM 软件包介绍:

rpm软件包命名:

开头为程序包的名称 ,程序包有主包与子包之分.

主包名 子包名 开发版本号 编译版本号 运行的cpu架构 后缀
yum -utils -1.1.31 -40.e17 .noarch .rpm

rpm包构成:
1. 指明了安装路径的文件.

文件包括了可执行程序。帮助文件。配置文件。库文件。

2. 脚本.

脚本包括安装前脚本与安装后脚本,卸载前脚本与卸载后脚本。

3. 程序的元数据.

程序的依赖关系。程序文件的属性等。安装时原数据会纪录到rpm的数据库中。

rpm包管理器:

rpm包管理器的工作过程是将rpm包中的文件install到指定的路径。压缩时指定的是绝对路径。所以解压缩时文件存放的位置就是指定的绝对路径。一些与程序相关的配置会通过rpm包中的脚本实现。安装完成后将安装信息记录到rpm的专属数据库中。
rpm包管理器的路径/var/lib/rpm

rmp命令的使用:

安装选项:

-i / --install :安装,需要指明包的完整路径。
    -v  :显示过程 
        -vv:显示无比详细的过程
    -h  :以#拼凑成的进度条显示进度。
    --test  :测试安装
    --nodeps    :忽略依赖关系
    --replacepkgs:替换安装,整个包进行覆盖 。但是无法以旧版本的包替换新版本的包。
    --replacefiles:仅替换冲突的文件,
    --oldpackage:降级安装。
    --nosibnature:不检查包的来源合法性
    --nodigest:不检查包的完整性 
    --noscripes:不执行程序包脚本。
    --force:强制安装

升级选项:

-U / --upgrade :升级,不进行安装判断。
-F/ --freshen :升级,但是进行检测。如果存在老版本则升级,如果不存在该程序则,不执行任何操作。
    -v:显示过程 
    -h:进度
    --force :强制安装。

包查询:

包查询可以查看本地的rpm数据库。也可查看本地的rpm包。查询数据库时可以查看rpm包的原数据,安装信息。查询rpm包时查询rpm包的原数据,及相关文件信息。

-q:查询本地的数据库,即指定包名称,rpm会自动查询对应的包在数据库中的信息。
-qp:查询本地的rpm包。rpm会查询包中的元数据信息,以及文件的信息
    -a:查询数据库中的所有表项。即已经安装的rpm包
    -f:查询数据库。查找本地的文件由哪个rpm包安装。需要手动指定文件的路径。而后对比的起始时转化的绝对路径。与数据库中的信息。即文本的比较。与文件本身没有任何关系。如果将文件删除。同样指定路径。同样可以找到。
    -l:查询软件包中除脚本外的文件 。即需要install的文件。
    -i:查询软件的信息。介绍信息。
    -c:查询软件的配置文件。
    -d:查询程序的文档
    --scripts:查询rpm包的脚本。
    --changelog:查询包的更新历史。
    --whatprovides:查询能力由哪个包提供
    --whatrequires:查询能力被那个包依赖
    --peovides:查看程序包提供的能力
    -R:查看程序包依赖的能力。

卸载选项:

-e:卸载
    --nodeps:不检查包的依赖性
    --test: 测试
    --noscripts:不执行脚本

校验选项:

-V:检查安装后的包中所有文件的信息是否与数据库中相同。

-K:检查包的合法性。
--import :导入密钥,导入密钥也是以包的形式存在,包的名称gpg-pubkey*,查询时使用rpm -qa gpg-pubkey*,rpm查寻时可以使用通配符。
    光盘中的密钥位置:sr0/RPM-GPG-KEY-Centos-6 安装后系统中密钥的位置:/etc/pki/rpm-gpg/

注:安装内核时,会实现多版本并存所以,可以直接安装,或强制安装。安装老版本时可使用降级安装。但是 更新安装会覆盖原有内核。


yum包管理器:

yum为标准的c/s架构。yum是基于rpm的前端应用程序。底层实现依赖rpm程序。
yum server :保存了rpm软件包文件。以及所有软件包的原数据,原数据保存了所有包的依赖关系,存放在repodata中。yum server即为client提供数据存储服务。可以是http,ftp,也可以将server建立在本地即file。
yum client :根据yum的配置文件下载server端的repodata。缓存在本地查询repodata中的数据 ,进行安装

工作过程:

yum 指定包进行安装。yum 查询本地/etc/yum.repos.d/*.repo 中定义的server地址,并连接server下载server的repodata原数据。并将元数据缓存在本地。根据查询缓存的数据。检测包的依赖关系。下载相关包,然后进行安装。

yum配置文件:

yum同样也有日志文件。位于,/var/log/yum.log。
/etc/yum.conf:所有的仓库默认的配置信息
/etc/yum.repo.d/*.repo:仓库的配置信息,即server端的地址配置

/etc/yum.repo.d/*.repo文件格式:

[OS7] : 即仓库的ID随便写,但是不可以出现特殊符号与空白字符
name=       :即仓库的名称。、
baseurl=        :仓库的地址,server的地址。即repodata文件夹的父目录。可以指定多个每行一个 ,但在前端对齐。
        http://
        https://
        ftp://
        file:///
enabled=    0·1:此配置是否生效,1为生效,0 为不生效
gpgcheck=0·1:是否检测包的合法性。1 为检查,0为不检查
gpgkey=     :密钥的路径,server的路径,也可以是本地的路径使用file表示。
failovermethod= roundrobin·priority :当baseurl存在多在,此选项决定baseurl中条目的生效顺序。 
              roundrobin: 意为随机挑选,默认值
              priority:按顺序访问
cost=       :默认为1000。优先级但是决定的是整个ID的内容的优先级。

YUM命令使用:

repolist:显示仓库的列表,及仓库的信息.
list    :显示仓库中所有的包列表,但是信息是来自于仓库的repodata信息在本地的缓存。默认显示所有程序包的列表
    yum list {available|installed|updates}
info:显示程序包的信息
install:安装程序包
    yum install package1 [package2] [...]
    yum reinstall package1 [package2] [...] (重新安装)
update :升级安装
downgrade:降级安装
remove:卸载软件包
clean:清除本地缓存
localinstall:使用本地的程序包安装
localupdate:使用本地的程序包升级
search:以指定的关键字对仓库中的包及描述进行匹配。
history:操作yum的历史记录
    list 列出列表
    info:显示条目的详细信息
    undo:撤销条目的操作
    redo:重新执行执行条目

groupinstall    
groupupdate
grouplist
groupremove
groupinfo

编译安装:

编译安装,就是将软件的源代码,编译成可在当前系统上执行的二进制程序。
编译安装的过程为:
首先下载程序的源代码 ,一般为压缩包。根据压缩包的类型进行解压缩。解压缩完成后一般会获得一个源码的文件夹。
检查操作系统是否安装了开发包组。编译命令make由开发包组提供
查看源码包中的readme,install文件。使用源码包中的脚本configure根据模板文件makefile.ini生成最终的编译配置文件makefile。生成配置文件时可能会提示缺少依赖的软件包,生成配置文件时会脚本会检查依赖关系。
进入源码目录使用make进行编译,后使用make install 安装

上一篇:Docker基本使用教程
下一篇:Centos7下安装Mysql5.7
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 |

版权所有: 88bifa.com--致力于做实用的IT技术学习网站