前言:在Linux中安装软件时,我们经常要考虑到这样几个个问题:

(1).怎样安装软件;
       (2).软件安装在什么地方;
       (3).如何卸载删除不要的软件......

下面,我们就一起来认识一下这些方面的问题。

  一.认识Linux应用软件安装包

  通常Linux应用软件的安装包有三种:
  1) tar包,如software-1.2.3-1.tar.gz。它是使用UNIX系统的打包工具tar打包的。
  2) rpm包,如software-1.2.3-1.i386.rpm。它是Redhat Linux提供的一种包封装格式。
  (现在用的全称叫RPM Package Manager,以前叫Redhat Package Manager)
  3) dpkg包,如software-1.2.3-1.deb。它是Debain Linux提供的一种包封装格式。

  而且,大多数Linux应用软件包的命名也有一定的规律,它遵循:
  名称-版本-修正版-类型
  例如:
  1) software-1.2.3-1.tar.gz 意味着:
  软件名称:software
  版本号:1.2.3
  修正版本:1
  类型:tar.gz,说明是一个tar包。

  2) sfotware-1.2.3-1.i386.rpm
  软件名称:software
  版本号:1.2.3
  修正版本:1
  可用平台:i386,适用于Intel 80x86平台。
  类型:rpm,说明是一个rpm包。
  注:由于rpm格式的通常是已编译的程序,所以需指明平台。在后面会详细说明。 

  二、 了解包里的内容:

  一个Linux应用程序的软件包中可以包含两种不同的内容:
  1) 一种就是可执行文件,也就是解开包后就可以直接运行的。在Windows中所 有的软件包都是这种类型。安装完这个程序后,你就可以使用,但你看不到源程序。而且下载时要注意这个软件是否是你所使用的平台,否则将无法正常安装。
  2) 另一种则是源程序,也就解开包后,你还需要使用编译器将其编译成为可执行文件。这在Windows系统中是几乎没有的,因为Windows的思想是不开放源程序的。
  通常,用tar打包的,都是源程序;而用rpm、dpkg打包的则常是可执行程序。一般来说,自己动手编译源程序能够更具灵活性,但也容易遇到各种问题和困难。而相对来说,下载那些可执行程序包,反而是更容易完成软件的安装,当然那样灵活性就差多了。所以一般一个软件总会提供多种打包格式的安装程 序的。你可以根据自己的情况来选择。
  
       几种安装命令介绍:

  一、rpm包安装方式步骤:
  1、找到相应的软件包,比如soft.version.rpm,下载到本机某个目录;
  2、打开一个终端,su -成root用户;
  3、cd soft.version.rpm所在的目录;
  4、输入rpm -ivh soft.version.rpm

  详细介绍:

  1. 安装:
  我只需简单的一句话,就可以说完。执行:
  rpm –ivh rpm的软件包名
  更高级的,请见下表:
  rpm参数 参数说明
  -i 安装软件
  -t 测试安装,不是真的安装
  -p 显示安装进度
  -f 忽略任何错误
  -U 升级安装
  -v 检测套件是否正确安装
  这些参数可以同时采用。更多的内容可以参考RPM的命令帮助。

  2. 卸载:
  我同样只需简单的一句话,就可以说完。执行:
  rpm –e 软件名
  不过要注意的是,后面使用的是软件名,而不是软件包名。例如,要安装software-1.2.3-1.i386.rpm这个包时,应执行:
  rpm –ivh software-1.2.3-1.i386.rpm
  而当卸载时,则应执行:
  rpm –e software。
  另外,在Linux中还提供了象GnoRPM、kpackage等图形化的RPM工具,使得整个过程会更加简单。

  二、deb包安装方式步骤:

  1、找到相应的软件包,比如soft.version.deb,下载到本机某个目录;
  2、打开一个终端,su -成root用户;
  3、cd soft.version.deb所在的目录;
  4、输入dpkg -i soft.version.deb

  详细介绍:
  这是Debian Linux提供的一个包管理器,它与RPM十分类似。
  但由于RPM出现得更早,所以在各种版本的Linux都常见到。
  而debian的包管理器dpkg则只出现在Debina Linux中,其它Linux版本一般都没有。

  1. 安装
  dpkg –i deb的软件包名
  如:dpkg –i software-1.2.3-1.deb
  2. 卸载
  dpkg –e 软件名
  如:dpkg –e software
  3.查询:查询当前系统安装的软件包:
  dpkg –l ‘*软件包名*’
  如:dpkg –l '*software*'

  三、tar.gz源代码包安装方式:
  1、找到相应的软件包,比如soft.tar.gz,下载到本机某个目录;
  2、打开一个终端,su -成root用户;
  3、cd soft.tar.gz所在的目录;
  4、tar -xzvf soft.tar.gz //一般会生成一个soft目录
  5、cd soft
  6、./configure
  7、make
  8、make install

  详细介绍:
  1. 安装:
  整个安装过程可以分为以下几步:
  1) 取得应用软件:通过下载、购买光盘的方法获得;
  2)解压缩文件:一般tar包,都会再做一次压缩,如gzip、bz2等,所以你需要先解压。如果是最常见的gz格式,则可以执行:“tar –xvzf 软件包名”,就可以一步完成解压与解包工作。如果不是,则先用解压软件,再执行“tar –xvf 解压后的tar包”进行解包;
  3) 阅读附带的INSTALL文件、README文件;
  4) 执行“./configure”命令为编译做好准备;
  5) 执行“make”命令进行软件编译;
  6) 执行“make install”完成安装;
  7) 执行“make clean”删除安装时产生的临时文件。
  好了,到此大功告成。我们就可以运行应用程序了。但这时,有的读者就会问,我怎么执行呢?这也是一个Linux特色的问题。其实,一般来说, Linux的应用软件的可执行文件会存放在/usr/local/bin目录下!不过这并不是“放四海皆准”的真理,最可靠的还是看这个软件的 INSTALL和README文件,一般都会有说明。

  2. 卸载:
  通常软件的开发者很少考虑到如何卸载自己的软件,而tar又仅是完成打包的工作,所以并没有提供良好的卸载方法。
  那么是不是说就不能够卸载呢!其实也不是,有两个软件能够解决这个问题,那就是Kinstall和Kife,它们是tar包安装、卸载的黄金搭档。

  注意:
  ./configure是源代码安装的第一步,主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系,
  但并不是所有的tar包都是源代码的包,楼主可以ls看看有没有configure这个文件,也许你下的是二进制的包,如果是二进制的包,
  解压后直接就能使用。(例如上篇安装firefox浏览器flash插件, 下载的.tar.gz压缩包里面并没有configure这个文件)

  四、tar.bz2源代码包安装方式:
  1、找到相应的软件包,比如soft.tar.bz2,下载到本机某个目录;
  2、打开一个终端,su -成root用户;
  3、cd soft.tar.bz2所在的目录;
  4、tar -xjvf soft.tar.bz2 //一般会生成一个soft目录
  5、cd soft
  6、./configure
  7、make
  8、make install

  五、apt方式安装:(安装deb包)
  1、打开一个终端,su -成root用户;
  2、apt-cache search soft 注:soft是你要找的软件的名称或相关信息
  3、如果2中找到了软件soft.version,则用apt-get install soft.version命令安装软件
  注:只要你可以上网,只需要用apt-cache search查找软件,用apt-get install软件
  详细介绍:
  apt-get是debian,ubuntu发行版的包管理工具,与红帽中的yum工具非常类似。
  apt-get命令一般需要root权限执行,所以一般跟着sudo命令例sudo apt-get xxxx
  apt-get install packagename——安装一个新软件包(参见下文的aptitude)
  apt-get remove packagename——卸载一个已安装的软件包(保留配置文件)
  apt-get --purge remove packagename——卸载一个已安装的软件包(删除配置文件)
  dpkg --force-all --purge packagename ——有些软件很难卸载,而且还阻止了别的软件的应用,就可以用这个,不过有点冒险。
  apt-get autoremove——因为apt会把已装或已卸的软件都备份在硬盘上,所以如果需要空间的话,可以让这个命令来删除你已经删掉的软件。
  apt-get autoclean——定期运行这个命令来清除那些已经卸载的软件包的.deb文件。通过这种方式,可以释放大量的磁盘空间。如果需求十分迫切,可以使用apt-get clean以释放更多空间。这个命令会将已安装软件包裹的.deb文件一并删除。
  apt-get clean——这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用的。
  apt-get upgrade——更新所有已安装的软件包
  apt-get dist-upgrade——将系统升级到新版本
  apt-cache search string——在软件包列表中搜索字符串
  apt-cache showpkg pkgs——显示软件包信息。
  apt-cache stats——查看库里有多少软件
  apt-cache dumpavail——打印可用软件包列表。
  apt-cache show pkgs——显示软件包记录,类似于dpkg –print-avail。
  apt-cache pkgnames——打印软件包列表中所有软件包的名称
  (需要定期运行这一命令以确保您的软件包列表是最新的)
  简单的说: dpkg只能安装已经下载到本地机器上的deb包. apt-get能在线下载并安装deb包,能更新系统,
  且还能自动处理包与包之间的依赖问题,这个是dpkg工具所不具备的。

  

六、yum方式安装:(安装rpm包)
  rpm 是linux的一种软件包名称,以.rmp结尾,安装的时候语法为:rpm -ivh。
  rpm包的安装有个很大的缺点就是文件的关联性太大,有时装一个软件要安装很多其他的软件包,很麻烦。
  所以为此RedHat小红帽开发了yum安装方法,他可以彻底解决这个关联性的问题,很方便,只要配置两个文件即可安装,安装方法是:yum -y install 。
  yum并不是一中包,而是安装包的软件
  简单的说: rpm 只能安装已经下载到本地机器上的rpm 包. yum能在线下载并安装rpm包,能更新系统,
  且还能自动处理包与包之间的依赖问题,这个是rpm 工具所不具备的。

  七、bin文件安装:
  如果你下载到的软件名是soft.bin,一般情况下是个可执行文件,安装方法如下:
  1、打开一个终端,su -成root用户;
  2、chmod +x soft.bin
  3、./soft.bin //运行这个命令就可以安装软件了
  
        八、不需要安装的软件:
  有了些软件,比如lumaqq,是不需要安装的,自带jre解压缩后可直接运行。假设
  下载的是lumaqq.tar.gz,使用方法如下:
  1、打开一个终端,su -成root用户;
  2、tar -xzvf lumaqq.tar.gz //这一步会生成一个叫LumaQQ的目录
  3、cd LumaQQ
  4、chmod +x lumaqq //设置lumaqq这个程序文件为可运行
  5、此时就可以运行lumaqq了,用命令./lumaqq即可,但每次运行要输入全路径或
  切换到刚才生成的LumaQQ目录里
  6、为了保证不设置路径就可以用,你可以在/bin目录下建立一个lumaqq的链接,
  用命令ln -s lumaqq /bin/ 即可,以后任何时候打开一个终端输入lumaqq就可以
  启动QQ聊天软件了
  7、 如果你要想lumaqq有个菜单项,使用菜单编辑工具,比如Alacarte Menu
  Editor,找到上面生成的LumaQQ目录里的lumaqq设置一个菜单项就可以了,当然你
  也可以直接到 /usr/share/applications目录,按照里面其它*.desktop文件的格
  式生成一个自己的desktop文件即可。

==============================================================================================================================
  

软件的安装

  ---- Linux下软件的安装主要有两种不同的形式。第一种安装文件名为filename.tar.gz。另一种安装文件名为 filename.i386.rpm。以第一种方式发行的软件多为以源码形式发送的。第二种方式则是直接以二进制形式发行的。i386即表示该软件是按 Inter 386指令集编译生成的。
  ---- 对于第一种,安装方法如下:
  ---- 首先,将安装文件拷贝至你的目录中。例如,如果你是以root身份登录上的,就将软件拷贝至/root中。
  ---- #cp filename.tar.gz /root
  ---- 由于该文件是被压缩并打包的,所以,应对其解压缩。命令为:
  ---- #tar xvzf filename.tar.gz
  ---- 执行该命令后,安装文件按路径,解压缩在当前目录下。用ls命令可以看到解压缩后的文件。通常在解压缩后产生的文件中,有名为"INSTALL"的文件。该文件为纯文本文件,详细讲述了该软件包的安装方法。
  ---- 对于多数需要编译的软件,其安装的方法大体相同。执行解压缩后产生的一个名为configure的可执行脚本程序。它是用于检查系统是否有编译时所需的库,以及库的版本是否满足编译的需要等安装所需要的系统信息。为随后的编译工作做准备。命令为:
  ---- #./configure
  ---- 如果检查过程中,发现有错误,configure将给予提示,并停止检查。你可以跟据提示对系统进行配置。再重新执行该程序。检查通过后,将生成用于编译 的MakeFile文件。此时,可以开始进行编译了。编译的过程视软件的规模和计算机的性能的不同,所耗费的时间也不同。命令为:
  ---- #make
  ---- 成功编译后,键入如下的命令开始安装:
  ---- #make install
  ---- 安装完毕,应清除编译过程中产生的临时文件和配置过程中产生的文件。键入如下命令:
  #make clean
  #make distclean
  至此,软件的安装结束。
  ---- 对于第二种,其安装方法要简单的多。
  ---- 同第一种方式一样,将安装文件拷贝至你的目录中。然后使用rpm来安装该文件。命令如下:
  ---- #rpm -i filename.i386.rpm
  ---- rpm将自动将安装文件解包,并将软件安装到缺省的目录下。并将软件的安装信息注册到rpm的数据库中。参数i的作用是使rpm进入安装模式。
  ---- 另外,还有一些Linux平台下的商业软件。在其安装文件中,有Setup安装程序,其安装方法同Windows平台下的一样。如:Corel WordPerfect。

  软件的卸载
  ---- 软件的卸载主要是使用rpm来进行的。卸载软件首先要知道软件包在系统中注册的名称。键入命令:
  ---- #rpm -q -a
  ---- 即可查询到当前系统中安装的所有的软件包。参数q的作用是使rpm进入查询命令模式。参数a是查询模式的子参数,意为全部(ALL)。查询到的信息较多,可使用less人屏显示。
  ---- 确定了要卸载的软件的名称,就可以开始实际卸载该软件了。键入命令:
  ---- #rpm -e [package name]
  ---- 即可卸载软件。参数e的作用是使rpm进入卸载模式。对名为[package name]的软件包进行卸载。由于系统中各个软件包之间相互有依赖关系。如果因存在依赖关系而不能卸载,rpm将给予提示并停止卸载。你可以使用如下的命 令来忽略依赖关系,直接开始卸载:
  ---- #rpm -e [package name] -nodeps
  ---- 忽略依赖关系的卸载可能会导致系统中其它的一此软件无法使用。你可以使用
  ---- #rpm -e [package name] -test
  ---- 使rpm进行一次卸载预演,而不是真正卸载。这样可以使你检查一下软件是否存在有依赖关系。卸载过程中是否有错误。

Original text:http://blog.sina.com.cn/s/blog_5d9de9950102x7z5.html

Linux(一) 软件安装的更多相关文章

  1. Linux下软件安装方法即路径设置

    Linux下软件安装方法即路径设置 http://www.cnblogs.com/edward259/archive/2010/07/02/1770066.html

  2. (大数据工程师学习路径)第一步 Linux 基础入门----Linux 下软件安装

    介绍 介绍 Ubuntu 下软件安装的几种方式,及 apt,dpkg 工具的使用. 一.Linux 上的软件安装 通常 Linux 上的软件安装主要有三种方式: 在线安装 从磁盘安装deb软件包 从二 ...

  3. linux下软件安装的几种方式

    linux下软件安装的几种方式(主要有源码安装, rpm安装, yum安装). 一:源码安装 几乎所有的开源软件都支持在Linux下运行,而这些软件一般都以源码形式发放,只需要Linux安装了gcc. ...

  4. Linux入门基础教程之Linux下软件安装

    Linux入门基础教程之Linux下软件安装 一.在线安装: sudo apt-get install 即可安装 如果在安装完后无法用Tab键补全命令,可以执行: source ~/.zshrc AP ...

  5. Linux 下软件安装

    Linux 下软件安装 一.Linux 上的软件安装 通常 Linux 上的软件安装主要有三种方式: 在线安装 从磁盘安装deb软件包 从二进制软件包安装 从源代码编译安装 这几种安装方式各有优劣,而 ...

  6. Linux 的软件安装目录

    Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统级的目录,可以理解为C:/Windows/,/usr/lib理解为C:/Windows/System32. / ...

  7. Linux课程---11、Linux中软件安装和调试

    Linux课程---11.Linux中软件安装和调试 一.总结 一句话总结: 启动过程:1.安装软件,2.修改配置文件,3.启动服务 查看过程:4.查看进程,5.查看端口 关闭过程:6.关闭软件,7. ...

  8. linux中软件安装方式

    通常Linux应用软件的安装包有三种: tar包,如software-1.2.3-1.tar.gz.它是使用UNIX系统的打包工具tar打包的. rpm包,如software-1.2.3-1.i386 ...

  9. linux初学者-软件安装与管理篇

    linux初学者-软件安装与管理篇 在linux的学习和工作中需要安装许多的软件.在redhat的linux操作系统下,软件一般都是rpm格式的.以下将介绍一些软件安装和管理的内容. 1.软件名称 在 ...

  10. 2019-9-16:渗透测试,基础学习,Linux下软件安装,环境搭建,笔记

    Centos linux下软件安装yum 通过分析rpm包头数据后,自动解决依赖关系,直接云端下载软件,根据不同版本系统获取不同软件信息,按顺序下载rpm包,安装软件yum search 软件名:搜索 ...

随机推荐

  1. loj2091 「ZJOI2016」小星星

    ref 总的来说,就是 容斥转化为点对应到点集问题. 树形 dp 解决转化后的问题. #include <iostream> #include <cstring> #inclu ...

  2. 【Palindrome Partitioning】cpp

    题目: Given a string s, partition s such that every substring of the partition is a palindrome. Return ...

  3. leetcode 【 Search Insert Position 】python 实现

    题目: Given a sorted array and a target value, return the index if the target is found. If not, return ...

  4. Oracle 学习----:创建表(主键自增)

    一.创建表 create table testTable ( Id numbere, name varchar2(100), age number, createTime date, primary ...

  5. Docker Hadoop LAMP安装配置教程

    以下教程来自九章算法. 1.How to install Dockerhttps://bupt.quip.com/YehSAR4qnGqB 2.How to set up hadoop environ ...

  6. 为 rails 本地项目搭建 elasticsearch 服务

    首先安装 elasticsearch 服务 OSX 系统 brew install elasticsearch brew services start elasticsearch 测试服务是否启动浏览 ...

  7. java替换富文本标签等

    (转自:http://www.cnblogs.com/1246447850qqcom/p/5439366.html) package q;import java.util.regex.Matcher; ...

  8. 习题:玛丽卡(SPFA)

    玛丽卡(wikioi1021) [题目描述 ]麦克找了个新女朋友,玛丽卡对他非常恼火并伺机报复.因为她和他们不住在同一个城市,因此她开始准备她的长途旅行.在这个国家中每两个城市之间最多只有一条路相通, ...

  9. 【bzoj4012】[HNOI2015]开店 动态点分治+STL-vector

    题目描述 风见幽香有一个好朋友叫八云紫,她们经常一起看星星看月亮从诗词歌赋谈到人生哲学.最近她们灵机一动,打算在幻想乡开一家小店来做生意赚点钱.这样的想法当然非常好啦,但是她们也发现她们面临着一个问题 ...

  10. Codeforces 1158C Permutation recovery

    https://codeforces.com/contest/1158/problem/C 题目 已知 $p_1, p_2, \dots, p_n$ 是 $1$ 到 $n$ 的一个排列. 给出关于这个 ...