QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5428|回复: 14

linux下软件安装详解

[复制链接]
发表于 2005-9-19 02:14:44 | 显示全部楼层 |阅读模式
 在Windows下安装软件时,只需用鼠标双击软件的安装程序,或者用Zip等解压缩软件解压缩即可安装。在Linux下安装软件对初学者来说,难度高于Windows下软件安装。下面我就详细讲解Linux下如何安装软件。

  先来看看Linux软件扩展名。软件后缀为.rpm最初是Red Hat Linux提供的一种包封装格式,现在许多Linux发行版本都使用;后缀为.deb是Debain Linux提供的一种包封装格式;后缀为.tar.gz、tar.Z、tar.bz2或.tgz是使用Unix系统打包工具tar打包的;后缀为.bin的一般是一些商业软件。通过扩展名可以了解软件格式,进而了解软件安装。

  RPM格式软件包的安装

  1.简介
  几乎所有的Linux发行版本都使用某种形式的软件包管理安装、更新和卸载软件。与直接从源代码安装相比,软件包管理易于安装和卸载;易于更新已安装的软件包;易于保护配置文件;易于跟踪已安装文件。

  RPM全称是Red Hat Package Manager(Red Hat包管理器)。RPM本质上就是一个包,包含可以立即在特定机器体系结构上安装和运行的Linux软件。RPM示意图见图1。




  大多数Linux RPM软件包的命名有一定的规律,它遵循名称-版本-修正版-类型-MYsoftware-1.2 -1.i386.rpm 。

  2.安装RPM包软件
  # rpm -ivh MYsoftware-1.2 -1.i386.rpm

  RPM命令主要参数:

  -i 安装软件。
  -t 测试安装,不是真的安装。
  -p 显示安装进度。
  -f 忽略任何错误。
  -U 升级安装。
  -v 检测套件是否正确安装。
  

  这些参数可以同时采用。更多的内容可以参考RPM的命令帮助。

  3.卸载软件
  # rpm -e 软件名

  需要说明的是,上面代码中使用的是软件名,而不是软件包名。例如,要卸载software-1.2.-1.i386.rpm这个包时,应执行:
  #rpm -e software

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2005-9-19 02:15:17 | 显示全部楼层
 4.强行卸载RPM包
  有时除去一个RPM是不行的,尤其是系统上有别的程序依赖于它的时候。如果执行命令会显示如下错误信息:

  ## rpm -e xsnow
  error: removing these packages would break dependencies:
  /usr/X11R6/bin/xsnow is needed by x-amusements-1.0-1
  

  在这种情况下,可以用--force选项重新安装xsnow:

  ## rpm -ivh --force xsnow-1.41-1.i386.rpm
  xsnow
  

  这里推荐使用工具软件Kleandisk,用它可以安全彻底清理掉不再使用的RPM包。

  5.安装.src.rpm类型的文件
  目前RPM有两种模式,一种是已经过编码的(i386.rpm),一种是未经编码的(src.rpm)。
  rpm --rebuild Filename.src.rpm

  这时系统会建立一个文件Filenamr.rpm,在/usr/src/redflag/RPMS/子目录下,一般是i386,具体情况和Linux发行版本有关。然后执行下面代码即可:
  rpm -ivh /usr/src/regflag/RPMS/i386/Filename.rpm

  使用deb打包的软件安装

  deb是Debian Linux提供的一个包管理器,它与RPM十分类似。但由于RPM出现得早,并且应用广泛,所以在各种版本的Linux中都常见到,而Debian的包管理器dpkg只出现在Debina Linux中。它的优点是不用被严格的依赖性检查所困扰,缺点是只在Debian Linux发行版中才能见到这个包管理工具。

  1. 安装
  # dpkg -i MYsoftware-1.2.-1.deb

  2. 卸载
  # dpkg -e MYsoftware

  使用源代码进行软件安装

  和RPM安装方式相比,使用源代码进行软件安装会复杂一些,但是用源代码安装软件是Linux下进行软件安装的重要手段,也是运行Linux的最主要的优势之一。使用源代码安装软件,能按照用户的需要选择定制的安装方式进行安装,而不是仅仅依靠那些在安装包中的预配置的参数选择安装。另外,仍然有一些软件程序只能从源代码处进行安装。

  现在有很多地方都提供源代码包,到底在什么地方获得取决于软件的特殊需要。对于那些使用比较普遍的软件,如Sendmail,可以从商业网站处下载源代码软件包(如http://www.sendmail.org )。一般的软件包,可从开发者的Web站点下载。下面介绍一下安装步骤:

  1.解压数据包
  源代码软件通常以.tar.gz做为扩展名,也有tar.Z、tar.bz2或.tgz为扩展名的。不同扩展名解压缩命令也不相同,见表1。

  
  2.编译软件
  成功解压缩源代码文件后,进入解包的目录。在安装前阅读Readme文件和Install文件。尽管许多源代码文件包都使用基本相同的命令,但是有时在阅读这些文件时能发现一些重要的区别。例如,有些软件包含一个可以安装的安装脚本程序(.sh)。在安装前阅读这些说明文件,有助于安装成功和节约时间。

  在安装软件以前要成为root用户。实现这一点通常有两种方式:在另一台终端以root用户登录,或者输入“su”,此时系统会提示输入root用户的密码。输入密码以后,就将一直拥有root用户的权限。如果已经是root用户,那就可以进行下一步。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

 楼主| 发表于 2005-9-19 02:15:38 | 显示全部楼层
通常的安装方法是从安装包的目录执行以下命令:

  gunzip soft1.tar.gz
  cd soft1
  #. /configure #配置#
  make #调用make#
  make install #安装源代码#
  

  删除安装时产生的临时文件:
  #make clean

  卸载软件:
  #make uninstall

  有些软件包的源代码编译安装后可以用make uninstall命令卸载。如果不提供此功能,则软件的卸载必须手动删除。由于软件可能将文件分散地安装在系统的多个目录中,往往很难把它删除干净,应该在编译前进行配置。

  .bin文件安装

  扩展名为.bin文件是二进制的,它也是源程序经编译后得到的机器语言。有一些软件可以发布为以.bin为后缀的安装包,例如,流媒体播放器RealONE。如果安装过RealONE的Windows版的话,那么安装RealONE for Linux版本(文件名:r1p1_linux22_libc6_i386_a1.bin)就非常简单了:
  #chmod +x r1p1_linux22_libc6_i386_a1.bin
  ./ r1p1_linux22_libc6_i386_a1.bin

  接下来选择安装方式,有普通安装和高级安装两种。如果不想改动安装目录,就可选择普通安装,整个安装过程几乎和在Windwos下一样。

  .bin文件的卸载,以RealONE for Linux为例,如果采用普通安装方式的话,在用户主目录下会有Real和Realplayer9两个文件夹,把它们删除即可。

  Linux绿色软件

  Linux也有一些绿色软件,不过不是很多。Linux系统提供一种机制:自动响应软件运行进程的要求,为它设定好可以马上运行的环境。这种机制可以是一种接口,或者是中间件。程序员编写的程序可以直接拷贝分发,不用安装,只要点击程序的图标,访问操作系统提供的接口,设定好就可以工作。若要删除软件,直接删除就可以,不用链接文件。这是最简单的软件安装、卸载方式。

  上面介绍了Linux软件安装的方法,对于Linux初学者来说,RPM安装是一个不错的选择。如果想真正掌握Linux系统,源代码安装仍然是Linux下软件安装的重要手段。
  
回复

使用道具 举报

发表于 2005-12-27 12:56:34 | 显示全部楼层
楼主,请问一下你说的第一种源代码跟第二种以.bin为后缀的源代码有什么区别?安装的时候怎么样区别它们?
回复

使用道具 举报

发表于 2005-12-27 13:33:13 | 显示全部楼层
使用file 文件名查看。
file很聪明,它会告诉你文件的正确格式,就是扩展名变了,它也认得。
回复

使用道具 举报

发表于 2005-12-28 08:45:11 | 显示全部楼层
感谢楼主!!!
回复

使用道具 举报

发表于 2006-1-7 08:42:03 | 显示全部楼层
原代码例如*.c文件,可以用文本编辑器打开修改;而二进制代码就是机器语言,机器可以识别运行!
回复

使用道具 举报

发表于 2006-1-8 14:27:18 | 显示全部楼层

求助__Linux下的软件安装

如果是用RPM方式安装软件会提示安装的目的路径吗?装过一个播放器,后来找半天,它 /user/local/Realplayer(如果我没记错,就是这里).
是否在RPM工具的配置文件里默认的给它指定?
我能决定所安装的软件的目的路径吗,当用RPM方式安装的?
回复

使用道具 举报

发表于 2006-1-8 14:28:30 | 显示全部楼层

Re: 求助__Linux下的软件安装

[quote:9e1f276fc7="primary_lg"]如果是用RPM方式安装软件会提示安装的目的路径吗?装过一个播放器,后来找半天,它 /user/local/Realplayer(如果我没记错,就是这里).
是否在RPM工具的配置文件里默认的给它指定?
我能决定所安装的软件的目的路径吗,当用RPM方式安装的?[/quote]
回复

使用道具 举报

发表于 2006-1-8 14:49:22 | 显示全部楼层
同问
回复

使用道具 举报

发表于 2006-1-8 22:20:23 | 显示全部楼层
楼主不讲讲apt-get,emerge和pacman的用法?
回复

使用道具 举报

发表于 2006-4-4 10:31:33 | 显示全部楼层
很好,非常好啊
回复

使用道具 举报

发表于 2006-4-16 22:48:22 | 显示全部楼层
rpm 安装的东西多是在/usr/local/下可以找到,一般是不可以更改安装的目录,如果要更改目录可以选择于源代码的方式安装,在./configure --prefix=可以指定你要的目录
回复

使用道具 举报

发表于 2006-4-17 00:37:22 | 显示全部楼层
rpm是我认为的最垃圾的一种安装包方式,它的依赖关系简直就无法容忍
回复

使用道具 举报

发表于 2006-5-27 01:06:43 | 显示全部楼层
还是喜欢源码安装。虽然麻烦一点
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-12 01:15 , Processed in 0.084748 second(s), 17 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表