安装及管理应用程序
应用程序的组成
典型的应用程序通常有以下几个部分组成:
l 普通的可执行程序文件一般在”/usr/bin/”,普通用户可执行
l 服务器程序,管理程序文件“/usr/sbin/” root用户权限执行
l 配置文件,一般”/etc/”目录中,较多会建立相应的子目录
l 日志文件,一般”/var/log/”目录中
l 参考文档,一般”/usr/share/doc/”目录中
l man手册,一般”/usr/share/man/”目录中
软件包的封装类型
常见软件包封装类型:
l RPM 扩展名为.rpm 只能用在RPM(RPM Package manage,RPM软件包管理器)机制的linux操作系统中,量身定做,依赖性强
l DEB 扩展名为.deb 只能用在DPKG(Debian Package, Debian软件包管理器)机制的linux操作系统中
l 源代码一般被制成.tar.gz/.tar.ba2等格式压缩包文件,因多数使用tar命令打包而成,所以经常称之为”TarBall”,安装时要有相应的编译工具,如gcc
l 提供安装程序的软件包软件包会提供用于安装可执行程序或脚本文件,如install.sh setup等, 有时.bin格式形式出现
l 绿色免安装软件包不需要特别安装,只需将下载下来的文件解压或复制到某个目录中即可使用
RPM
硬件平台:
i386,i586,i686或noarchnoarch(不区分硬件平台)
rpm查询已经安装的软件包的信息:
-qa显示当前系统中以RPM方式安装的所有软件列表
-qi 查看指定软件的名称,版本,用途等信息
-ql查看指定软件包在当前系统中所有的安装目录,文件列表
-qf查看指定软件是由哪个软件包安装的
-qc 显示指定软件包在当前系统中安装配置文件
-qd显示指定软件包在当前系统中安装的文档文件
查看未安装的软件包信息,加p 功能与上相同
安装,升级,卸载RPM软件包
-i 在当前系统中安装一个新的RPM软件包
-e 卸载指定名称的软件包
-U 检查并升级系统中的某个软件包,如果软件包原来没有安装,则等于–i
-F 检查并更新系统中的软件包,若该软件包原来并未安装,则放弃安装
--force 强制安装某个软件包,当需要替换已安装的软件包及文件,或者安装比当前使用软件版本更旧的软件包时,使用此项
--nodeps安装,升级,或卸载一个软件时,不检查依赖关系
-h 在安装或升级软件包时以“#”形式显示进度
-v 显示安装时的详细信息
当RPM数据库损坏时,清除原有数据文件,使用rpm命令进行数据库的重建
rm -rf /var/lib/rpm/__db.00*
rpm --rebuilddb
源码安装:
确认系统中的gcc环境
gcc --version 查看C编译器的版本
g++ --version 查看C++编译器版本(由gcc-c++_.....软件包安装)
md5sum “包名称”检验该包的MD5校验和
安装步骤一般为:
解包------配置------编译------安装
tarzxvf axel-1.0a.tar.gz –C /usr/src/
cd /usr/src/
./configure --prefix=/usr/local/axel
make
make install