因为Linux下软件安装的方式很多,没有一个通用的方式查看软件包是否安装,所以总结下来就是这几类。
- rpm包安装的,可以用 rpm -qa 看到,如果要查找某软件包是否安装,用 rpm -qa | grep “软件或者包的名字”
- 以deb包安装的,可以用 dpkg -l 看到。如果是查找指定软件包,用 dpkg -l | grep “软件或者包的名字”
- yum方法安装的,可以用 yum list installed 查找,如果是查找指定包,用 yum list installed | grep “软件名或者包名”
- 如果是以源码包自己编译安装的,例如.tar.gz或者tar.bz2形式的,这个只能看可执行文件是否存在了。
一、安装依赖包
1、gcc安装
安装nginx需要将nginx的源码进行编译,编译依赖gcc环境,所以需要安装gcc,指令:
yum install gcc-c++
2、 pcre pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库,指令:
yum install -y pcre pcre-devel
3、 zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库,指令:
yum install -y zlib zlib-devel
4、 openSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库,指令:
yum install -y openssl openssl-devel
注:一键安装上面四个依赖
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
二、创建文件夹
cd /usr/local
mkdir nginx
cd nginx
三、下载tar包
进入刚刚创建的文件夹nginx里面:cd /usr/local/nginx
wget http://nginx.org/download/nginx-1.19.7.tar.gz
解压:
tar -zvxf nginx-1.19.7.tar.gz
四、安装nginx
源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)。
执行这几个命令时一定要到解压后的nginx文件夹下执行
1、进入nginx目录
cd /usr/local/nginx
2、进入目录
cd nginx-1.19.7
3、执行./configure命令,./configure
是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。
./configure
4、执行make命令,make 是用来编译的,它从Makefile中读取指令,然后编译。
make
5、执行make install命令。make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。
make install
五、配置nginx.conf
// 打开配置文件
vi /usr/local/nginx/conf/nginx.conf
安装完成一般常用命令
进入安装目录中,
命令: cd /usr/local/nginx/sbin
启动,关闭,重启,命令:
./nginx 启动
./nginx -s stop 关闭
./nginx -s reload 重启
查看nginx进程是否启动:
ps -ef | grep nginx
启动成功后直接浏览器访问就可以看到这个了,比如我这边是http://192.168.15.11:80,如果访问不了,有可能你使用的80端口没有开放,被防火墙当住了,解决方法查看Liunx开放端口
开机自启动
即在rc.local增加启动代码就可以了。
vi /etc/rc.local
增加一行 /usr/local/nginx/sbin/nginx
设置执行权限:
chmod 755 rc.local
六、卸载Nginx
1、find查找相关文件 find / -name nginx
依次删除find查找到的所有目录:rm -rf /usr/local/nginx
2、再使用yum清理 yum remove nginx
[root@localhost /]# yum remove nginx
依赖关系解决
======================================================================================================
Package 架构 版本 源 大小
======================================================================================================
正在删除:
nginx x86_64 1:1.12.2-3.el7 @epel 1.5 M
为依赖而移除:
nginx-all-modules noarch 1:1.12.2-3.el7 @epel 0.0
nginx-mod-http-geoip x86_64 1:1.12.2-3.el7 @epel 21 k
nginx-mod-http-image-filter x86_64 1:1.12.2-3.el7 @epel 24 k
nginx-mod-http-perl x86_64 1:1.12.2-3.el7 @epel 54 k
nginx-mod-http-xslt-filter x86_64 1:1.12.2-3.el7 @epel 24 k
nginx-mod-mail x86_64 1:1.12.2-3.el7 @epel 99 k
nginx-mod-stream x86_64 1:1.12.2-3.el7 @epel 157 k
事务概要
======================================================================================================
移除 1 软件包 (+7 依赖软件包)
安装大小:1.9 M
是否继续?[y/N]: