【六】安装管理应用程序
6.1应用程序与系统命令的关系
典型应用程序的目录结构
常见的软件包封装类型
6.2 RPM软件包
RPM Package Manager
由Red Hat公司提出,被众多Linux发行版所采用,建立统一的数据库文件,详细记录软件包安装、卸载等变化信息,能够自动分析软件包依赖关系。
RPM软件包一般命名格式:
RPM命令格式
几个常用的rpm包命令:
1)查询
#rpm -qa |grep libaio-devel 查询是否已经安装libaio-devel包
2)安装
#rpm -ivh libaio-devel-0.3.106-5 安装libaio-devel-0.3.106-5包rpm -ivh *.rpm 安装当前目录下所有的rpm包
3)卸载
#rpm -e libaio-devel-0.3.106-5 卸载libaio-devel-0.3.106-5包
其他的参数
#rpm -e 包名 -f --nodeps 强制卸载,切断依赖关系,慎用。#rpm -qR libaio-devel-0.3.106-5 查看这个包的依赖关系#rpm -ql libaio-devel-0.3.106-5 查看这个包相关那些文件[root@cuug ~]# cd /soft[root@cuug soft]# ls -al
【实验】:
[root@cuug ~]# mkdir /soft
上传这两个文件到/soft下
[root@cuug ~]# cd /soft[root@cuug soft]# ls -al
总计 107232
drwxr-xr-x 2 root root 4096 12-01 13:44 .
drwxr-xr-x 25 root root 4096 12-01 13:42 ..
-rw-r--r-- 1 root root 95310 12-01 13:44 rlwrap-0.41-1.el5.i386.rpm
-rw-r--r-- 1 root root 109574432 12-01 13:44 VirtualBox-4.3.12-93733-Win.exe
[root@cuug soft]# rpm -qa |grep rlwrap[root@cuug soft]# rpm -ivh rlwrap-0.41-1.el5.i386.rpm
warning: rlwrap-0.41-1.el5.i386.rpm: Header V4 DSA signature: NOKEY, key ID 217521f6
Preparing... ###########################################[100%]
1:rlwrap ###########################################[100%]
[root@cuug soft]# rpm -qa |grep rlwrap
rlwrap-0.41-1.el5
[root@cuug soft]# rpm -e rlwrap-0.41-1.el5[root@cuug soft]# rpm -qa |grep rlwrap
6.3解决软件包依赖关系
1)令人头疼的循环依赖关系:安装A需要B,安装B需要C,安装C又需要A。
安装有依赖关系的多个软件时,被依赖的软件包需要先安装,同时指定多个.rpm包文件进行安装,也就是说把所有依赖关系的包都找到,问题就解决了。
卸载与安装类似,也是遵循有依赖原则,只不过是安装的逆序。
2)解决依赖关系的一个好方法是使用YUM(Yellow dog Updater,Modified)机制,yum工具可以自动解决软件包之间的依赖关系,使用之前要先配置“软件仓库”
创建方法:
【root用户配置yum install安装工具】
1)生成yum配置文件
[root@cuug ~]#cd /etc/yum.repos.d/
进入到该目录下生成一个配置文件
[root@cuug yum.repo]#ls[root@cuug yum.repos.d]#cp rhel-source.repo yum.repo[root@cuug yum.repos.d]#vi yum.repo
文件内容改为如下:
[base]name=Red Hat Enterprise Linuxbaseurl=file:///media/Serverenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
2)分配linux 安装镜像文件给光驱
3)手工mount光盘
[root@cuug yum.repos.d]#mount /dev/cdrom /media[root@cuug yum.repos.d]#df
至此,yum仓库构建完成。
[root@cuug yum.repos.d]#umount /media 卸载
6.4源代码软件包
使用源代码安装软件的特点:
1)从网上下载,获得最新的软件版本,及时修复bug
2)根据用户需要,灵活定制软件功能
3)linux上/usr/local目录用于自行编译,源码存放在/usr/local/src
4)源码包多以.tar.gz结尾
【步骤】:
1)解包
[root@cuug soft]# tar -zxvf rlwrap-0.31.tar.gz -C /usr/src 指定解压到/usr/src下[root@cuug soft]# cd /usr/src[root@cuug src]# ls -al
总计 44
drwxr-xr-x 6 root root 4096 12-01 15:02 .
drwxr-xr-x 14 root root 4096 11-28 14:31 ..
drwxr-xr-x 2 root root 4096 2009-10-01 debug
drwxr-xr-x 3 root root 4096 11-28 14:31 kernels
drwxr-xr-x 7 root root 4096 11-28 14:33 redhat
drwxrwxrwx 8 500 500 4096 12-01 15:03 rlwrap-0.41
2)配置
[root@cuug rlwrap-0.30]# ls -al configure*
-rwxr-xr-x 1 500 500 217282 2008-01-08 configure
-rw-r--r-- 1 500 500 9860 2008-01-08 configure.ac
[root@cuug rlwrap-0.30]#./configure
编译过程需要gcc-c++包,和readline包,如果没有请用yum安装一下
yum install gcc-c++* -yyum install readline* -y
3)编译
[root@cuug rlwrap-0.41]# make
4)安装
[root@cuug rlwrap-0.41]# make install
5)验证
[root@cuug rlwrap-0.41]# find / -name rlwrap*
6)卸载
最好看一下这个/usr/src/rlwrap-0.41/下的README,如果没有卸载说明,就根据5)的显示结果删除与其相关的目录和文件,主要是这三个目录及文件:
/usr/src/rlwrap-0.30
/usr/local/bin/rlwrap
/usr/local/share/rlwrap
把上面三个都删了就行啦,反正Linux也没有注册表[呲牙]。
the end !!!
@jackman 共筑美好!
留言与评论(共有 0 条评论) “” |