Linux之LNMP离线安装
创始人
2024-01-22 15:21:38
0

一、需求说明

  LNMP一键安装包对于小型系统部署来说真的是非常方便,日常工作中除了在线安装,也存在部分场景要求离线安装。比如内网专网、严格限制访问外网的网络等,有些院校的实验室就是这种情况,需要使用光盘来完成系统的部署安装。如果是纯粹离线环境我们可以使用光盘刻录大师等工具通过光驱将软件包刻录到光盘中。博文是模拟离线安装方式,将离线安装的软件包通过网络工具上传到服务器上。博文实验环境:

  • 操作系统:centos7.6
  • LNMP版本:1.9
  • MySQL:5.7.38
  • 硬件配置:2c,4G内存

二、LNMP离线安装步骤

1、下载LNMP1.9离线安装包

  官网下载LNMP1.9完整版离线包。
在这里插入图片描述

2、将软件包上传到服务器

  lnmp安装包完整版包含了大部分软件的安装包,但是不包括MySQL5.7和MySQL8的二进制安装包,如果我们需要使用msyql的二进制包安装方式则需要将mysql软件包手动上传到lnmp目录下的src目录下,需要什么版本则上传对应版本的二进制软件包。

[root@s142 opt]# ll
total 1764084
-rw-r–r-- 1 root root 1078271437 Oct 28 11:03 lnmp1.9-full.tar.gz
-rw-r–r-- 1 root root 728148899 Jan 19 2021 mysql-5.7.32-el7-x86_64.tar.gz

3、挂载操作系统镜像软件光盘

  l离线安装不是不需要源,而是需要你在本地搭建一个供安装使用的源。物理机我们可以使用光驱挂载操作系统镜像盘。如果是虚拟机我们可以将系统ISO文件上传到服务器的/root目录,然后将光盘进行挂载。

[root@s142 opt]# mkdir -p /mnt/dvd
[root@s142 opt]# mount /root/CentOS-7-x86_64-DVD-1810.iso /mnt/dvd
mount: /dev/loop0 is write-protected, mounting read-only

4、修改yum配置文件

  因为我们需要使用本地yum源,修改配置文件前我们将所有repo文件进行备份。备份完成后创建一个CentOS-Media.repo配置文件。

[root@s142 yum.repos.d]# mv CentOS-Base.repo CentOS-Base.repo.bak

[root@s142 yum.repos.d]# vim /etc/yum.repos.d/CentOS-Media.repo
#将如下内容写入CentOS-Media.repo文件并保存
[local-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/dvd/
#file:///mnt/dvd2/
#如果有第二张光盘将前面dvd2行前面的 # 注释符号去掉
gpgcheck=0
enabled=1
gpgkey=file:///mnt/dvd/RPM-GPG-KEY-CentOS-7

5、验证yum本地源是否正常

[root@s142 opt]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: local-media
Cleaning up list of fastest mirrors
Other repos take up 151 M of disk space (use --verbose for details)
[root@s142 opt]# yum makecache
Loaded plugins: fastestmirror
Determining fastest mirrors
local-media | 3.6 kB 00:00:00
(1/4): local-media/group_gz | 166 kB 00:00:00
(2/4): local-media/primary_db | 3.1 MB 00:00:00
(3/4): local-media/filelists_db | 3.2 MB 00:00:00
(4/4): local-media/other_db | 1.3 MB 00:00:00
Metadata Cache Created

6、解压LNMP软件包

[root@s142 opt]# tar -zxvf lnmp1.9-full.tar.gz
[root@s142 opt]# cd lnmp1.9-full
[root@s142 lnmp1.9-full]# mv …/mysql-5.7.32-el7-x86_64.tar.gz ./src/

7、检查服务器是否是离线状态

[root@s142 ~]# ping www.baidu.com
ping: www.baidu.com: Name or service not known
[root@s142 ~]# ping 114.114.114.114
PING 114.114.114.114 (114.114.114.114) 56(84) bytes of data.
From 192.168.0.1 icmp_seq=1 Packet filtered
From 192.168.0.1 icmp_seq=2 Packet filtered
From 192.168.0.1 icmp_seq=3 Packet filtered
From 192.168.0.1 icmp_seq=4 Packet filtered
From 192.168.0.1 icmp_seq=5 Packet filtered
^C
— 114.114.114.114 ping statistics —
5 packets transmitted, 0 received, +5 errors, 100% packet loss, time 4000ms

8、修改lnmp.conf配置文件

  VPS或服务器必须设置好可用的yum或apt-get源并确保能正常工作,离线安装需要增加 CheckMirror=n 参数!

[root@s142 lnmp1.9-full]# vim lnmp.conf
#不检查镜像源
CheckMirror=n

9、执行LNMP安装脚本

  安装脚本执行和在线安装是一样的,各选项选择可用参考Linux之LNMP在线安装。

[root@s142 lnmp1.9-full]# ./install.sh lnmp

10、验证安装结果

[root@s142 lnmp1.9-full]# ./install.sh lnmp

nginx (pid 14581) is running…
php-fpm is runing!
SUCCESS! MySQL running (15153)
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:80 :
LISTEN 0 128 :80 :
LISTEN 0 128 :22 :
LISTEN 0 128 :::3306 :::

LISTEN 0 128 :::22 :::

Install lnmp takes 39 minutes.
Install lnmp V1.9 completed! enjoy it.
[root@s142 lnmp1.9-full]# lnmp status
±------------------------------------------+
| Manager for LNMP, Written by Licess |
±------------------------------------------+
| https://lnmp.org |
±------------------------------------------+
nginx (pid 14581) is running…
php-fpm is runing!
SUCCESS! MySQL running (15153)
[root@s142 lnmp1.9-full]#

三、LNMP无人值守安装

1、生成无人值守安装命令

  无人值守安装实际上就是提前将脚本中需要选择的选项提前选择好,然后执行脚本。可以访问官网的无人值守命令生成工具,生成无人值守安装命令。以安装LNMP为例,安装MySQL5.7,源码方式安装,启用innodb引擎,设置root账户密码,安装PHP7.4,不安装内存分配器。点击生成后生成的命令如下。
在这里插入图片描述

2、无人值守在线安装

  我们在可以访问外网的服务器上直接直接如下命令就可以开始安装LNMP相关软件了。

[root@s142 opt]# wget http://soft.vpser.net/lnmp/lnmp1.9.tar.gz -cO lnmp1.9.tar.gz && tar zxf lnmp1.9.tar.gz && cd lnmp1.9 && LNMP_Auto=“y” DBSelect=“4” Bin=“n” DB_Root_Password=“123456” InstallInnodb=“y” PHPSelect=“10” SelectMalloc=“2” CheckMirror=“n” ./install.sh lnmp

3、无人值守离线安装

  如果选择离线安装则生成的命令如下,但是服务器既然已经离线肯定是无法联网下载软件包的,所以实际操作中需要我们离线下载完整安装包。然后将安装参数写入lnmp.conf配置文件,再手动执行下安装命令,此时不会再弹窗选择项,安装脚本按照参数配置直接执行,直至安装完成。

[root@s142 lnmp1.9-full]# cat lnmp.conf
#无人值守安装配置
LNMP_Auto=“y”
DBSelect=“4”
Bin=“n”
DB_Root_Password=“123456”
InstallInnodb=“y”
PHPSelect=“9”
SelectMalloc=“2”
CheckMirror=“n”
[root@s142 lnmp1.9-full]# ./install.sh lnmp

4、无人值守安装参数

变量名变量值含义
LNMP_Auto启用无人值守自动安装
DBSelect数据库版本序号
DB_Root_Password数据库root密码(不可为空),不安装数据库时可不加该参数
InstallInnodb是否安装Innodb引擎,y 或 n ,不安装数据库时可不加该参数
PHPSelectPHP版本序号
SelectMalloc内存分配器版本序号
ApacheSelectApache版本序号,仅LNMPA和LAMP模式需添加该参数
ServerAdmin管理员邮箱,仅LNMPA和LAMP模式需添加该参数

5、版本参数变量值说明

MySQL版本对应序号PHP版本对应序号内存分配器对应序号Apache版本对应序号
Mysql 5.11PHP 5.21不安装1Apache 2.21
Mysql 5.52PHP 5.32Jemalloc2Apache 2.42
Mysql 5.63PHP 5.43TCMalloc3
Mysql 5.74PHP 5.54
Mysql 8.05PHP 5.65
MariaDB 5.56PHP 7.06
MariaDB 10.37PHP 7.17
MariaDB 10.48PHP 7.28
MariaDB 10.59PHP 7.39
MariaDB 10.610PHP 7.410
不安装数据库0PHP 8.011
PHP 8.112

四、QA

  离线安装环境下安装NGINX、mysql都是OK的,安装PHP7.4以上版本都失败了,安装7.3.33是成功的。初步判断是PHP7.4以上依赖的软件包,centos7.6版本不满足要求。欢迎知道详细原因的网友评论留言分享,谢谢!

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...