zoukankan      html  css  js  c++  java
  • linux下软件的安装[转]

    linux下软件的安装

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

    RPM格式软件包的安装

    1.安装RPM包软件

    # rpm -ivh MYsoftware-1.2 -1.i386.rpm

    安装过程中可能出现下面的警告或者提示:

    ... conflict with ...

    可能是要安装的包里有一些文件可能会覆盖现有的文件,缺省时这样的情况下是无法正确安装的可以用 :rpm --force -i 强制安装即可

    ... is needed by ...

    ... is not installed ...

    此包需要的一些软件你没有安装可以用 rpm --nodeps -i 来忽略此信息

    也就是说,rpm -i --force --nodeps 可以忽略所有依赖关系和文件问题,什么包

    都能安装上,但这种强制安装的软件包不能保证完全发挥功能

    2.RPM命令主要参数:

    -i 安装软件。

    -t 测试安装,不是真的安装。

    -p 显示安装进度。

    -f 忽略任何错误。

    -U 升级安装。

    -v 检测套件是否正确安装。

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

    3.卸载软件

    # rpm -e 软件名

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

    #rpm -e software

    4.强行卸载RPM包

    有时除去一个RPM是不行的,尤其是系统上有别的程序依赖于它的时候。如果执行命令会显示如下错误信息:

    # rpm -e software

    error: removing these packages would break dependencies:

    /usr/X11R6/bin/ software is needed by x-amusements-1.0-1

    这种情况下,可以用--force选项重新强行安装software:

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

    然后使用工具软件Kleandisk安全彻底清理掉不再使用的RPM包。

    5.安装.src.rpm类型的文件

      目前RPM有两种模式,一种是已经过编码的(i386.rpm),一种是未经编码的(src.rpm)。

      rpm --rebuild Filename.src.rpm

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

    rpm -ivh /usr/src/reghatRPMS/i386/Filename.rpm

    也可以这样做:

    1、rpm -i Filename.src.rpm

    2. cd /usr/src/redhat/SPECS

    3. rpmbuild -bp Filename.specs 一个和你的软件包同名的specs文件

    4. cd /usr/src/redhat/BUILD/ Filename / 一个和你的软件包同名的目录

    5. ./configure 这一步和编译普通的源码软件一样,可以加上参数

    6. make

    7. make install

    使用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的最主要的优势之一。使用源代码安装软件,能按照用户的需要选择定制的安装方式进行安装,而不是仅仅依靠那些在安装包中的预配置的参数选择安装。另外,仍然有一些软件程序只能从源代码处进行安装。

    下面介绍一下安装步骤:

    1.解压数据包

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

    1、以.z为扩展名的文件:

    #uncompress file.Z

    2.以.gz为扩展名的文件:

    #gunzip file.gz

    3.以.bz2为扩展名的文件:

    #bunzip2 file.bz2

    4.以.tar.Z为扩展名的文件:

    #tar xvZf file.tar.Z

    或 #compress -dc file.tar.Z | tar xvf –

    5.以.tar.gz/.tgz为扩展名的文件:

    #tar xvzf file.tar.gz

    或 gzip -dc file.tar.gz | tar xvf –

    6.以.tar.bz2为扩展名的文件:

    #tar xvIf file.tar.bz2

    或 bzip2 -dc file.tar.bz2 | xvf –

    7.以.cpio.gz/.cgz为扩展名的文件:

    #gzip -dc file.cgz | cpio -div

    2.编译软件

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

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

    通常的安装方法是从安装包的目录执行以下命令:

    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软件安装,RH下RPM安装是一个不错的选择但是如果想真正掌握Linux系统,源代码安装仍然是Linux下软件安装的重要手段。

     
  • 相关阅读:
    ExtJs学习笔记之ComboBox组件
    ExtJs学习笔记之学习小结LoginDemo
    ExtJs学习笔记之Button组件
    ExtJs学习笔记之TextField
    WAF指纹识别和XSS过滤器绕过技巧
    python中的迭代与递归
    使用Python对文档单词进行计数
    Python正则表达式使用实例
    Python十六进制与字符串的转换
    数组名a,数组名取地址&a,数组首地址&a[0],数组指针*p
  • 原文地址:https://www.cnblogs.com/dyufei/p/2574018.html
Copyright © 2011-2022 走看看