




已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章 系统管理 本章学习要求 了解软件包的类型 了解软件包的命名格式 掌握使用 RPM软件包 掌握编译并安装软件 8.1 软件包的类型和命名格式 8.1.1 软件包的类型 Linux系统下的软件包通常有三种类型:一是 rpm软件包 , 它是后缀名为 .rpm的文件 , 是由 Red Hat Linux提供的一种包封装格式 , 现在许多 Linux发行版都使用它;二是 dpkg软件包 , 它是后缀名为 .deb的文件 , 是由 Debain Linux提供的一种包封装格式;三是tar软件包 , 它是后缀名为 .tar.gz、 .tar、 .tar.bz2的文件 , 是使用 tar工具打包形成的 。 8.1.2 软件包的命名格式 命名一般都遵循名称 -版本 -发行号 -平台 .类型 ( 中的内容有的软件包没有 ) 。 如 iptables-1.4.3.tar.bz2软件包 , iptables为软件包的名称 ,1.4.3为 iptables的版本号 , .tar.bz2为软件包的类型 , 说明该软件包是一个 tar包 。 fcitx-3.0.2-1.i386.rpm软件包 , 其中 fcitx为软件包的名称 ,3.0.2为 fcitx的版本号 , 1为 fcitx的发行号 , i386为此软件包运行的平台 , 它适用于 Intel 80X86平台 , 类型为 rpm, 说明是一个 rpm软件包 。 8.1.3 软件包的安装方式 Linux系统下软件包的安装方式分为两种:一种是直接安装 , 即安装完这个程序后 , 用户就可以使用 , 但用户看不到源程序 , 而且用户下载这种类型的软件包时要注意这个软件包是否是适合于自己的使用 平台 , 否则将无法正常安装 。 另一种是编译后安装 , 用户需要使用编译器将其编译为可执行文件 。 这在 Windows系统中是没有的 , 因为Windows 的思想是不开放源程序 。 通常 .tar.gz、 .tar、 .tar.bz2类型的软件包都是源程序 ,需要编译后才能安装;而 .rpm、 .deb类型的软件包是可执行程序 , 可以直接安装 。 8.2 使用 RPM软件包 RPM( The Red Hat Package Manager) 是一个开放的软件包管理系统 。 它工作于 Red Hat Linux及其它的 Linux和 UNIX系统 , 可以被任何人使用 。 对于用户来说 , RPM提供的众多功能使维护系统要比以往容易的多 。 安装 、 卸载和升级 RPM软件包时均是只需一条命令即可完成 , 所有烦琐的细节问题无须用户费心 。 8.2.1 rpm的设计目标 RPM有 5种基本的操作模式:安装 、 卸载 、 升级 、 查询和验证 。 RPM软件包的设计目标如下: 软件包的可升级性 功能强大的软件包信息查询 系统验证 保持软件包的原始特征 8.2.2 安装 RPM软件包 安装 RPM软件包的命令格式如下: rpm -ivh options package-files 其中 -ivh为 rpm命令在安装 RPM软件包的常用选项;package-files为 RPM软件包的路径文件名列表 。 -i,-install 安装 RPM软件包 。 -v 在安装过程中显示安装过程的详细信息 。 -h 表示 hash, 在安装过程中显示 “ #” 来表示 RPM软件包的安装进度 。 -replacepkgs 在安装 RPM软件包时 , 若软件包已被安装 , 系统将无法继续完成 RPM软件包的安装 。 这时可以使用该选项 , 忽略错误信息 , 完成 RPM软件包的安装 。 -nodeps RPM软件包可能依赖于其它软件包 , 也就是说要求在安装 ( 卸载 ) 了特定的软件包之后才能安装 ( 卸载 ) 该软件包 。 如果在用户安装 ( 卸载 ) 某个软件包时存在这种未解决的依赖关系 。 系统将无法继续完成 RPM软件包的安装( 卸载 ) 。 用户虽然可以使用该选项完成 RPM软件包的安装 ( 卸载 ) , 但并不保证安装 ( 卸载 ) 完后软件包能正常运行 。 卸载 RPM软件包时 , 也可以使用该选项 。 安装 /package/rpm/fcitx-3.0.2-1.i386.rpm软件包。要求在安装过程中显示安装过程的详细信息和安装进度。命令和执行结果如下所示: rootlocalhost #rpm -ivh /package/rpm/fcitx-3.0.2-1.i386.rpm Preparing. # 100% 1:fcitx # 100% 安装 /package/rpm/fcitx-3.0.2-1.i386.rpm软件包 。要求在安装过程中显示安装过程的详细信息和安装进度 。命令和执行结果如下所示: rootlocalhost #rpm -ivh /package/rpm/fcitx-3.0.2-1.i386.rpm Preparing. # 100% 1:fcitx # 100% 用户在安装 RPM软件包时 , 有时会出现如下信息: Preparing. # 100% Package fcitx-3.0.2-1 is already installed 若用户仍旧要安装该软件包 , 可以卸载系统中的该软件包后再进行安装 , 也可以使用 -replacepkgs选项 , 忽略上述错误信息 , 继续进行安装 。 8.2.3 卸载 RPM软件包 卸载 RPM软件包的命令格式如下: rpm -e package-name 该命令用于卸载系统中已安装的 RPM软件包 。 其中package-name为 RPM软件包的 名称 , 而不是软件包的 文件名 。 卸载刚才安装的 fcitx-3.0.2-1.i386.rpm软件包 ,package-name为 fcitx, 而不是 fcitx-3.0.2-1.i386, 也不是 fcitx-3.0.2-1.i386.rpm。 使用命令如下: rootlocalhost #rpm -e fcitx 用户在卸载 RPM软件包时 , 有时会出现该软件包与其它软件包有依赖关系 , 用户必须先卸载与它依赖的软件包后 , 才能再卸载该软件包 。 这时用户可一层层地卸载与它有依赖关系的软件包 , 最后再卸载该软件包 , 也可以使用-nodeps选项 , 强行卸载该软件包 。 8.2.4 升级 RPM软件包 升级 RPM软件包与安装 RPM软件包十分类似 。 其命令格式如下: rpm -Uvh package-files 在执行升级操作时 , RPM软件包对当前系统中同一软件包的较低版本进行升级 , 软件包中的版本必须高于当前系统中同一软件包的版本 , 否则系统会提示该软件包已被安装 。 RPM软件包的升级其实是软件包的 卸载与安装 的综合 。 建议用户在升级 RPM软件包时 , 使用 -Uvh选项 ( U为大写 ) , 这样用户可以看到升级安装过程的详细信息 , 更可以了解软件包的升级进度 。 8.2.5 查询 RPM软件包 查询 RPM软件包的命令格式如下: rpm -q options package-name 上述命令为查询已安装的软件包的数据库 。 package-name为 RPM软件包的名称 , 而不是 RPM软件包的文件名 。 如查询 fcitx软件包是否已被安装 。 使用命令和执行结果如下: rootlocalhost #rpm -q fcitx fcitx-3.0.2-1 8.2.6 验证 RPM包 验证 RPM软件包是通过比较软件包中安装的文件和软件包中同一文件的信息 。 验证主要是比较文件的大小 、MD5值 、 校验码 、 文件权限 、 类型 、 所有者和用户组等 。验证 RPM包的最简单方法是使用如下命令格式: rpm -V package-name 举例:验证包含 ls文件的软件包 。 使用命令如下: rootlocalhost #rpm -Vf /bin/ls 根据 RPM软件包文件名来验证安装了的软件包 。 使用命令如下: rootlocalhost #rpm -Vp fcitx-3.0.2-1.rpm 安装 查询 N 判断新旧 卸载 版本旧 退出 升级 版本新 Y 图 8-2 安装 RPM软件包流程图 8.3 使用 tar软件包 压缩类型的软件包的安装过程要比 RPM软件包要复杂 ,并且有时候会遇到一些异想不到的问题 , 但这种类型的软件包一般都比 RPM软件包的版本要高 。 用户想要使用高版本的 、 增强功能的 、 漏洞少的软件包 , 就必须掌握压缩类型软件包的安装 。 8.3.1 解压 如 httpd-2.2.11.tar.gz, 使用 tar工具解压后就会在当前目录下产生 http-2.2.11目录 。 解压命令使用如下之一: rootlocalhost #tar -zxvf httpd-2.2.11.tar.gz rootlocalhost #gzip -d httpd-2.2.11.tar.gz | tar -xvf - 8.3.2 查看并阅读文档 解压成功后 , 使用 cd命令进入解压产生的目录 , 然后使用 ls命令查看该目录中的文件 , 并阅读目录中附带的INSTALL、 README等与安装有关的说明文档 。 这些文件中一般都包含有该软件包安装的步骤和配置信息 。 这类文件是压缩软件包安装成功的关键 , 因为安装注意事项 、 安装步骤 、 安装过程中遇到的问题 , 一般都可以从这些文件中找到 。 建议用户安装 tar软件包时 , 应查看并认真阅读与安装相关的文档 。 8.3.3 配置源代码 解压形成的目录中 , 一般都有一个名为 configure的脚本文件 ( 部分软件会是 Configure、 config) , 该脚本文件是执行软件包安装的第一步 , 也是最为关键的一步 。该脚本文件的命令格式使用如下: ./configure options 当运行 configure时 , 它将确定本地系统的性能 。 由configure收集的数据用来创建 makefile文件 , make使用这些文件创建可执行文件和库文件 。 用户可以使用选项和环境变量来调整 configure的行为 。 configure的常用 options如下所示: -prefix=directory 配置软件包安装的位置 。 不指定该选项时 , 软件包将被安装在 /usr/local/目录下 。 为了将软件包安装到用户指定的位置 , 可以用要安装的目录路径名来替换directory。 建议用户在安装软件包时使用该选项 。 -with-package 用配置软件中的某个可选包的名字来替换 package。如用命令 configure -with-dll来配置 windows模拟器wine的源代码 , 则该源代码将配置生成 windows模拟支持的共享库 。 将 httpd-2.2.11安装到 /var/apache2目录下 。 配置源代码的命令使用如下: rootlocalhost httpd-2.2.11#./configure -prefix=/var/apache2 8.3.4 编译代码 make工具最基本的功能就是通过 makefile文件来描述源程序之间的相互关系并自动维护编译工作 。 其命令语法格式使用如下: make options target-file target-file是指 makefile文件中依赖行上的目标 。 当不指定 target-file时 , make将更新 makefile中第 1个依赖行上的目标 。 make常用的 options为 -f file, 使用 file来替代makefile作为输入 。 而用户在编译代码时 , 一般不加任何选项 , 而直接使用 make工具 。 编译 httpd-2.2.11源代码 。 使用命令如下: rootlocalhost httpd-2.2.11#make 8.3.5 安装应用软件 使用 make install命令即可完成软件包的安装 。 完成安装后 , 用户就可以执行安装的应用程序了 。 若用户在使用 ./configure时没有指定软件安装的位置 , 则应用程序的可执行文件一般会存放在 /usr/local/bin目录下 ,用户查找后执行即可;若用户在使用 ./configure时指定了软件安装的位置 , 安装成功后 , 会在指定的安装位置的目录下有一个 bin目录 , 在此目录下 , 用户可以找到要执行的程序 。 安装 httpd-2.2.11应用软件 , 并启动 httpd程序 。 使用命令如下: rootlocalhost httpd-2.2.11#make install rootlocalhost httpd-2.2.11#/var/apache2/bin/apachectl start 8.3.6 删除临时文件 在安装软件包的过程中 , 可能会产生一些临时文件 ,用户可使用 make clean删除安装过程中产生的临时文件 。如删除 httpd-2.2.11在安装过程中产生的临时文件 。 使用命令如下: rootlocalhost httpd-2.2.11#make clean 对于 tar软件包的安装过程总结如下: 使用 tar工具解压 .tar.gz、 .tar.bz2和 .tar等类型的压缩文件; 使用 cd命令进入解压后产生的目录; 查看并阅读 INSTALL、 README等文档文件的内容; 使用 ./configure -prefix=directory配置源代码 , 并指定软件安装的位置; 使用 make工具编译代码; 使用 make install执行安装; 使用 make cle
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论