RPM软件包的管理
大多数linux的发行版本都是某种打包系统。软件包可以用来发布应用软件,有时还可以发布配置文件。他们比传统结构的.tar和.gz存档文件有几个优势。如它们能让安装过程尽可能成为不可分割的原子操作。
软件包的安装程序会备份它们改动过的文件。如果发现新安装软件包破坏了系统上的什么地方,可以卸载它,恢复原本的状态。
RPM(RedHat package manger)由RH公司发行的打包方式
软件的打包方式有以下几种:
1、RPM方式
2、源代码压缩方式
3、二进制文件压缩包方式
查询RPM包
格式:rpm -q [其他选项] [软件名称]
其它选项:
a //表示显示当前系统中安装的所有RPM包
f 文件名(全路径) //表示查找指定文件所属的RPM包
i 软件包名称 //表现显示包的用途
l 软件包名称 //表示显示RPM包文件
如下实例:
rpm -q bind
我们通过命令查看bind包的详细信息,比如这个包的名字,以及相关的信息。
rpm -qa
这里会列出很多此操作系统以及安装了的RPM包。
rpm -qf /etc/name.conf
查找指定文件所属的RPM包
rpm -qi bind
这里会显示出这个RPM包的详细信息以及用途。
rpmm -pl bind
这里就显示出与RPM包相关的文件。
RPM包名称格式
软件名称-版本号-发行号.安装平台.rpm
举例
软件包名称为bind、版本号(9.11.4)、发行号为26、硬件平台(x86_64)。其安装简单之极,登录为根用户,然后在shell下执行下面相关命令即可。
RPM包的安装方式
很多时候,我们在linux操作系统中下载一个应用的时候,都是系统自己帮我们安装好。但是在有的时候,我们需要自己去拷贝或者下载一个安装包,这个时候就需要我们RPM包的安装方式了。
1、普通安装使用最多的安装方式,采用一般的安装参数。安装当前目录下的xplns-elm-3.3.1-1.i386.rpm
#rpm -ivh xplns-elm-3.3.1-1.i386.rpm
这里的参数中
-i 安装
-v 显示附件信息
-h 用#显示安装进度
2、测试安装用户对安装不很确定时可以先使用该种安装方式测试安装,不真正安装。若无错误信息显示在真正安装。
#rpm -i --test xplns-elm-3.3.1-1.i386.rpm
参数
-i 安装
–test 测试
3、强制安装强制安装软件,忽略软件包依赖性以及文件的冲突。若对软件包的依赖性很清楚,而且确实要忽视文件的冲突,可以选择强制安装。
#rpm -i --force xplns-elm-3.3.1-1.i386.rpm
参数
-i 安装
-v 显示附件信息
-h 用#显示安装进度
–test 表示强制的意思
当然我们在安装某些安装包的时候,还有其他详细选项。
除了我们刚才以及提到的test和force还有
–prefix //指定安装路径。
–nodeps //忽略包之间的依赖关系
升级软件包
格式:#rpm -Uvh [详细选项] 软件包名称
说明:-Uvh表示升级安装且显示安装进度(U一定要大写,Linux下严格区分大小写)
实例:rpm -Uvh bind-10.1-1.i386.rpm
可以使用-U来安装软件包
软件包的升级时执行卸载旧版本软件和安装新版本
软件两个过程。RPM会先备份老文件再安装新文件。
实例,我后面补上。
卸载软件包
格式:#rpm -e [详细选项] 软件名称
说明:-e表示卸载软件包
实例:
rpm -e bind
rpm -e nfs-utils
归档/压缩文件
很多时候,我们都有在Linux操作系统中做开发的时候,当我们写了很多代码很多程序的时候,这个时候我们需要将这些代码(程序)进行归档或者压缩的时候,这个时候就需要我们使用下面的命令进行完成任务。
tar(tape archiving program),最早是一个磁盘归档程序。
tar命令用于文件的打包,可以将若干文件和目录打包成一个文件,既利于文件管理,也方便压缩和文件的网络传输。
tar可以为文件和目录创建档案。利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件或者向档案加入新的文件。
tar命令格式
命令格式
tar 主选项 [辅助选项] 文件或目录
常用主选项
-A, --catenate, --concatenate:将若干个tar文件合成一个tar文件
-c, --create:创建一个新的tar文件
-d, --diff, --compare:比较tar文件或文件系统的不同之处。
–delete:从tar文件中删除文件,但不能把磁带文件删除
-r, --append:在tar文件尾部追加文件。
-t, --list:显示tar文件内容
-u, --extra, get:从tar文件中提出文件。
-Z:使用gzip压缩/解压文件
案例讲解
tar -cfv gone.tar./*
c创建tar
f指明创建文件
v显示处理详细过程
./*表示把当前目录下内容打包成gong.tar
tar -tf gone.tar
t表示显示gone.tar中包含哪些文件
tar -xvf gone.tar
x表示从tar文件中提取文件
tar -rf gone.tar myfile
在tar文件尾部追加文件
16