Linux学习的路还很远呢,各位码农,新年快乐哈!

1)一种是软件的源代码,您需要自己动手编译它。这种软件安装包通常是用gzip压缩过的tar包(后缀为.tar.gz)。

2)另一种是软件的可执行程序,你只要安装它就可以了。这种软件安装包通常被是一个RPM包(Redhat Linux Packet Manager,就是Redhat的包管理器),后缀是.rpm。
  当然,也有用rpm格式打包的源代码,用gzip压缩过的可执行程序包。只要您理解了以下的思路,这两种形式的安装包也不在话下了。

第一部分:.tar.gz

首先,将安装文件拷贝至你的目录中。例如,如果你是以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
  至此,软件的安装结束
第二部分
1.首先,使用tar -xzvf来解开这个包,如:
  #tar -xzvf apache_1_3_6_tar.gz
  这样就会在当前目录中创建了一个新目录(目录名与.tat.gz包的文件名类似),用来存放解压了的内容。如本例中就是apache_1.3.6

2.进入这个目录,再用ls命令查看一下所包含的文件,如:
  #cd apache_1.3.6
  #ls
  你观察一下这个目录中包含了以下哪一个文件:configure、Makefile还是Imake。
1)如果是configure文件,就执行:
  #./configure
  #make
  #make install
2)如果是Makefile文件,就执行:
  #make
  #make install
3)如果是Imake文件,就执行:
  #xmkmf
  #make

  #make install

make原理是执行一个叫(所生成的)Makefile文件里的指令,make的基本用处是自动根据makefile里的指令来编译源文件。它还可以用来做比如安装软件,卸载软件等事情,但前提是作者在makefile里写了。比如makefile里有这么些内容:
install : < commands >
然后用make install的话,make程序就会按照上面install:后面的指令< commands >执行安装,uninstall也是一样的道理,大部分的作者会写有卸载的部分,这时只要简单地执行make unistall就可以,如果作者懒没有写,那就只有根据make install中的步骤,看它把什么文件拷到哪去了,然后分别手动删除。
还有关键的一点是,编译安装完成后,不要删除源代码,不然就算作者写了unnistall目标,你也没有makefile可以执行了。
3.如果没有出现什么错误提示的话,就搞定了。至于软件安装到什么地方,通常会在安装时出现。否则就只能查阅一下README。

执行命令查看安装目录: rpm -ql apache
如果遇到错误提示,也别急,通常是十分简单的问题:
1)没有安装C或C++编译器:
  确诊方法:执行命令gcc(C++则为g++),提示找不到这个命令。
  解决方法:将Linux安装光盘mount上来,然后进入RPMS目录,执行命令:
   #rpm -ivh gcc* (哈哈,我们用到了第二种安装方式)
2)没有安装make工具:
  确诊方法:执行命令make,提示找不到这个命令。
  解决方法:将Linux安装光盘mount上来,然后进入RPMS目录,执行命令:
   #rpm -ivh make*
3)没有安装autoconf工具:
  确诊方法:执行命令make,提示找不到这个命令。
  解决方法:将Linux安装光盘mount上来,然后进入RPMS目录,执行命令:
   #rpm -ivh autoconf*
4)缺少某些链接库;
  确诊方法:在make时,提示需要某些文件。
  解决方法:安装包含这个文件的包,这就需要积累了。
第二部分:.rpm

  RPM是Red Hat公司随Redhat Linux推出了一个软件包管理器,通过它能够更加轻松容易地实现软件的安装。

将安装文件拷贝至你的目录中/usr/src。然后使用rpm来安装该文件。命令如下:
  ---- #rpm -ivh filename.i386.rpm
  ---- rpm将自动将安装文件解包,并将软件安装到缺省的目录下。并将软件的安装信息注册到rpm的数据库中。

  1.安装软件:执行rpm -ivh rpm包名,如:
   #rpm -ivh apache-1.3.6.i386.rpm
  2.升级软件:执行rpm -Uvh rpm包名。
  3.反安装:执行rpm -e rpm包名。
  4.查询软件包的详细信息:执行rpm -qpi rpm包名
  5.查询某个文件是属于那个rpm包的:执行rpm -qf rpm包名
  6.查该软件包会向系统里面写入哪些文件:执行 rpm -qpl rpm包名

Linux Centos 下安装软件 三种方式(转)的更多相关文章

  1. Linux Centos 下安装软件 三种方式

    1)一种是软件的源代码,您需要自己动手编译它.这种软件安装包通常是用gzip压缩过的tar包(后缀为.tar.gz). 2)另一种是软件的可执行程序,你只要安装它就可以了.这种软件安装包通常被是一个R ...

  2. Linux 软件安装的三种方式

    Linux 软件安装的三种方式 1.yum ​ 语法格式: ​ yum -y install package.name ​ -y yes # 遇到提示自动输入yes ​ 案例: 安装ifconfig命 ...

  3. Linux就这个范儿 第15章 七种武器 linux 同步IO: sync、fsync与fdatasync Linux中的内存大页面huge page/large page David Cutler Linux读写内存数据的三种方式

    Linux就这个范儿 第15章 七种武器  linux 同步IO: sync.fsync与fdatasync   Linux中的内存大页面huge page/large page  David Cut ...

  4. CentOS下安装软件

    CentOS下安装软件,要看下载的软件安装包的后缀名是什么,一般为了方便安装,推荐下载以 rpm 结尾的软件包. 比如以下截图,有多种下载方式,推荐下载圈起来的链接. rpm包安装方式步骤: 找到相应 ...

  5. Linux就这个范儿 第18章 这里也是鼓乐笙箫 Linux读写内存数据的三种方式

    Linux就这个范儿 第18章  这里也是鼓乐笙箫  Linux读写内存数据的三种方式 P703 Linux读写内存数据的三种方式 1.read  ,write方式会在用户空间和内核空间不断拷贝数据, ...

  6. MySQL安装的三种方式

    .markdown-preview:not([data-use-github-style]) { padding: 2em; font-size: 1.2em; color: rgb(171, 178 ...

  7. Linux CentOS下安装Tomcat9

    本文讲解在Linux CentOS下安装Tomcat9,以及Web项目的部署发布. 环境:阿里云ECS 云服务器Linux CentOS 使用XShell客户端连接服务器,进行操作实践. 1.下载To ...

  8. 在Tomcat下部属项目三种方式:

    在Tomcat下部属项目三种方式:       1直接复制:       2. 通过配置虚拟路径的方式    直接修改配置文件 写到tomcat/conf/server.xml     找到<H ...

  9. Linux(CentOs)下安装Phantomjs + Casperjs

    Linux(CentOs)下安装Phantomjs + Casperjs 是参照cnMiss's Blog http://ju.outofmemory.cn/entry/70691的博客进行安装的 1 ...

随机推荐

  1. Redux:从action到saga

    前端应用消失的部分 一个现代的.使用了redux的前端应用架构可以这样描述: 一个存储了应用不可变状态(state)的store 状态(state)可以被绘制在组件里(html或者其他的东西).这个绘 ...

  2. Luogu P1078 文化之旅

    题目描述 有一位使者要游历各国,他每到一个国家,都能学到一种文化,但他不愿意学习任何一种文化超过一次(即如果他学习了某种文化,则他就不能到达其他有这种文化的国家).不同的国家可能有相同的文化.不同文化 ...

  3. 给VMware的虚拟机设置静态地址

    最近在VMware 上运行新版本Linux 虚拟机集群,在给每个虚拟机设置静态IP时,遇到一些挫折,新版本有些变动,故记录下来备用. Centos版本信息7.4.1708: Ubuntu版本信息17. ...

  4. 【DDD】领域驱动设计实践 —— 一些问题及想法

    在社区系统的DDD实践过程中,将遇到一些问题和产生的想法记录下来,共讨论. 本文为[DDD]系列文章中的其中一篇,其他内容可参考:使用领域驱动设计思想实现业务系统. 1.dto.model和entit ...

  5. dojo省份地市级联之地市Dao接口类(四)

    dojo省份地市级联之地市Dao接口类 CityDao.java: /** * 地市 */ package com.you.dao; import java.util.List; import com ...

  6. CAN控制器-配置过滤器

    首先简单介绍一下CAN总线,关于CAN总线是谁发明的,CAN总线的历史,CAN总线的发展,CAN总线的应用场合,这些,通通不说.这里只是以我个人理解,简单说说CAN通信.CAN总线的端点没有地址(除非 ...

  7. Javascript和JQuery中常用的随机数产生函数

    无论在普通Js框架或者JQuery中都可以使用的,函数如下,使用方法简介: 1)获取0-100的随机数--getRandom(100); 2)获取0-999的随机数--getRandom(999); ...

  8. Cortex-M3

    大家听说过Cortex-M3吗?在嵌入式处理器的世界,cortex-M3是一位人见人爱的后生.它的成本和功耗低,可配置性很高.如今,很多ARM的工程师加入了cortex-M3的学习与开发中,WIZne ...

  9. 如何修改64位Eclipse中的代码字体大小

    1.双击打开Eclipse,如下图所示: 2.找到菜单栏中的Window,单击它,选择Preferences 3.在左侧的树形菜单中找到General--->Appearance--->C ...

  10. Struts2(四)Struts2配置文件的配置

    Struts2的常见配置 1.Struts2的配置文件的加载顺序: 每次从客户端发送到请求到服务器都要先从Struts2的核心过滤器StrutsPrepareAndExeccuteFilter,这个过 ...