编译安装LNMP然后安装zabbix

1.准备一台纯净的linux7
2.脚本一键安装nginx
#!/bin/bash

#解决软件的依赖关系,需要安装的软件包
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel gcc gcc-c++ autoconf automake make psmisc net-tools lsof vim

#新建luogan用户和组
id tanxin || useradd tanxin -s /sbin/nologin

#下载nginx软件
mkdir /nginx8 -p
cd /nginx8
curl -O http://nginx.org/download/nginx-1.20.0.tar.gz

#解压软件
tar xf nginx-1.20.0.tar.gz
#进入解压后的文件夹
cd nginx-1.20.0

#编译前的配置
./configure --prefix=/usr/local/scnginx8 --user=tanxin --group=tanxin --with-http_ssl_module --with-threads --with-http_v2_module --with-http_stub_status_module --with-stream

#如果上面的编译前的配置失败,直接退出脚本
if (( $? != 0));then
exit
fi
#编译
make -j 2
#编译安装
make install

#修改PATH变量
echo “PATH=$PATH:/usr/local/scnginx8/sbin” >>/root/.bashrc
#执行修改了环境变量的脚本
source /root/.bashrc

#firewalld and selinux

#stop firewall和设置下次开机不启动firewalld
service firewalld stop
systemctl disable firewalld

#临时停止selinux和永久停止selinux
setenforce 0
sed -i ‘/^SELINUX=/ s/enforcing/disabled/’ /etc/selinux/config

#开机启动
chmod +x /etc/rc.d/rc.local
echo “/usr/local/scnginx8/sbin/nginx” >>/etc/rc.local

#修改nginx.conf的配置,例如:端口号,worker进程数,线程数,服务域名

sed -i ‘/worker_processes/ s/1/2/’ /usr/local/scnginx8/conf/nginx.conf
sed -i ‘/worker_connections/ s/1024/2048/’ /usr/local/scnginx8/conf/nginx.conf
sed -i -r ‘36c \tlisten 8080;’ /usr/local/scnginx8/conf/nginx.conf
sed -i -r ‘37c \tserver_name www.tanxin.com;’ /usr/local/scnginx8/conf/nginx.conf

#killall nginx进程
killall -9 nginx

#启动nginx
/usr/local/scnginx8/sbin/nginx
3.编译安装mysql,使用脚本安装

#!/bin/bash

#解决软件的依赖关系
yum install cmake ncurses-devel gcc gcc-c++ vim lsof bzip2 openssl-devel ncurses-compat-libs -y

#解压mysql二进制安装包
tar xf mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz

#移动mysql解压后的文件到/usr/local下改名叫mysql
mv mysql-5.7.33-linux-glibc2.12-x86_64 /usr/local/mysql

#新建组和用户 mysql
groupadd mysql
#mysql这个用户的shell 是/bin/false 属于mysql组
useradd -r -g mysql -s /bin/false mysql

#关闭firewalld防火墙服务,并且设置开机不要启动
service firewalld stop
systemctl disable firewalld

#临时关闭selinux
setenforce 0
#永久关闭selinux
sed -i ‘/^SELINUX=/ s/enforcing/disabled/’ /etc/selinux/config

#新建存放数据的目录
mkdir /data/mysql -p
#修改/data/mysql目录的权限归mysql用户和mysql组所有,这样mysql用户可以对这个文件夹进行读写了
chown mysql:mysql /data/mysql/
#只是允许mysql这个用户和mysql组可以访问,其他人都不能访问
chmod 750 /data/mysql/

#进入/usr/local/mysql/bin目录
cd /usr/local/mysql/bin/

#初始化mysql
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysql &>passwd.txt

#让mysql支持ssl方式登录的设置
./mysql_ssl_rsa_setup --datadir=/data/mysql/

#获得临时密码
tem_passwd=$(cat passwd.txt |grep “temporary”|awk '{print KaTeX parse error: Expected 'EOF', got '}' at position 3: NF}̲') #NF表示最后一个字段

abc=$(命令) 优先执行命令,然后将结果赋值给abc

#修改PATH变量,加入mysql bin目录的路径
#临时修改PATH变量的值
export PATH=/usr/local/mysql/bin/:KaTeX parse error: Expected 'EOF', got '#' at position 6: PATH #̲重新启动linux系统后也生效…PATH’ >>/root/.bashrc

#复制support-files里的mysql.server文件到/etc/init.d/目录下叫mysqld
cp …/support-files/mysql.server /etc/init.d/mysqld

#修改/etc/init.d/mysqld脚本文件里的datadir目录的值
sed -i ‘70c datadir=/data/mysql’ /etc/init.d/mysqld

#生成/etc/my.cnf配置文件
cat >/etc/my.cnf <<EOF
[mysqld_safe]

[client]
socket=/data/mysql/mysql.sock

[mysqld]
socket=/data/mysql/mysql.sock
port = 3306
open_files_limit = 8192
innodb_buffer_pool_size = 512M
character-set-server=utf8

[mysql]
auto-rehash
prompt=\u@\d \R:\m mysql>
EOF

#启动mysqld进程
service mysqld start

#将mysqld添加到linux系统里服务管理名单里
/sbin/chkconfig --add mysqld
#设置mysqld服务开机启动
/sbin/chkconfig mysqld on

#初次修改密码需要使用–connect-expired-password 选项
#-e 后面接的表示是在mysql里需要执行命令 execute 执行
#set password=‘Sanchuang123#’; 修改root用户的密码为Sanchuang123#
mysql -uroot -p$tem_passwd --connect-expired-password -e “set password=‘Sanchuang123#’;”

#检验上一步修改密码是否成功,如果有输出能看到mysql里的数据库,说明成功。
mysql -uroot -p’Sanchuang123#’ -e “show databases;”
4.关闭相关服务
service firewalld stop
systemctl disable firewalld
setenforce 0
getenforce --查看selinux状态
5.安装php和python
a.安装php,使用脚本
#!/bin/bash
curl -O https://www.php.net/distributions/php-8.0.9.tar.gz
#安装依赖
yum install gcc gcc-c++ libxml2 libxml2-devel sqlite sqplite-devel epel-release oniguruma oniguruma-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel curl-devel -y
#解压
tar -xf php-8.0.9.tar.gz
#进入解压后的目录
cd php-8.0.9
#修改配置
./configure --prefix=/usr/local/php7.4.5 --enable-fpm --enable- mbstring --enable-soap --with-curl --with-zlib --with-gd --with-pdo-sqlite --with-pdo-mysql --with-mysqli --with-mysql-sock --enable-mysqlnd --disable- rpath --enable- inline-optimization --with-bz2 --with-zlib – enable-sockets --enable-sysvsem --enable- sysvshm --enable-pcntl – enable-mbregex --enable-exif --enable- bcmath --with-mhash --enable-ftp --with- kerberos --with- xmlrpc --with- fpm-user=lihu --disable- fileinfo
#编译
make -j 4
#安装
make install
#新建配置
cd /usr/local/php8.0.9/
cp php-fpm.conf.default php-fpm.conf
cd php-fpm.d
cp www.conf.default www.conf
#开机启动
echo “/usr/local/php8.0.9/sbin/php-fpm” >>/etc/rc/local
chmod +x /etc/rc.d/rc.local
#修改环境变量
echo “PATH=$PATH:/usr/local/php8.0.9/sbin” >>/etc/profile

#启动php-fpm
PATH=KaTeX parse error: Expected 'EOF', got '#' at position 55: …*6**. 安装python #̲!/bin/bash #下载p…PATH:/usr/local/python3" >>/etc/profile
PATH=$PATH:/usr/local/python3
6.安装zabbix–建议rpm包安装
下载步骤:https://www.zabbix.com/download

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值