基础shell编程-安装Nginx

概念

shell编程主要将用户手工操作的单个或多个Linux指令,按照一定的逻辑关系执行,将重复的繁琐的工作简单化、流程化、自动化

1.基础编程:

echo $SHEL

用来查看机器用的是哪种SHELL程序类型

2.安装ksh

yum install -y ksh

3.查看文件安装位置

rpm -ql ksh
whereis ksh
which ksh

 4.查系统版本情况

cat /etc/openEuler-release

5.查看包的版本信息

[root@localhost ~]# rpm -qa | grep ksh
ksh-2020.0.0-11.oe2203sp4.x86_64

6切换shell解释器

[root@localhost ~]# ksh
# df -h
文件系统        容量  已用  可用 已用% 挂载点
devtmpfs        4.0M     0  4.0M    0% /dev
tmpfs           1.7G     0  1.7G    0% /dev/shm
tmpfs           676M   17M  659M    3% /run
tmpfs           4.0M     0  4.0M    0% /sys/fs/cgroup
/dev/sda3        25G  3.4G   21G   15% /
tmpfs           1.7G     0  1.7G    0% /tmp
/dev/sda1       770M  204M  511M   29% /boot
# bash


Welcome to 5.10.0-221.0.0.120.oe2203sp4.x86_64

 7.1打印hello,world

[root@localhost ~]# echo "hello,world"
hello,world
[root@localhost ~]# touch print_hello.sh   #创建print_hello.sh文件
[root@localhost 20240814]# vim print_hell.sh

 7.2查看创建文件权限,并添加执行权限执行文件操作

[root@localhost 20240814]# ls -l print_hell.sh 
-rw-r--r-- 1 root root 119  8月 15 12:33 print_hell.sh
[root@localhost 20240814]# chmod +x print_hell.sh 
[root@localhost 20240814]# ls -l print_hell.sh 
-rwxr-xr-x 1 root root 119  8月 15 12:33 print_hell.sh
[root@localhost 20240814]# ./print_hell.sh 
hello world.

 8.开发自动部署Nginx一键部署脚本

步骤1.从Nginx官网下载软件包nginx-1.26.1.tar.gz(-c  continue断点续传,-P path指定下载存储的目录);

wget -c http://nginx.org/download/nginx-1.26.1.tar.gz -P /usr/src/

步骤2.切换至/usr/src目录;

cd /usr/src/

ls -l nginx-1.26.1.tar.gz

步骤3.通过tar工具对其解压(-x extract解压,-z gzip压缩格式,-v verbose 详细显示,-f file文件属性);

tar -xzvf nginx-1.26.1.tar.gz

步骤4.切换至Nginx源代码目录;

cd nginx-1.26.1/

提前创建www用户和组,安装依赖包、库文件(-s,shell指定解释器类型,-M 不为其创建家目录);

useradd -s /sbin/nologin www -M

yum install -y gcc pcre-devel zlib-devel openssl-devel

步骤5.预编译(--prefix指定安装路径,--user|group指定用户和组,--with-http_stub_status_module开启状态监控模块);

./configure --prefix=/usr/local/nginx/ --user=www --group=www --with-http_stub_status_module

主要是检测Linux系统安装该软件所需的依赖环境/库文件,检测linux系统是否存在C编译器(GCC),指定软件服务部署的路径,自定义软件服务特定的参数、模块,最终会产生Makefile文件

步骤6.编译(-j4 开启4个线程并行执行)

make -j4 install

主要是通过make编译工具去读取第一步预编译产生的Makefile文件,调用Linux系统GCC编译器,将源代码文件编译生成二进制文件,其中Makefile文件用途告知make工具再编译源代码文件时从哪个源码文件开始编译至哪个源码文件结束编译。

步骤7.安装

make -j4

主要是讲第二步make编译产生的二进制文件,拷贝或者安装至Linux系统指定的安装目录--prefix=/usr/local/nginx/。

步骤8.启动Nginx进程;

/usr/local/nginx/sbin/nginx

步骤9.Nginx进程状态;

ps -ef | grep nginx

步骤10.Firewalld防火墙对外开放80duankou ;

firewall-cmd --add-port=80/tcp --permanent

或者关闭防火墙:systemctl reload firewalld.service

[root@localhost 20240814]# #yum install -y lrzsz
[root@localhost 20240814]# #sz auto_install_nginx_v1.sh 将文件下载至桌面
[root@localhost 20240814]# #rz -y 可以将系统文件上传至服务器
[root@localhost 20240814]# touch auto_install_nginx_v1.sh
[root@localhost 20240814]# vim auto_install_nginx_v1.sh
#!/bin/bash
#2024年8月14日21:06:20
#auto install nginx web
#by author www.jfedu.net
#######################
#从Nginx官网下载软件包;
wget -c http://nginx.org/download/nginx-1.26.1.tar.gz -P /usr/src/
#Cd切换至/usr/src/;
cd /usr/src/;
ls -l nginx-1.26.1.tar.gz
#通过Tar工具对其解压;
tar -xzvf nginx-1.26.1.tar.gz
#Cd切换至Nginx源代码目录;
cd nginx-1.26.1/
#创建www用户和组,解决依赖环境、库文件;
useradd -s /sbin/nologin www -M
yum install -y pcre-devel zlib-devel openssl-devel
#预编译;
./configure --prefix=/usr/local/nginx/ --user=www --group=www --with-http_stub_status_module
#编译;
make -j4
#安装;
make -j4 install
#查看Nginx软件服务是否部署成功;
ls -l /usr/local/nginx/
#启动Nginx服务进程;
/usr/local/nginx/sbin/nginx
#查看Nginx进程状态;
ps -ef|grep nginx
#关闭Firewalld防火墙;
systemctl stop firewalld.service

 

#!/bin/bash
#2024年8月14日21:06:20
#auto install nginx web
#by author www.jfedu.net
########################
NGX_VER="1.26.1"
NGX_SRC="/usr/src/"
NGX_DIR="/usr/local/nginx"
NGX_SOFT="nginx-${NGX_VER}.tar.gz"
NGX_URL="http://nginx.org/download"
NGX_ARGS="--user=www --group=www --with-http_stub_status_module"
#从Nginx官网下载软件包;
wget -c $NGX_URL/$NGX_SOFT -P $NGX_SRC
#Cd切换至/usr/src/;
cd $NGX_SRC
ls -l $NGX_SOFT
#通过Tar工具对其解压;
tar -xzvf $NGX_SOFT
#Cd切换至Nginx源代码目录;
cd nginx-$NGX_VER/
#创建www用户和组,解决依赖环境、库文件;
useradd -s /sbin/nologin www -M
yum install -y pcre-devel zlib-devel openssl-devel
#预编译;
./configure --prefix=$NGX_DIR/ $NGX_ARGS
#编译;
make -j4
#安装;
make -j4 install
#查看Nginx软件服务是否部署成功;
ls -l $NGX_DIR/
#启动Nginx服务进程;
$NGX_DIR/sbin/nginx
#查看Nginx进程状态;
ps -ef|grep nginx
#关闭Firewalld防火墙;
systemctl stop firewalld.service

 后执行sh auto_install_nginx_v1.sh

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值