首页 > 编程语言 >源码包的部署

源码包的部署

时间:2024-01-24 12:57:27浏览次数:39  
标签:部署 0.0 nginx 源码 usr ext2fs include root

例:安装nginx

1、解压nginx

[root@fishman-160 ~]# tar -zxvf nginx-1.25.1.tar.gz 

2、编译

[root@fishman-160 nginx-1.25.1]# ./configure --prefix=/usr/local/nginx #prefiex 指定安装路径
checking for OS
 + Linux 4.18.0-500.el8.x86_64 x86_64
checking for C compiler ... found
 + using GNU C compiler
 + gcc version: 8.5.0 20210514 (Red Hat 8.5.0-20) (GCC) 
 .....
 
 --enable--ssl 开启
 --disable --filter 关闭
 --with-http_ssl_module 关联

编译报错的话需要清理

[root@fishman-160 nginx-1.25.1]# make clean
rm -rf Makefile objs

把源码文件编译成可执行的二进制

[root@fishman-160 nginx-1.25.1]# make -j4 #j4就是4线程

image-20230725153730926

3、安装

root@fishman-160 nginx-1.25.1]# make install #安装
make -f objs/Makefile install
make[1]: 进入目录“/root/nginx-1.25.1”
......
[root@fishman-160 sbin]# ls
nginx
[root@fishman-160 sbin]# ./nginx 启动nginx
[root@fishman-160 sbin]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      10934/nginx: master 
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      1542/dnsmasq        
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1007/sshd           
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1012/cupsd          
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      5751/sshd: root@pts 
tcp        0      0 127.0.0.1:6011          0.0.0.0:*               LISTEN      8144/sshd: root@pts 
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::22                   :::*                    LISTEN      1007/sshd           
tcp6       0      0 ::1:631                 :::*                    LISTEN      1012/cupsd          
tcp6       0      0 ::1:6010                :::*                    LISTEN      5751/sshd: root@pts 
tcp6       0      0 ::1:6011                :::*                    LISTEN      8144/sshd: root@pts 
​

4、卸载

[root@fishman-160 local]# ls
bin  etc  games  include  lib  lib64  libexec  nginx  sbin  share  src
[root@fishman-160 local]# rm -rf nginx  #prefix指定了安装目录,递归删除就可以
[root@fishman-160 local]# ls
bin  etc  games  include  lib  lib64  libexec  sbin  share  src

5、扩展

安装时显示库已经安装,但是configure时又说找不到。怎么办?

解决:安装了库,显示找不到。这种情况下,需要安装库的开发文件

[root@fishman-160 Packages]# rpm -qpl e2fsprogs-devel-1.42.9-19.el7.x86_64.rpm 
警告:e2fsprogs-devel-1.42.9-19.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
/usr/include/e2p
/usr/include/e2p/e2p.h
/usr/include/ext2fs
/usr/include/ext2fs/bitops.h  #.h的文件都是头文件,有了这些.h的头文件,才能找到对应的库文件。所以库文件和devel开发包都需要安装
/usr/include/ext2fs/ext2_err.h
/usr/include/ext2fs/ext2_ext_attr.h
/usr/include/ext2fs/ext2_fs.h
/usr/include/ext2fs/ext2_io.h
/usr/include/ext2fs/ext2_types-x86_64.h
/usr/include/ext2fs/ext2_types.h
/usr/include/ext2fs/ext2fs.h
/usr/include/ext2fs/ext3_extents.h
/usr/include/ext2fs/qcow2.h
/usr/include/ext2fs/tdb.h

6、集成到systemd

  1. 创建一个 systemd 服务文件

    /lib/systemd/system/ 目录中创建一个新的 systemd 服务文件,例如 nginx.service,并使用 root 权限编辑它:

    sudo vim /lib/systemd/system/nginx.service

    在这个文件中,添加以下内容:

    [Unit]
    Description=The NGINX HTTP and reverse proxy server
    After=network.target remote-fs.target nss-lookup.target
    
    [Service]
    Type=forking
    ExecStart=/usr/local/nginx/sbin/nginx
    ExecReload=/usr/local/nginx/sbin/nginx -s reload
    ExecStop=/usr/local/nginx/sbin/nginx -s quit
    PrivateTmp=true
    
    [Install]
    WantedBy=multi-user.target

    请确保 ExecStartExecReloadExecStop 的路径正确指向你通过源码编译安装的 Nginx 二进制文件。

  2. 重新加载 systemd 配置

    使用以下命令重新加载 systemd 配置,以便它可以识别新的服务文件:

    sudo systemctl daemon-reload
  3. 启动 Nginx 服务

    现在你可以使用 systemctl 命令来启动、停止、重新加载和查看 Nginx 服务的状态了:

    • 启动 Nginx 服务:

      sudo systemctl start nginx
    • 停止 Nginx 服务:

      sudo systemctl stop nginx
    • 重新加载 Nginx 配置:

      sudo systemctl reload nginx
    • 查看 Nginx 服务状态:

      sudo systemctl status nginx
    • 设置 Nginx 开机自启动:

      sudo systemctl enable nginx

    确保在修改了 systemd 服务文件后测试一下,以确保一切正常运行。

标签:部署,0.0,nginx,源码,usr,ext2fs,include,root
From: https://www.cnblogs.com/kcloveworld/p/17984411

相关文章

  • centos7部署kafka服务
    centos7下面安装kafka服务,用于自己测试1.安装JAVA环境yum-yinstalljava-1.8.0-openjdk2.下载代码curl-okafka_2.13-3.6.1.tgzhttps://downloads.apache.org/kafka/3.6.1/kafka_2.13-3.6.1.tgz3.更改配置运行tar-xfkafka_2.13-3.6.1.tgzcdkafka_2.13-3.6.1se......
  • VMware虚拟机部署Linux Ubuntu系统的方法
      本文介绍基于VMwareWorkstationPro虚拟机软件,配置LinuxUbuntu操作系统环境的方法。  首先,我们需要进行VMwareWorkstationPro虚拟机软件的下载与安装。需要注意的是,VMwareWorkstationPro软件是一个收费软件,而互联网中有很多可以下载后直接免费激活、使用这一软件的方......
  • Blazor SSR/WASM IDS/OIDC 单点登录授权实例4 - 部署服务端/独立WASM端授权
    目录:OpenID与OAuth2基础知识BlazorwasmGoogle登录BlazorwasmGitee码云登录BlazorSSR/WASMIDS/OIDC单点登录授权实例1-建立和配置IDS身份验证服务BlazorSSR/WASMIDS/OIDC单点登录授权实例2-登录信息组件wasmBlazorSSR/WASMIDS/OIDC单点登录授权实例3-服......
  • centos7环境部署psqlodbc
    1获取unixODBC和psqlodbc源码包打开https://github.com/lurcher/unixODBC/tags,以下载unixODBC-2.3.7.tar.gz为例打开https://www.postgresql.org/ftp/odbc/versions/src/,以下载psqlodbc-09.06.0500.tar.gz为例将下载好的软件包放在/home/postgres2编译安装unixODBC执行如......
  • 一键部署MeterSphere
    1一键部署¶准备好部署服务器后,可通过MeterSphere快速安装脚本一键快速部署。一键安装采用默认安装参数,更多有关离线部署、容器部署、分布式部署等方式可查看【安装部署】章节内容。部署服务器要求:操作系统要求:CentOS7.xCPU内存要求:最低要求4C8G(企业版最低配置8C16G......
  • 单实例mongodb 部署
    配置文件mkdir/data/mongopush/{log,data,conf,scripts,tmp}systemLog:destination:filelogAppend:truelogRotate:reopenpath:/data/mongopush/log/mongodb.logstorage:dbPath:/data/mongopush/datajournal:enabled:truedirectoryPerDB:tru......
  • Kettle部署centos7并添加远程图形界面访问
    Kettle部署centos7并添加远程图形界面访问安装运行环境安装远程访问(xmanager)添加中文支持安装运行环境kettle需要java环境才能运行,因此要安装Java,点击我查看部署jdk。安装图形化界面1yumgroupinstall"XWindowSystem" 上传ketle文件,并上传至服务器......
  • Cenots7 离线安装部署PostgreSQL
      1PostgreSQL源码包下载并复制1.1PostgreSQL源码包下载:访问PostgreSQL官网 选择所需版本进行下载,本次下载安装版本为v14.5 1.2复制源码包至服务器使用SSH终端工具,远程连接服务器,并使用终端工具提供的上传工具,把postgresql-14.5.tar.gz上传至服务器/usr/l......
  • plank 安装部署
    特点创建项目、看板、列表、卡片、标签和任务添加卡片成员、跟踪时间、设置截止日期、添加附件、发表评论在卡片描述和评论区支持Markdown语言通过成员和标签进行过滤自定义项目背景实时更新用户通知本地化  部署提示:当前(20210814)Planka还未正式发布,API和数据结......
  • docker部署es,kibana
    es安装创建网络【需要部署kibana容器为了互联】dockernetworkcreatees-net拉取镜像dockerpullelasticsearch:7.14.2创建挂载点目录mkdir-p/usr/local/es/data/usr/local/es/config/usr/local/es/plugins修改权限chmod777/usr/local/es/datachmod777......