【131】

Linux软件安装
这里主要有三种:

  • 编译安装(麻烦,不推荐)
  • rpm安装(一般,不太推荐)
  • yum安装(推荐)

一、编译安装
编译安装是最麻烦的方式,一般不推荐使用。但是我们依然要了解下,万一以后不得已用到了呢?我们拿淘宝的Tengine(基于Nginx的Web服务器)的安装示例:

首先解压: tar -zxvf tengine-2.1.0.tar.gz解压完成后,有一个tengine的文件夹,我们进入查看README文件

README文件找到如下内容,要安装Tengine,需要执行下面三个步骤:

./configure :执行configure生成一个mikefile文件,用于生成各个模块依赖【./configure --help查看帮助】。
我们试着执行下,发现有个错误,C编译器环境没有,也就是没有gcc

我们来安装下gcc ,命令yum install -y gcc,安装完成后我们再次执行./configure命令,发现又有一个错误,缺少PCRE库:

我们不知道,PCRE是啥意思,命令yum search PCRE查看如下,我们选择安装开发版本的pcre包,命令yum install pcre-devel,不用选择32位的还是64位的,会自动识别。

安装完成,我们继续执行./configure文件,发现又有一个错误!!!,如图所示,和上面操作一样,安装吧。。。。。。

直到我们安装完,所有缺少的包,执行./configure,结果如下所示:

来查看一下,Makefile文件如下图所示,我们在读取README文件的时候知道第一步是执行./configure文集,第二步就是执行make命令(没有参数)。n那么没有参数,他就会默认找default对应的build。也就是执行/objs/下的Makefile文件,记得不是tengine-2.1.0文件下的Makefile。

/objs/Makefile里面有哪些东西呢?里面指定了一些文件安装的目录,以及编译过程描述。因此make就是执行我们Makefile所指定的编译过程。回到tengine根目录下执行make命令,然后执行make install。当看到如下显示,说明编译并安装完成。

我们最后到来测试下nginx是否可以执行,到/usr/local/下找到nginx并找到可执行文件(说明:Linux默认都是安装在我们/usr/local文件目录下的):

nginx启动成功了。既然nginx是一个web服务器那么他就可以通过浏览器来访问【ps->记得关闭防火墙 service iptables stop】:

至此我们的编译安装tengine的示例完成,但是特别麻烦,需要自己去安装一些依赖的库。因此不推荐,一般也不采用这样的方式。我们有更好的方式。
二、rpm安装

  • Redhat提供了rpm管理体系
  • 已经编译的软件包:针对不同的平台系统编译目标软件包
  • 操作系统维护安装信息
  • 软件包包含依赖检查,但,还需人为解决

示例安装:
安装jdk-7u67-linux-x64.rpm,执行命令如下:rpm -ivh jdk-7u67-linux-x64.rpm

  • i:install
  • v:显示安装进度

安装完如下,我们执行java -version来查看发现安装成功了,但是我们并没有配置环境变量,在执行下java的内部命令jps发现命令没有找到:

为什么环境变量没有配置反而java -version可以执行呢?
因为安装java的过程中会有个小脚本,让java指向/usr/java下的default

配置环境变量:

生效并测试:

命令总结:

  • rpm安装

    • -ivh filename
    • --prefix
  • rpm升级

    • -Uvh
    • -Fvh
  • rpm卸载
    • -e PACKAGE_NAME
  • rpm查询(类似windows 控制面板-程序/卸载)
    • rpm -qa : 查询已经安装的所有包
    • rpm -q PACKAGE_NAME: 查询指定的包是否已经安装
    • rpm -qi PACKAGE_NAME: 查询指定包的说明信息
    • rpm -ql PACKAGE_NAME: 查询指定包安装后生成的文件列表
    • rpm -qc PACEAGE_NEME:查询指定包安装的配置文件
    • rpm -qd PACKAGE_NAME: 查询指定包安装的帮助文件
    • rpm -q --scripts PACKAGE_NAME: 查询指定包中包含的脚本
    • rpm -qf /path/to/somefile: 查询文件是由哪个rpm包安装生成的
    • 如果某rpm包尚未安装,需查询其说明信息、安装以后会生成的文件
      • rpm -qpi /PATH/TO/PACKAGE_FILE
      • rpm -qpl

查询某个工具需要安装那个包示例:

说明:rpm会有一个数据库记录文件安装的目录以及所对应的包,及时文件被移除,也能查询出来需要安装的包。但是:
有的包需要相关的依赖,如果没有还是会像编译安装一样先安装相关依赖的包比较麻烦。
三、yum安装

  • 基于rpm包管理
  • 提供rpm仓库

国内镜像仓库:

  • http://mirrors.163.com/
  • https://opsx.alibaba.com/mirror

查看yum仓库配置:

配置镜像仓库(如阿里的):
1.备份配置文件:

2.安装wget工具:yum install wget -y
3.复制阿里云帮助文档的命令:

完成后有如下文件:

4.生成缓存【注意应当先清除之前的依赖】

5.接下来就可以愉快的从阿里镜像库下载软件了。
6.网易镜像库同理,使用帮助:http://mirrors.163.com/.help/centos.html配置本地源:
1.修改CentOS-Base.repo文件
之前阿里云的配置如下:

配置后如下:

说明:baseurl=

  • http:// 互联网上
  • file:// 本地
  • ftp:// ftp服务

2.清除依赖-生成依赖yum clean allyum makecache
3.注意记得挂载上含有仓库的目录 mount /dev/cdrom /myrepo,有时候明明有依赖却下载失败,就是因为没有挂载上仓库目录。yum常用命令:

  • yum repolist
  • yum clean all
  • yum makecache
  • yum update
  • 查询:
    • yum list 列出安装的包
    • yum search 查询
    • yum info 如 yum info mysql-server
  • 安装&卸载:

    • yum install 安装
    • remove|erase 卸载
  • 分组

    • yum grouplist
    • yum groupinfo
    • yum groupinstall
    • yum groupremove
    • yum groupupdate

注意如果安装的包中间包含空格,需要用引号括起来
如 Romanian Support 要括起来“Romanian Support”

_Linux软件安装相关推荐

  1. dpkg安装软件流程_Linux软件安装管理之——dpkg与apt-*详解

    [Linux软件安装管理系列]- - 传送门: - -<Linux软件安装管理之--dpkg与apt-*详解> 一.序言 上一篇文章<Linux软件安装管理之--源码安装详解> ...

  2. linux网关0.0.0.0是什么意思_Linux软件安装⑦|DeePMD-kit v1.0

    2019年10月9日微信公众号发 假定已经安装了Anaconda(建议使用最新版2019.07),已连接互联网,则 1.安装tensorflow(如仅需CPU版本的TensorFlow,则将tenso ...

  3. ylinux系统找到软件_Linux【常用软件安装篇】

    摘要:本文介绍Linux常用的软件安装方式以及jdk.vim.mysql.tomcat.redis的安装过程. 1 Linux常用软件安装方式常用方式有:rmp包安装.yum指令安装.源码包安装.解压 ...

  4. CentOS7 Minimal版本的简单配置和软件安装记录

    1.下载 Index of /centos/7/isos/x86_64/ 2.VMware安装CentOS Minimal 参考:VMware15安装Centos7超详细过程 - happy_2010 ...

  5. 【转载】Linux 软件安装到 /usr,/usr/local/ 还是 /opt 目录?

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

  6. 32位jdk_MyEclipse 10((32/64位)、(MAC)、(Linux))软件安装教程

    各类软件都能免费下载,良心公众号 要下载教程安装的软件,请关注微信公众号(华利设计疯人院),更多更全的软件等着你! 安装中有问题咨询管家微信:LXQ1607199190 备注:加华利设计疯人院群 正文 ...

  7. Linux之软件安装 apt-get

    Linux之软件安装 apt-get 1. 软件安装的介绍 Ubuntu软件安装有两种方式: 离线安装(deb文件格式安装)   [提前下载到电脑的安装包] 在线安装(apt-get方式安装)    ...

  8. linux安装软件tar.bz,CentOS下的几种软件安装方式

    1. rpm包 安装: rpm -ivh soft.version.rpm 更新: rpm -Uvh soft.version.rpm 卸载: 1) 查找欲卸载的软件包 rpm -qa | grep  ...

  9. 软件安装:原始码与 Tarball

    本章主要介绍的就是那些 使用 gcc makefile 等等编辑 C 语言 Tarball  就是利用 tar打包, gzip 或  bzip2 压缩,所以 tarball 档案一般的扩展名就写成 * ...

最新文章

  1. 04_05_06:设置线型风格(设置线型风格)、区域着色 (Shading Regions)、设置Spines
  2. [Python3] 015 冰冻集合的内置方法
  3. 运动会成绩管理系统python_Python 实现简易版成绩管理系统
  4. 读源码,对程序员重要吗?
  5. 心得9--jsp设计模版
  6. 云原生时代,.NET5必将称王!
  7. 寻找随机的错误-一个真实的故事
  8. crontab环境变量
  9. 防止sql注入的方法
  10. iscsi 同步_群晖六盘位旗舰NAS,一文教你如何解决多设备同步,跨平台协调
  11. 高考填报志愿计算机操作技巧,填报高考志愿技巧和方法有哪些
  12. python是什么类型的编程语言-python是一种什么类型的编程语言
  13. BMP 转 YUV (BMP2YUV)
  14. 打开Idea,弹出Server‘s certificate is not trusted 解决方法
  15. C# Skip和Take的简单用法
  16. 智能眼镜的“减熵式增长”
  17. python求平均工资_python实现求和,求平均值——函数
  18. 日历程序,支持添加日程提醒
  19. JAVA前端与后端交互面试题
  20. ESP32学习8:WIFI

热门文章

  1. 在SAP除了使用Cordova生产移动应用外,还有这种方式
  2. UI5 EventBus
  3. 推荐一个好用的Chrome扩展应用,管理新建标签页面的
  4. 什么是CRM Sales category
  5. product thumbnail区域未能显示的原因分析
  6. IBASE archive pre-processing report RIBARCHV
  7. python声音信号调制_用python产生正弦波和PWM信号产生脉冲幅度调制
  8. arraylist 初始化_ArrayList实现原理(JDK1.8)
  9. php mysql连续签到跨月_PHP连续签到功能实现方法详解
  10. python汉诺塔问题_Python汉诺塔问题