Linux基础---08软件的安装

安装方式 优缺点
编译安装 自由定制,但较为繁琐
rmp安装 安装简单,但需要自己解决依赖,不支持定制
yum安装 自动解决rmp依赖,但不支持定制(用的更多)

下面就具体介绍三大安装方式:

一.编译安装

用Linux系统演示一下在浏览器上访问Nginx过程,以便大家能比较清晰地看到整个编译安装的过程。

1. 下载解压软件包:

1)下载命令:

bash 复制代码
curl -o nginx.tar.gz   http://nginx.org/download/nginx-1.20.1.tar.gz

2)解压命令:

bash 复制代码
tar -zxf nginx.tar.gz

2.编译安装

1)配置编译参数

  • 先进入到解压后的文件夹里(后几步也都在此文件夹里输入命令):
bash 复制代码
cd nginx-1.20.1
  • 再配置编译参数,目的是生成Makefileobjs文件:
bash 复制代码
./configure --prefix=/usr/local/nginx --without-pcre --without-http_rewrite_module --without-http_gzip_module

./ : 利用相对路径来执行configure文件

prefix=/usr/local/nginx :指定软件的安转目录

without :去掉某个功能

执行此指令之后,会自动检查各种依赖环境是否满足软件运行的条件,检查通过就会生成Makefileobjs 文件。

2)编译--make

编译非常简单,直接输入make即可。但需要注意的是当前执行make指令的目录是刚刚我们配置编译参数的文件里,也就是有Makefile的文件。因为执行make指令,其目的是要Makefile。输入以下命令,检查是否编译完成:

bash 复制代码
./objs/nginx -v

返回版本号,即可编译完成。

3)安装--make install

安装也非常简单,输入make install即可。顺便也贴一个能更直观查看目录结构的工具---tree

bash 复制代码
yum install tree -y

安装后,查看目录效果如下:

4)运行

  • 通过tree工具,我们可以清除的看到nginx在sbin目录下。因此运行命令很简单,直接输入目录地址即可运行(没有安装tree工具也能运行)。
bash 复制代码
/usr/local/nginx/sbin/nginx
  • 输入后没有返回值是正常的。现在可以通过浏览器访问我们的nginx了,但是访问之前需要关闭防火墙。输入以下两条命令关闭:
bash 复制代码
systemctl stop firewalld
bash 复制代码
systemctl disable firewalld
  • 最后我们在浏览器上直接输入我们的ip地址即可访问成功:

若关闭之后网络依旧访问失败,那就需要手动关闭物理机的防火墙:

5)打包

打包就是为了让别人可以直接使用我们编译好的文件,只需要运行即可使用。根本就是先压缩编译好的文件再使用scp工具传输到另外一台Linux上。

二.rpm安装

  • 安装rpm包:rpm -i+xxx.rpm
  • 安装rpm包并显示进度条:rpm -ivh+xxx.rpm
  • 卸载:rpm -e+xxx.rpm
  • 升级:rpm -Uvh +xxx.rpm
  • 查看已安装的软件:rpm -qa|grep httpd

三.yum安装

  • yum安装扩展yum仓库:
bash 复制代码
yum install epel-release -y
  • yum安装nginx:
bash 复制代码
yum install nginx -y
  • yum移除nginx:
bash 复制代码
yum remove nginx -y
  • 查看仓库rpm数据:
bash 复制代码
yum repolist

四.yum仓库(镜像站)

查看yum仓库的路径:

bash 复制代码
ls /etc/yum.repos.d/

坚持日更,不断学习...

相关推荐
CoolTiger、32 分钟前
【Vmware16安装教程】
linux·虚拟机·vmware16
m0_741768851 小时前
使用docker的小例子
运维·docker·容器
学习3人组1 小时前
CentOS 中配置 OpenJDK以及多版本管理
linux·运维·centos
厨 神2 小时前
vmware中的ubuntu系统扩容分区
linux·运维·ubuntu
Karoku0662 小时前
【网站架构部署与优化】web服务与http协议
linux·运维·服务器·数据库·http·架构
geek_Chen012 小时前
虚拟机共享文件夹开启后mnt/hgfs/下无sharefiles? --已解决
linux·运维·服务器
(⊙o⊙)~哦3 小时前
linux 解压缩
linux·运维·服务器
牧小七4 小时前
Linux命令---查看端口是否被占用
linux
最新小梦4 小时前
Docker日志管理
运维·docker·容器
鸡鸭扣5 小时前
虚拟机:3、(待更)WSL2安装Ubuntu系统+实现GPU直通
linux·运维·ubuntu