本文最后更新于2016-11-11,已超过 1 个月没有更新,如果文章内容或图片资源失效,请【
留言反馈】,我会及时处理,谢谢!
一、Linux应用程序的组成
在linux系统中,典型的应用程序通常由以下几部分组成:
◆普通的可执行程序文件,一般保存在/usr/bin目录中,普通用户即可执行。
◆服务器程序、管理程序文件,一般保存在/usr/sbin目录中,需要管理员才能执行。
◆配置文件,一般保存在/etc目录中。
◆日志文件,一般保存在/var/log目录中。
◆关于应用程序的参考文档等数据,一般保存在/usr/share/doc目录中。
◆执行文件及配置文件的man手册页,一般保存在/usr/share/man目录中。
二、软件包的封装类型
◆RPM软件包:扩展名为“.rpm”,只能在RPM机制的linux操作系统中安装,如RHEL、Fedora、
SUSE等。
◆DEB软件包:扩展名为“.deb”,只能使用在DPKG机制的linux操作系统中安装,如Debian、
Ubuntu等。
◆源代码软件包:这种软件包是程序员开发完成的原始代码,一般被制作成“tar.gz”、“tar
.bz2”等格式的压缩包文件。
◆提供安装程序的软件包:这种软件包扩展名不一,但仍以源代码包格式居多。软件包中会提
供用于安装的可执行程序或脚本,如install.sh、setup等,有时候会以“.bin”格式的单个安装文
件的形式出现。
◆绿色免安装的软件版:这种软件包直接包含有编译好的执行程序文件,不需要特别安装,只
要将文件解压或复制到某个目录中即可使用。
三、使用RPM包管理工具
1.RPM包的命名格式
一般使用“软件名-软件版本-发布次数.硬件平台类型.rpm”的文件名形式,如“bash-3.1-
16.1.i386.rpm”。
2.RPM包管理命令
(1)查询已安装的RPM软件包信息
[root@localhost ~]#rpm 选项 软件名
常用的选项如下:
-q:用于查询以知名称的软件包是否安装
-qa:显示当前系统中以RPM方式安装的所有软件列表。
-qi:查看指定软件包的详细信息。
-ql:显示指定软件包在当前系统中安装的所有目录、文件列表。
-qf:查看指定的文件或目录是由哪个软件包所安装的。
-qc:显示指定软件包在当前系统中安装的配置文件列表。
-qd:显示指定软件包在当前系统中安装的文档文件。
(2)查询未安装的RPM软件包信息
[root@localhost ~]#rpm 选项 RPM包文件名
常用的选项如下:
-qpi:查看指定软件包的详细信息。
-qpl:查看该软件包准备要安装的所有目标目录、文件列表。
-qpc:查看该软件包准备要安装的配置文件列表。
-qpd:查看该软件包准备要安装的文档文件列表。
3.安装、升级、卸载RPM软件包
[root@localhost ~]#rpm 选项 RPM包文件名
常用的选项如下:
-i:在当前系统中安装一个新的RPM软件包。
-e:卸载指定名称的软件包,指定软件名即可。
-U:检查并升级系统中的某个软件包,若该软件包并未安装,则等同于“-i”。
-F:检查并更新系统中的某个软件包,若该软件包并未安装,则放弃安装。
--force:强制安装某个软件包,当需要替换现已安装的软件包及文件、或者安装一个比当前
使用的软件版本更旧的软件时,可是使用此选项。
--nodeps:在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系。
-h:在安装或升级软件包的过程中,以“#”显示安装进度。
-v:显示软件安装过程中的详细信息。
4.维护RPM数据库
RPM数据库用于记录在linux系统中安装、卸载、升级应用程序的相关信息。当RPM数据库发生
损坏时,将导致无法正常安装、卸载RPM软件包。这时可以使用如下的命令进行重建数据库:
[root@localhost ~]#rpm --rebuilddb 或者 [root@localhost ~]#rpm --initdb
四、从源代码编译安装程序
以安装axel-1.0a.tar.gz为例,说明从源代码安装程序的步骤:
1.解包
[root@localhost ~]#tar -zxvf axel-1.0a.tar.gz -C /usr/src
2.配置
[root@localhost ~]#cd /usr/src/axel-1.0a
[root@localhost axel-1.0a]# ./configure
(若要指定安装位置:[root@localhost axel-1.0a]# ./configure --prefix=/usr/local/axel)
3.编译
[root@localhost axel-1.0a]#make
4.安装
[root@localhost axel-1.0a]#make install
您阅读这篇文章共花了: