Linux教程:rpm包管理器,yum工具,编译安装从入门(4)

示例:
#vim centos-local.repo
[base]
name=Base Repo on 198.18.0.1
baseurl=http://198.18.0.1/cobbler/ks_mirror/CentOS-6.6-x86_64/
gpgcheck=0
[epel]
name=Fedora EPEL for EL6 x86_64
baseurl=http://198.18.0.1/frdora-epel/6/x86_64
gpgcheck=0

yum命令的用法:yum [options] [command] [package]
 显示仓库列表:
  repolist [all|enabled|disabled]
 显示程序包:
  list
  #yum list [all | glob_exp1] [glob_exp2]
  #yum list {available|installed|updates} [glob_exp1]
 安装程序包:
  install package1 [package2]
  reinstall package1 [package2](重新安装)
 升级程序包:
  update [package1] [package2]
  downgrade package1 [package2](降级)
 检查可用升级:
  check-update
 卸载程序包:
  remove | erase package1 [package2]
 查看程序包的简要信息:(类似于rpm -qi)
  info package
 查看指定的特性(可以是某文件)是由哪个程序包所提供:
  provides | whatprovides feature1 [feature2]
 清理本地缓存:
  clean [ package | metadata | expire-cache | rpmdb | plugins | all ]
  (程序包|元数据|过期缓存|rpm数据库数据|插件|所有)
 构建缓存:
  makecache
 根据关键字搜索相关信息:
  search string1 [string2](以指定的关键字搜索程序包名及summary信息)
 查看指定包所依赖的capabilities:
  deplist [package1] [package2]
 查看yum事务历史:
  history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]
 安装及升级本地程序包:
  localinstall rpmfile1 [rpmfile2]
  (maintained for legacy reasons only - use install)
  localupdate rpmfile1 [rpmfile2]
  (maintained for legacy reasons only - use update)
 包组管理的相关命令:
  groupinstall group1 [group2](安装包组)
  groupupdate group1 [group2](升级包组)
  grouplist [hidden] [groupwildcard](列出包组的列表)
  groupremove group1 [group2](移除包组)
  groupinfo group1(查看包组的相关信息)
 yum源的配置文件要求指明了做版本精确匹配的,yum源仓库的指向必须升级,不能降级,所有CentOS 6.0可以指向CentOS6.1的源,反之不行。
示例:
#less CentOS-Base.repo
解释:CentOS自行提供的定义repo仓库的文件
#rpm -q yum
解释:查询yum的安装信息
#rpm -qc yum
解释:查询yum的配置文件的信息
#yum repolist
解释:列出系统中所有可用的仓库
#yum install php-common
解释:安装php-common文件
#yum remove cpp
解释:删除cpp程序包
#yum provides gcc
解释:查看gcc程序是由哪个程序包所提供
#yum search bash
解释:搜索包含bash的信息有哪些
#yum deplist gcc
解释:查看gcc包所依赖的capabilities能力
#yum history
解释:查询过去安装、升级、卸载等事务的操作历史记录
#yum history summary
解释:查看安装历史的摘要信息
#yum grouplist
解释:显示包组信息
#yum groupinstall "Development Tools"
解释:安装程序开发工具的包组“Development Tools”
安装实例:
#mount -r /dev/cdrom /media/cdrom
#cd /etc/yum.repos.d/
#vim local.repo
[base]
name=CentOS 7 Release 7.1.1503
baseurl=file:///media/cdrom
enabled=1
gpgcheck=0
#yum repolist
解释:查看系统中所有可用的yum仓库
#yum list all
解释:查看所有的程序包
#yum grouplist
解释:查看包组信息
yum命令的用法之yum仓库:
如何使用光盘当作本地yum仓库:
 (1)挂载光盘至某目录,例如/media/cdrom
  #mount -r -t iso9660 /dev/cdrom /media/cdrom
 (2)创建配置文件
  [CentOS7]
  name=CentOS 7 Release 7.1.1503
  baseurl=file:///media/cdrom
  gpgcheck=0
  enabled=1
yum的命令行选项:
 --nogpgcheck:禁止进行gpg的检查
 -y:自动回答为“yes”
 -q:静默模式
 --disablerepo=repoidglob:临时禁用此处指定的repo
 --enablerepo=repoidglob:临时启用此处指定的repo
 --noplugins:禁用所有插件
yum的repo配置文件中可用的变量:
 $releasever:当前OS的发行版的主版本号
 $arch:平台
 $basearch:基础平台
 $YUM0-$YUM9
 $releasever/$basearch/os
创建yum仓库:
createrepo [options] <directory>
 -u --baseurl:表示可选的,指明baseurl
 -o --outputdir:表示输出数据到什么地方去
 -x --excludes:表示把哪些包排除了
 -i --pkglist:指明对哪些包创建
 -g --groupfile:指明有哪些包组的
 --basedir:能获取repodata的basedir,默认是当前的工作目录
Linux软件包管理之--编译安装
testapp-VERSION-release.src.rpm(源代码格式的rpm包文件)-->安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装:
 源代码-->预处理-->编译(gcc)-->汇编-->链接-->执行
源代码组织格式:(如果是程序的开发者很好理解编译安装程序的顺序,但是对于一般的用户来说并不能够直接理解编译程序的具体步骤)
 多文件:文件中的代码之间,很可能存在跨文件依赖关系
 C,C++:有一个非常著名的项目管理工具make,其配置文件为makefile,Makefile.in文件是构建模板,configure是文件生成工具(configure-->Makefile.in-->makefile)
 java:maven
编译安装三部曲:
【1】./configure
  (1)通过选项传递参数,指定启用特性、安装路径等,执行时会参考用户的指定以及Makefile.in文件生成makefile
  (2)检查各启用特性所依赖到的外部环境
【2】make
  根据makefile文件,构建应用程序
【3】make install
  将编译完成的文件copy到对应的目录文件当中
开发工具:
 autoconf:用来生成configure文件
 automake:用来生成Makefile.in文件
 建议:安装前先查看INSTALL文档,如果没有就找README文件

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/12836.html