1、rpm(redhat package manager)管理器主要目的在于解决软件的安装、卸载、升级、查询、验证等,例如升级过程中,保留软件的配置文件,安装过程中,检查软件依赖的库文件,以及卸载过程中,检查依赖的包关系,最主要的是它以二进制的方式进行操作,不用用户自己编译源文件。但是有个问题就是他只能检查依赖关系,却不能帮助用户解决依赖关系,所以用户安装某个文件可能就会陷入庞大的依赖关系中不能自拔。
2、yum管理器最大的功能是解决了rpm所不能解决的包依赖关系。
3、关于rpm命令的相关指令,常用组合有以下:
-1 rpm -ivh [rpm] 安装及显示安装过程,v表示输出级别,h表示输出过程
-2 rpm -qa | grep [...] 查询已经安装的包
-3 rpm -qf [file] 查询文件隶属哪个包
-4 rpm -qc [rpm] 查询包的配置文件路径
-5 rpm -qi [rpm] 查询包的摘要(包含是否安装的日期信息)
-6 rpm -q --scripts [rpm] 查询包的常用脚本信息
-7 rpm -qd [rpm] 查询包的帮助文档
-8 rpm -ql [rpm] 查询包所含文件
-9 rpm -Uvh [rpm] 打升级包(若没有此套件,则安装) -Fvh 打升级包(若没有此套件,则不安装)
-10 rpm -e [rpm] 删除包
4、关于yum命令的相指令,常用的有以下:
-1 yum list [all|installed|available] #显示程序包
-2 repolist #显示库源,并创建
-3 info [rpm_name] #查看包信息
-4 groupinfo [group_name] #查看包组信息
-5 clean all #清空所有缓存
-6 makecache #生成缓存
-7 install [rpm_name] #安装 -y 直接安装不提醒
-8 reinstall [rpm_name] #重新安装
-9 check-update #检查可升级的包
-10 update [rpm_name] #若不指定,查询全部升级包,并提示是否升级
-11 update-to [rpm_name_release] #指定升级版本
-12 remove [rpm_name] #卸载
-13 provides [rpm_file] #显示文件由哪个包安装
-14 groupinstall #安装包组 groupremove #删除包组
-15 localinstall [rpm_name] #本地安装,可以安装rpm包,并解决依赖关系
5、本地yum库创建过程:
-1 createrepo rpms_dir_path #生成repodata文件夹
-2 编写库配置文件.repo /etc/yum.repo.d/
另:yum主信息 /etc/yum.conf
[main] #默认配置(唯一)
cachedir= #缓存路径
keepcache= #rpm是否保存在本地0否,1是
debuglevel= #显示调试信息的级别
logfile= #日志文件路径
exactarch= #rpm包是否跟本地平台完全匹配,默认1匹配
gpgcheck= #是否检查数字签名,默认1检查
-3 .repo格式如下:
[repo_name]
name= #更类似于description描述信息
baseurl= #库源路径,可ftp,http,本地,为repodata文件夹所在的父路径,此处路径可用一些内置变量替代
eg:http://mirror.sohu.com/centos/$releasever/os/$basearch/
$releasever #系统主版本号
$arch #内核版本 uname -r
$basearch #取得平台的基准平台架构,例如586,686,都取386
gpgcheck= #数字签名检测,默认检测,可不设置
gpgkey= #数字签名检测所需的密钥
enabled= #是否开启,默认开启,可不设置
cost= #优先级,数字越大,优先级越低,可不设置
-4 yum clean all #清理缓存
-5 yum repolist #写入repo列表,使其生效
6、怎么将*.src.rpm制作成二进制版本的rpm
-1 rpm -ivh *.src.rpm
-2 cd 到 spec目录
-3 rpmbuild -bb *.spec 只生成二进制格式的rpm包,不再生成源码格式的rpm包,若需源码格式-ba
7、编译安装完后,所需执行的步骤:
1、执行命令环境变量问题:
-1 hash会告知你执行的命令是否是原装的rpm还是新编译的
-2 环境变量应设置在原环境变量之前,若没有删除原rpm的话
2、库文件搜索路径:
-1 添加搜索路径,/etc/ld.so.conf.d/*.conf,创建的新文件中加入新的lib路径
eg:vim /etc/ld.so.conf.d/apache.conf
加入/usr/local/apache/lib
-2 ldconfig -v 重新搜索库路径,生成缓存/etc/ld.so.cache
3、man文件定位
-1 vim /etc/man.config
加入 MANPATH /usr/local/apache/share/man
4、头文件链接:
-1 ln -sv /usr/local/apache/include /usr/include/httpd