Linux入门进阶第三天——软件安装管理(下)
一、yum在线安装
之前的rpm包各种依赖性太强!安装复杂,yum的好处就来了:
// yum 在redhat是付费服务
1.yum源文件
先进入到yum目录:
我们打开默认生效的Base包
2.光盘搭建yum源
按照上一节的步骤,挂载光盘:
使网络yum源失效:(不一个一个改为enable=0)
使光盘yum源生效:
关于修改yum源为国内的源(类似maven),可以参考:http://blog.csdn.net/inslow/article/details/54177191
3.常用yum命令
查询:
实例:
也可以使用类似 yum list vim*来模糊匹配列表!
但是 yum list 会列出所有的可用列表(上千个),这样都翻不完,于是我们就通过 search 来进行:
安装
//只写包名,无需包全名
我们将后面需要用到的装源码包的C语言编译器安装作为实例:
升级
//但是服务器上若无必要,无需升级
yum -y update 不加包名是升级所有,是包括内核的所有升级,请慎用!(一般情况是禁用!)
卸载
//服务器一般使用最小化安装,按需安装,尽量不卸载(可能会导致依赖失败,导致崩溃)
软件组管理
实例:
当然安装的时候不可能把包写为中文,我们可用切换语言来查看:
切换为中文:(注意编码更改)
LANG=zh_CN.utf8
二、源码包安装
基本上在源码这块很多都是C的思想,我们可以使用gcc这个命令来进行编译-链接-执行的操作
如果没有gcc,可以通过Yum进行安装!
yum -y install gcc
yum -y install gcc-c++
1.源码包和RPM包的区别
源码包和rpm包最大区别:安装位置不同;rpm包不建议指定安装位置,安装目录到处都是;
源码包建议安装目录:/usr/local/软件名,一般来说是通过参数--prefix=PREFIX来指定路径(PREFIX就是路径,例如/usr/local/apache2)
没有卸载命令,直接删除安装目录;
//当然,RPM包是可用指定安装位置的(但会造成系统有时候难以找到文件位置),不建议指定安装位置
所以安装位置到处都是,故RPM给出了卸载命令。
启动:
关于centos7的systemctl的启动方式,参考程序管理相关随笔!
//这里的 /usr 就相当于windows的 program files
源码包一定要指定位置,否则按照RPM的默认安装位置将难以管理,难以卸载(无卸载命令)
启动
因为RPM位置默认,所以可用使用service启动,而源码包不同
2.源码包安装
准备
//安装gcc
源码包如果在windows下载,如何放到linux ,参考WINSCP:https://winscp.net/eng/docs/lang:chs
更推荐xhell的上传方法:http://blog.csdn.net/zengdeqing2012/article/details/47089773
开始
这里通过WINSCP/或者FTP之类的工具,甚至在线下载也是OK的!拖拽过来源码包,直接从解压缩开始
进入目录:通常建议源码包放在/usr/local/src下,而安装则在/usr/local/xxx下!
//这里实例指定安装位置一个选项,具体我们应该查看INSTALL文件!里面会有比较详细的说明!
配置完后开始真正编译安装:
执行后可正确看到 Makefile文件:
makefile文件的详细讲解,推荐:http://blog.csdn.net/liang13664759/article/details/1771246/
真正的执行安装:
如何启动呢?——查看INSTALL文件(或者是README文件):
INSTALL文件有安装说明:
源码包安装过程,参考:http://blog.csdn.net/u014004096/article/details/50500422
若需要升级,请使用patch进行打补丁升级!
启动出错,需要尝试关闭防火墙可用参见:
centos从7开始默认用的是firewalld,这个是基于iptables的,虽然有iptables的核心,但是iptables的服务是没安装的。
所以你只要停止firewalld服务即可: sudo systemctl stop firewalld.service && sudo systemctl disable firewalld.service 搞了半天终于把防火墙关了
三、脚本安装包
所谓的脚本安装包,本质也是安装RPM包和二进制包,不过,通过脚本安装,可以将很多行命令才能安装完成的写成脚本进行安装,
以达到 简化安装,减少错误 的目的
强大的Nginx——为什么强大,它可以支持更大的并发量!(5W VS apache的500)
准备工作
一键安装包网址:https://lnmp.org/
// lnmp1.3以后没有centos.sh这个文件,而是install.sh这个文件
准备工作前两步不再赘述,介绍一下第三步:关闭 SELinux
打开配置文件
禁用并重启电脑
根据上述官网的文档,安装:
wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz && tar zxf lnmp1.4.tar.gz && cd lnmp1.4 && ./install.sh lnmp
也就是下载,解压,执行安装脚本
Linux入门进阶第三天——软件安装管理(下)的更多相关文章
- Linux基础三(软件安装管理)
目录: 一.Linux 中软件包的分类 1.源码包 2.二进制包 3.源码包 4.软件安装的选择 二.软件安装之 RPM 1.背景知识 2.准备知识 3.安装升级与卸载 4.查询校验与提取 三.软件安 ...
- Linux软件安装管理之——dpkg与apt-*详解 apt命令(dpkg和apt代替rpm)
apt list *python* Nosee123关注赞赏支持 Linux软件安装管理之--dpkg与apt-*详解 [Linux软件安装管理系列]- - 传送门: - -<Linux软件 ...
- Linux软件安装管理之——dpkg与apt-*详解
Linux软件安装管理之--dpkg与apt-*详解 [Linux软件安装管理系列]- - 传送门: - -<Linux软件安装管理之--源码安装详解> - -<Linux软件安装管 ...
- Linux 学习 (十一) 软件安装管理
Linux软件安装管理 学习笔记 软件包简介 软件包分类: 源码包 :脚本安装包 二进制包(RPM 包.系统默认包) 源码包的优点: 开源,如果有足够的能力,可以修改源代码 可以自由选择所需的功能 软 ...
- inux软件安装管理之——dpkg与apt-*详解
inux软件安装管理之--dpkg与apt-*详解 Nosee123关注 0.5922017.09.12 17:47:44字数 3,894阅读 8,565 [Linux软件安装管理系列]- - 传送门 ...
- Linux入门进阶第二天——软件安装管理(上)
一.大纲介绍 这里介绍的仅仅是两大家族之一的RPM,关于Debian家族的DPKG,请参考:http://justcoding.iteye.com/blog/1937171 二.简介 软件包分类: 源 ...
- Linux常用的三种软件安装方式
一:Linux源码安装 1.解压源码包文件 源码包通常会使用tar工具归档然后使用gunzip或bzip2进行压缩,后缀格式会分别为.tar.gz与.tar.bz2,分别的解压方式: ...
- Linux第一天 ssh登录和软件安装详解
Linux学习第一天 操作环境: Ubuntu 16.04 Win10系统,使用putty_V0.63 本身学习Linux就是想在服务器上使用的.实际情况,可能我很难直接到坐在服务器前,使用界面操作系 ...
- Linux软件安装管理概述
介绍如何在Linux字符界面下安装软件 课程大纲: 一.软件包管理简介 二.rpm命令管理 三.yum在线管理 四.源码包管理 五.脚本安装包
随机推荐
- Lua操作mysql
require "luasql.mysql" --创建环境对象 env = luasql.mysql() --连接数据库 conn = env:connect("数据库名 ...
- Join的加强版CountDownLatch
CountDownLatch允许一个或多个线程等待其他线程完成操作. 假如有这样一个需求:我们需要解析一个Excel里多个sheet的数据,此时可以考虑使用多线程,每个线程解析一个sheet里的数据, ...
- Linux系统下常用的磁盘管理命令——du / df / fdisk / mount / xxd
之前使用虚拟机体验Linux操作系统的使用,一般使用默认的磁盘分区设置,也很少涉及磁盘管理操作,且总有删除重装作为后盾.在安装Ubuntu双系统后,在使用过程中遇到了磁盘分区不合理导致的/boot分区 ...
- [luogu1979] 华容道
题面 先讲点无关的,这道题是真的恶心... 好了,第一眼看到这道题,肯定是准备暴搜的,但是想了一想,省选难度的题目不可能一上来就让你暴搜吧,于是开启了无穷无尽的分析,我们不妨设指定棋子叫做移动 ...
- [SQL注入] 逗号拦截绕过
在SQL注入时,在确定了注入点后,一般都需要使用联合查询猜表的列数,也就是常见的order by n,n从大到小,直到返回正常,就确定了当前查询的列的个数. 然后再使用 UNION SELECT 1, ...
- browserify文件后函数调用报is not defined的原因
举个例子: a.js ; module.exports.a = a; b.js var result = require('./a'); var getA =() => { console.lo ...
- wfst讲解
一.比较好的博客 1.0 官方网站 1.1 语音识别解码器(1)—自动机与半环 1.2 走进语音识别中的WFST 1.3Kaldi WFST 构图 学习 二.比较好的paper 三.开源项目 3.1 ...
- phantomJS浏览器
无界面浏览器 下载解压缩 http://phantomjs.org/download.html selenium调用 from selenium import webdriver import tim ...
- PHP扩展功能----发送邮件
1.下载PHPMailer源码 github下载 (测试使用的是5.2.2 版本) 2.注册并登录网易邮箱(其他邮箱均可)[用于配置用户名和三方登录授权码,以及发送人邮箱地址] (1)开启POP3协 ...
- ThinkPHP5入门(三)----模型篇
一.操作数据库 1.数据库连接配置 数据库默认的相关配置在项目的application\database.php中已经定义好. 只需要在模块的数据库配置文件中配置好当前模块需要连接的数据库的配置参数即 ...