使用shell脚本安装lnmp的方法步骤

以下是关于“使用Shell脚本安装LNMP的方法步骤”的完整攻略,其中包含两个示例说明。

1. 前言

LNMP是一种常用的Web服务器架构,包括Linux、Nginx、MySQL和PHP。本攻略将介绍使用Shell脚本安装LNMP的方法步骤,包括安装Nginx、MySQL和PHP等,并提供两个示例说明。

2. 安装Nginx

以下是安装Nginx的步骤:

  1. 下载Nginx源码包:

bash
wget http://nginx.org/download/nginx-1.18.0.tar.gz

  1. 解压源码包:

bash
tar -zxvf nginx-1.18.0.tar.gz

  1. 进入解压后的目录:

bash
cd nginx-1.18.0

  1. 配置编译选项:

bash
./configure --prefix=/usr/local/nginx --with-http_ssl_module

  1. 编译并安装:

bash
make && make install

  1. 启动Nginx:

bash
/usr/local/nginx/sbin/nginx

  1. 验证Nginx是否安装成功:

在浏览器中输入服务器IP地址,如果出现“Welcome to nginx!”的页面,则表示Nginx安装成功。

3. 安装MySQL

以下是安装MySQL的步骤:

  1. 下载MySQL源码包:

bash
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.25.tar.gz

  1. 解压源码包:

bash
tar -zxvf mysql-8.0.25.tar.gz

  1. 进入解压后的目录:

bash
cd mysql-8.0.25

  1. 配置编译选项:

bash
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DMYSQL_TCP_PORT=3306 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci

  1. 编译并安装:

bash
make && make install

  1. 初始化MySQL:

bash
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

  1. 启动MySQL:

bash
/usr/local/mysql/bin/mysqld_safe --user=mysql &

  1. 验证MySQL是否安装成功:

bash
/usr/local/mysql/bin/mysql -uroot -p

如果成功登录MySQL,则表示MySQL安装成功。

4. 安装PHP

以下是安装PHP的步骤:

  1. 下载PHP源码包:

bash
wget https://www.php.net/distributions/php-7.4.20.tar.gz

  1. 解压源码包:

bash
tar -zxvf php-7.4.20.tar.gz

  1. 进入解压后的目录:

bash
cd php-7.4.20

  1. 配置编译选项:

bash
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype --with-jpeg --with-png --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-cdb --with-mcrypt --with-openssl --with-mhash --enable-mbregex --enable-mbstring --with-pic --enable-gd --with-xpm-dir --with-webp-dir --with-gettext --enable-zip --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-opcache --enable-maintainer-zts --with-pear

  1. 编译并安装:

bash
make && make install

  1. 配置PHP:

bash
cp php.ini-development /usr/local/php/etc/php.ini

  1. 启动PHP-FPM:

bash
/usr/local/php/sbin/php-fpm

  1. 验证PHP是否安装成功:

在Nginx的配置文件中添加以下内容:

nginx
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
include fastcgi_params;
}

然后在/usr/local/nginx/html目录下创建一个名为index.php的文件,内容如下:

```php

```

在浏览器中输入服务器IP地址,如果出现PHP信息页面,则表示PHP安装成功。

5. 示例说明

以下是两个使用Shell脚本安装LNMP的示例:

5.1 示例一:安装LNMP

以下是一个安装LNMP的示例:

#!/bin/bash

# 安装Nginx
wget http://nginx.org/download/nginx-1.18.0.tar.gz
tar -zxvf nginx-1.18.0.tar.gz
cd nginx-1.18.0
./configure --prefix=/usr/local/nginx --with-http_ssl_module
make && make install

# 安装MySQL
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.25.tar.gz
tar -zxvf mysql-8.0.25.tar.gz
cd mysql-8.0.25
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DMYSQL_TCP_PORT=3306 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci
make && make install
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
/usr/local/mysql/bin/mysqld_safe --user=mysql &

# 安装PHP
wget https://www.php.net/distributions/php-7.4.20.tar.gz
tar -zxvf php-7.4.20.tar.gz
cd php-7.4.20
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype --with-jpeg --with-png --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-cdb --with-mcrypt --with-openssl --with-mhash --enable-mbregex --enable-mbstring --with-pic --enable-gd --with-xpm-dir --with-webp-dir --with-gettext --enable-zip --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-opcache --enable-maintainer-zts --with-pear
make && make install
cp php.ini-development /usr/local/php/etc/php.ini
/usr/local/php/sbin/php-fpm

在本示例中,我们使用Shell脚本安装了LNMP。

5.2 示例二:安装LNMP(使用Docker)

以下是一个使用Docker安装LNMP的示例:

#!/bin/bash

# 安装Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

# 安装Nginx
docker run -d --name nginx -p 80:80 nginx

# 安装MySQL
docker run -d --name mysql -e MYSQL_ROOT_PASSWORD=123456 mysql

# 安装PHP
docker run -d --name php --link mysql:mysql -p 9000:9000 -v /usr/local/nginx/html:/var/www/html php:fpm

在本示例中,我们使用Docker安装了LNMP。

6. 总结

本攻略介绍了使用Shell脚本安装LNMP的方法步骤,包括安装Nginx、MySQL和PHP等,并提供了两个示例说明。学习本攻略,可以更好地掌握使用Shell脚本安装LNMP的方法步骤,提高工作效率。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用shell脚本安装lnmp的方法步骤 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Shell 参数传递的使用方法

    以下是关于“Shell 参数传递的使用方法”的完整攻略,其中包含两个示例说明。 1. 前言 Shell脚本中的参数传递用于将命令行参数传递给Shell脚本。本攻略将介绍如何在Shell脚本中使用参数传递,帮助你更好地掌握Shell脚本编程。 2. Shell脚本中的参数传递 在Shell脚本中,我们可以使用$0、$1、$2、$3等变量来获取命令行参数。其中,…

    Shell 2023年5月16日
    00
  • 如何写出安全的、基本功能完善的Bash脚本

    以下是关于“如何写出安全的、基本功能完善的Bash脚本”的完整攻略,其中包含两个示例说明。 1. 前言 Bash脚本是Linux系统中非常常用的一种脚本语言,可以用于自动化各种任务。然而,编写Bash脚本时,需要注意安全性和基本功能的完善。本攻略将介绍如何编写安全的、基本功能完善的Bash脚本,并提供两个示例说明。 2. 编写安全的、基本功能完善的Bash脚…

    Shell 2023年5月16日
    00
  • Linux Shell字符串变量拼接与赋值的使用

    以下是关于“Linux Shell字符串变量拼接与赋值的使用”的完整攻略,其中包含两个示例说明。 1. 前言 在Linux Shell编程中,字符串变量拼接和赋值是非常常见的操作。本攻略将详细讲解Linux Shell中字符串变量拼接和赋值的用法,帮助读者更好地掌握Shell编程技能。 2. 字符串变量拼接 在Linux Shell中,可以使用+或.符号将两…

    Shell 2023年5月16日
    00
  • Shell执行脚本并输出日志文件的方法

    以下是关于“Shell执行脚本并输出日志文件的方法”的完整攻略,其中包含两个示例说明。 1. 前言 在Linux系统中,我们经常需要执行一些脚本来完成一些任务。为了方便调试和排错,我们通常需要将脚本执行的过程和结果输出到日志文件中。本攻略将介绍如何在Shell中执行脚本并输出日志文件。 2. 执行脚本并输出日志文件 在Shell中,我们可以使用exec命令执…

    Shell 2023年5月16日
    00
  • linux shell脚本学习xargs命令使用详解

    以下是关于“Linux Shell脚本学习xargs命令使用详解”的完整攻略,其中包含两个示例说明。 1. xargs命令简介 xargs命令是Linux系统中的一个非常有用的命令,它可以将标准输入转换为命令行参数,从而实现对命令的批量处理。xargs命令的基本语法如下: command | xargs [options] [command] 其中,comm…

    Shell 2023年5月16日
    00
  • Shell脚本实现自动输入密码登录服务器

    以下是关于“Shell脚本实现自动输入密码登录服务器”的完整攻略,其中包含两个示例说明。 1. 前言 在日常工作中,我们经常需要登录到远程服务器进行操作。如果服务器的密码比较复杂,每次登录都需要手动输入密码,会浪费很多时间。本攻略将详细讲解如何使用Shell脚本实现自动输入密码登录服务器,提高工作效率。 2. 实现自动输入密码登录服务器的方法 实现自动输入密…

    Shell 2023年5月16日
    00
  • bash shell和dash shell的区别详解

    以下是关于“bash shell和dash shell的区别详解”的完整攻略,其中包含两个示例说明。 1. bash shell和dash shell的区别 bash shell和dash shell都是Linux系统中常用的Shell解释器,它们都可以用于执行Shell脚本。但是,它们之间存在一些区别,主要包括以下几个方面: 1.1 速度 dash she…

    Shell 2023年5月16日
    00
  • 一天一个shell命令 linux文本操作系列-wc命令详解

    以下是关于“一天一个shell命令 linux文本操作系列-wc命令详解”的完整攻略,其中包含两个示例说明。 1. 前言 在Linux系统中,文本操作是一项非常重要的工作。wc命令是Linux系统中常用的文本操作命令之一,可以用于统计文件中的行数、单词数和字符数等信息。本攻略将详细讲解wc命令的用法和参数,帮助读者更好地掌握文本操作技能。 2. wc命令的用…

    Shell 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部