免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 917 | 回复: 0
打印 上一主题 下一主题

Linux下的软件安装 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-27 23:51 |只看该作者 |倒序浏览
    由于Linux的发布版本多样,在Linux系统中,软件安装程序比较纷繁复杂,目前还没有像微软Windows那样简单的Setup-And-Run的安装方法,不过最常见的有以下3种:
1、编译后的二进制软件包,你只要安装它就可以了。这种软件安装包通常被是一个RPM包(Redhat Linux Packet Manager,就是Redhat的包管理器),后缀是.rpm。
2、用RPM包管理器打包的软件的源代码(后缀名为.src.rpm),需要在本地编译生成RPM包(后缀为.rpm),然后再安装。
3、软件的源代码,您需要自己动手编译它。这种软件安装包通常是用gzip/bzip2压缩过的tar包(后缀为.tar.gz/.tar.bz2)。
一、RPM包管理器
    RPM软件包管理器是开放打包系统,任何人都可以使用。它在 Red Hat Linux,以及其它 Linux 和 UNIX 系统上运行。对于终端用户来说,RPM 简化了系统更新、安装、删除安装、升级。RPM 维护一个已安装软件包和它们的文件数据库,因此,可以在系统上使用功能强大的查询和校验。
对于开发者来说,RPM允许把软件编码和程序打包,然后提供给终端用户。
1、RPM包文件的命名格式
   典型的格式如下:
rp-pppoe -        3.1        -       5        .i386        .rpm软件包名   版本号(主版本.次版本号) 编译次数 适合的硬件平台   后缀名

  
  平台名称
  
  
  适合平台说明
  


  
  i386
  
  
  几乎适用于所有的 x86 平台,不论是旧的 pentum 或者是新的
  pentum-IV 与 K7 系列的 CPU等等,都可以正常的工作!那个 i 指的是 Intel 兼容的 CPU 的意思,至于 386 不用说,就是
  CPU 的等级啦!
  


  
  i586
  
  
  就是 586 等级的计算机,那是哪些呢?包括 pentum 第一代 MMX
  CPU, AMD 的 K5, K6 系列 CPU ( socket 7 插脚 ) 等等的 CPU 都算是这个等级;
  


  
  i686
  
  
  在 pentun II 以后的 Intel 系列 CPU ,及 K7 以后等级的
  CPU 都属于这个 686 等级!
  


  
  noarch
  
  
  就是没有任何硬件等级上的限制。一般来说,这种类型的 RPM 档案,里面应该没有
  binary file 存在。
  

2、RPM包的安装
   典型格式:rpm -ivh 包文件名   (i表示安装,v表示显示安装过程,h表示显示安装进度)
   例:rpm -ivh  rp-pppoe-3.1-5.i386.rpm
3、RPM包的删除
   格式:rpm -e 软件包名
   
   例:rpm -e rp-pppoe
4、RPM包的升级
   格式1:rpm -Uvh 包文件名  -----升级与安装(若系统中已安装此包的低版本,则升级;若系统中末安装此包,则重新安装)
   格式2:rpm -Fvh 包文件名  -----只升级安装(若系统中末安装此包,则不安装)
5、查询:
   常用格式:
        rpm  -q 软件包名         :查询已安装的指定软件包的完整名
        rpm  -qi 软件包名         :查询指定软件包的详细信息
        rpm  -ql 软件包名         :列出软件包中的文件(包括完整的安装路径)
        rpm  -qf 文件名     :查询指定文件所属的软件包
        rpm  -qa            :查询所有的已安装的包
   例: rpm -qi  rp-pppoe  (显示软件包rp-pppoe的详细信息)
6、校验
  常用示例:
  要校验包含某一特定文件的软件包:  rpm -Vf /bin/vi  (其中 -f:file)
  要校验所有安装了的软件包: rpm -Va                (其中 -a :all)
  要根据 RPM 软件包文件来校验安装了的软件包: rpm -Vp foo-1.0-1.i386.rpm (其中p:packege)
补充参数:
    --replacepkgs  (软件包已安装的情况下仍打算安装同一版本的软件包,强行置换)
    --oldpackage   (RPM 强制“降级”到低版本)
    --nodeps       (安装/删除软件包时不检查依赖关系)
二、SRPM包的安装
  以源程序软件包发布的srpm包(后缀名为.src.rpm),安装时需先编译然后再安装
1、编译生成rpm包
   典型格式: rpmbuild  --rebuild  srpm包文件名
   例:
   rpmbuild --rebuild  dvd+rw-tool-5.21.4.10.8-6.src.rpm
2、安装生成的rpm包(安装方法同一)
    例:rpm -ivh dvd+rw-tool-5.21.4.10.8-6.i386.rpm
   
三、源代码软件包
    源代码软件发布形式的,一般以打包为 .tar / .tar.gz / .tar.bz2等为后缀的文件。其安装步骤为:先解包解压缩,再配置,然后编译、安装。
1、解包解压缩
      tar -xvf FILENAME.tar
      tar -zxvf FILENAME.tar.gz
      tar -jxvf FILENAME.tar.bz2
2、配置、编译、安装
   (1) 配置   
      执行目录中的configure命令,生成Makefile文件
      例:./configure --prefix=目录名 (其中--prefix指定软件安装的位置)
   (2)编译
      命令:make
   (3)安装
      命令: make install
   (4)卸装
      命令:make uninstall
      手工卸载  rm -rf 目录名
附练习:
1。在安装mysql_4.1.7_4.RHEL4.1.i386.rpm软件包时,需要忽略检查依赖关系,正确的rpm命令格式是()
  a. rpm -ivh --ndp mysql_4.1.7_4.RHEL4.1.i386.rpm
  b. rpm -ivh --ndps mysql_4.1.7_4.RHEL4.1.i386.rpm
  c. rpm -ivh --nodep mysql_4.1.7_4.RHEL4.1.i386.rpm
  d.rpm -ivh --nodeps mysql_4.1.7_4.RHEL4.1.i386.rpm
2.以下哪项不属于linux二进制发布软件包的特点?()
  a.在安装时不需要用户重新编译
  b.不同的平台需要相应的包
  c.缺乏灵活性
  d.可以对软件的源代码保密
3.在rpm命令中,安装新的RPM包软件使用的参数是()  
  a. -i
  b. -v
  c. -h
  d. -e
4.查询包名中带有zip的已安装包(要求写出命令)
  
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/23460/showart_177623.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP