1
Linux命令与应用程序的关系
应用程序命令的执行文件大多比较小,通常放置在/bin和/sbin目录中。对于内部命令,常集成在Bash程序内,而不是独立地执行文件。
命令文件一般在安装操作系统时一起安装,用于辅助操作系统本身的管理。
命令行大多适用于“命令字 选项 参数”形式的一般格式。
命令只在字符操作界面中运行。
应用程序的执行文件通常放在/usr/bin、/usr/sbin和/usr/local/bin、/usr/local/sbin等目录中。
应用程序一般需要在操作系统之外再另行安装,提供相对独立于操作系统的功能,有时候等同于“软件”的概念。
应用程序一般没有固定的执行格式,运行方式由程序开发者自行定义。
应用程序可能会使用到图形界面,形式多样。
有些应用程序提供的执行文件,能够使用像Linux命令一样的运行格式,所以也经常称为程序命令。
2
Linux 应用程序的组成
普通的可执行程序文件:一般保存在"/usr/bin"目录中,普通用户即可执行。
服务器程序、管理程序文件:一般保存在"/usr/sbin"目录中,只有管理员能执行。
配置文件:一般保存在"/etc"目录中,配置文件较多时会建立相应的子目录。
日志文件:一般保存在"/var/log"目录中。
关于应用程序的参考文档等数据:一般保存在"/usr/share/doc/"目录中。
执行文件及配置文件的man手册页:一般保存在"/usr/share/man/"目录中。
3
软件包的封装类型
对于各种应用程序的软件包,在封装时可采用不同的类型,不同类型的软件包其安装方法也不同。
常见的软件包封装类型:
RPM软件包:这种软件包文件的扩展名为".rpm",只能在使用RPM软件包管理器机制的Linux操作系统中安装,对特定版本的系统量身定制,依赖性比较强。安装RPM包需要使用系统中rpm命令。
DEB软件包:这种软件包文件的扩展名为".deb",只能在使用DPKG机制的Linux操作系统中进行安装,如Ubuntu,安装DEB软件包需要使用dpkg命令。
源代码软件包:这种软件包是程序员开发完成的原始代码,一般被制作为".tar.gz"和".tar.bz2"等格式的压缩包文件。
移植附带安装程序的软件包:这种软件包的扩展名不一,但仍以TarBall格式的居多,用于安装的可执行程序或脚本文件,如install.sh、setup等,只需运行安装文件就可以根据向导程序的提示完成安装操作。
4
RPM概述
RPM包管理器通过建立统一的文件数据库,对在Linux系统中安装、卸载、升级的各种.rpm软件包进行详细的记录,并能够自动分析软件包之前的依赖关系。
一般使用"软件名-软件版本-发布次数.操作系统类型.硬件架构类型.rpm"的文件名形式表示;
5
RPM的主要功能
查询、验证RPM软件包的相关信息。
安装、升级、卸载RPM软件包。
维护RPM数据库信息等综合管理操作。
6
RPM包管理命令
7
编译安装的基本过程
获得所需安装的软件源代码以后,安装的基本过程包括解包、配置、编译及安装的步骤,具体流程图如下:
解包:开源软件的源代码包一般为tarball形式,扩展名为“.tar.gz”或“.tar.bz2”,可以使用tar命令进行解压缩。对于只有“.gz”扩展名的源代码包,表示只经过压缩而并未使用tar归档,这样的文件只需使用gzip命令进行解压缩。
配置:配置工作由源代码目录中的“configure”脚本文件来完成,可用的各种配置参数可以通过在源代码目录中执行“./configure --help”进行查看。对于不同的软件程序来说,其配置蚕食会存在区别,但是“--prefix”形式的参数,大多数开源软件通用,该配置参数用于指定的软件包安装的目标文件夹。
编译:编译过程主要是根据makefile文件内的配置信息,将源代码文件进行编译而生成二进制的程序模块、动态链接库、可执行文件等。配置完成后,只要在源代码目录中执行“make”命令即可进行编译操作。
安装:编译完成后,执行“make install”命令将软件的执行程序、配置文件、帮助文档等相关文件复制到系统中,即应用程序的最后“安装”过程。为方便起见,上述的编译、安装步骤可以写成一行命令执行,中间使用“&&”符号分隔。make && make install