软件安装:PRM,SRPM与YUM功能
RPM安装
若环境检查合格,然后RPM档案就开始安装到你的linux系统上。安装完毕后,该软件相关的信息就会被写入/var/lib/rpm/目录下的数据库档案中了。
RPM安装(install)
rpm -ivh package_name
可以同时安装两个以上,也可以直接以网址来安装
-i:install安装的意思
-v:察看更细部的安装信息画面
-h:以安装信息列显示安装进度
可选参数
--nodeps 使用时机 当发生软件属性相依问题而无法安装,单执意安装
--test 测试一下该软件是否可以被安装到使用者的linux环境当中,可找出是否有属性相依的问题
rpm -ivh package_name --test
--prefix 新路径
RPM升级与更新(upgrade/freshen)
-Uvh 后面接的软件即使没有安装过,则系统予以直接安装,若后面接的软件有安装过旧版,则系统自动更新至新版
-Fvh 后面接的软件未安装到你的linux系统中,则该软件不会被安装,亦即只有已安装至你linux系统内的软件会被升级
RPM查询(query)
rpm -a 仅查询,后面接的软件名称是否有安装
rpm -qa 列出所有的,已经安装在本机linux系统上面的所有软件名称
rpm -qi 列出该软件的详细信息,包含开发商,版本与说明
rpm -ql 列出该软件所有的档案与目录所在完整文件名
rpm -qc 列出该软件的所有配置文件(找出在/etc/底下的档案名)
rpm -qd 列出该软件的所有说明文件(找出与man有关的档案而已)
rpm -qR 列出与该软件有关的相依软件所含的档案
rpm -qf 由后面接的文件名,找出该档案属于哪一个已经安装的软件
rpm -qp[icdlR] 找出某个RPM档案内的信息,而非已经安装的软件信息
RPM验证与数字签名(Verify/signature)
rpm 选项与参数
rpm -V 后面接的是软件名称,若该软件所含的档案被改动过,才会列出来
rpm -Va 列出目前系统上面所有可能被改动过的档案
rpm -Vp 后面加的是文件名,列出该软件内可能被更动过的档案
rpm -Vf 列出某个档案是否被更动过
数字签名
cat /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 //数字签名
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
locate GPG-KEY
rpm -qa|grep pubkey //出现 gpg-pubkey-c105b9de-4e0fd3a3
rpm -qi gpg-pubkey-c105b9de-4e0fd3a3 //出现数字签名
RPM反安装与重建数据库(erase/rebuilddb)
rpm -qa |grep pam
rpm -e pam-devel
rpm --rebuilddb //重建数据库
SRPM的使用
--rebuild 编译打包,后面通常会出现写入信息
--recompile 编译打包并安装
编译SRPM
rpmbuild --rebuild .src.rpm
配置文件的主要内容(.spec)
SRPM的编译指令(-ba/-bb)
rpmbuild -ba .spec //编译并同时产生RPM与SRPM档案
rpmbuild -bb .spec //仅编译成RPM档案
一个打包自己软件的范例
mkdir /usr/lcoal/src/main-0.1
tar -zxvf main.tgz -C /usr/lcoal/src/main-0.1
cd /usr/local/src/main-0.1
vim Makefile //建议源代码所需要的make规则
cd ..
tar -zcvf main-0.1.tar.gz main-0.1
建议.spec的配置文件
cd /usr/src/redhat/SPECS
vim main.spec
编译成为RPM与SRPM
rpmbuild -ba main.spec
安装测试实际查询
rpm -ivh package_name.rpm
yum的使用
yum [list|info|serarch|provides|whatprovides] 参数
-y 自动提供yes响应
search 搜寻某个软件名称或者是描述的重要关键字
list 列出目前yum所管理的所有的软件名称与版本,类似rpm -qa
info 同上,类似 rpm -qai 的执行结果
provides 从档案去搜寻软件 类似rpm -qf
yum [install|update] 软件 //安装更新
yum remove 软件 //移除
yum的配置文件
vim /etc/yum.repos.d/CentOS-Base.repo //容器的实际网址
yum repolist all //列出目前的容器信息
修改容器产生的问题与解决之道
yum clean [packages|headers|all]
packages 将已下载的软件档案删除
headers 将下载的软件文件头删除
all 将所有的容器数据都删除
yum的软件群组功能
yum [群组功能] [软件群组]
选项与参数
grouplist 列出所有可使用的套件组
groupinfo 后面接group_name,则可了解该group内含的所有套件名
groupinstall 可以安装一整组的套件群组
groupremove //移除某个套件群组
全系统自动升级
vim /etc/crontab
0 3 /usr/bin/yum -u update
已有 0 条评论