当前位置: 首页 > news >正文

兰州新站点seo代理网站留言板漏洞

兰州新站点seo代理,网站留言板漏洞,重庆公司章程在哪里打印,软文营销广告案例目录 一、Linux程序与进程 1、程序,进程,线程的概念 2、程序和进程的区别 3、进程和线程的区别 二、Linux进程基础(生命周期) 1、进程生命周期 2、父子进程的关系 三、程序管理 1、常见的软件包类型 四、Linux操作系统启动流程详解 1、概述 2、启动流程核心阶段 1…目录 一、Linux程序与进程 1、程序,进程,线程的概念 2、程序和进程的区别 3、进程和线程的区别 二、Linux进程基础(生命周期) 1、进程生命周期 2、父子进程的关系 三、程序管理 1、常见的软件包类型 四、Linux操作系统启动流程详解 1、概述 2、启动流程核心阶段 1. 电源与固件阶段 2. 引导加载程序Bootloader 3. 内核初始化 4. systemd 初始化进程 5. 用户登录阶段 3、故障排查与调试技巧 1. 常见启动问题 五、systemd管理机制 1、运行级别 运行级别与target对应关系 2、systemctl命令的使用 3、服务启动报错排查 一、Linux程序与进程 1、程序,进程,线程的概念 程序是一组指令及参数的集合按照既定的逻辑控制计算机运行用来完成特定任务是静态的 进程是运行着的程序是操作系统执行的基本单位是程序运行的过程 是动态的是有生命周期及运行状态的。是操作系统分配内存、CPU时间片等资源的基本单位。 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。 2、程序和进程的区别 程序是静态的它只是一组指令的集合不具有任何的运行意义。而进程是程序运行的动态过程; 进程和程序并不是一一对应的关系相同的程序运行在不同的数据集上就是不同的进程; 进程还具有并发性和交往性而程序却是封闭的。 3、进程和线程的区别 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发拥有多个线程而一个线程同时只能被一个进程所拥有; 线程不能单独执行但是每一个线程都有程序的入口、执行序列以及程序出口它必须组成进程才能被执行。 二、Linux进程基础(生命周期) 1、进程生命周期 父进程复制自己的地址空间(fork)创建一个新的(子)进程结构。每个新进程分配一个唯一的进程 ID(PID),PID和父进程ID(PPID)是子进程环境的元素,任何进程都可以创建子进程。 所有进程都是第一个系统进程的后代在centos6中第一个系统进程是init而在centos7中第一个系统进程是systemd。 例: [rootbogon ~]# pstree systemd─┬─ModemManager───2*[{ModemManager}] #systemed为父进程├─NetworkManager───2*[{NetworkManager}]├─VGAuthService├─accounts-daemon───2*[{accounts-daemon}]├─alsactl├─atd├─auditd─┬─sedispatch│       └─2*[{auditd}]├─avahi-daemon───avahi-daemon├─bluetoothd├─colord───2*[{colord}]├─crond├─cupsd├─dbus-daemon───{dbus-daemon}├─dnsmasq───dnsmasq├─firewalld───{firewalld}├─gdm─┬─gdm-session-wor─┬─gdm-wayland-ses─┬─gnome-session-b─┬─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─g│     │                 │                 │                 ├─t│     │                 │                 │                 ├─t│     │                 │                 │                 └─3│     │                 │                 └─2*[{gdm-wayland-ses│     │                 └─2*[{gdm-session-wor}]│     └─2*[{gdm}]├─geoclue───2*[{geoclue}]├─gnome-keyring-d───3*[{gnome-keyring-d}]├─gsd-printer───2*[{gsd-printer}]├─gssproxy───5*[{gssproxy}]├─ibus-x11───2*[{ibus-x11}]├─irqbalance───{irqbalance}├─ksmtuned───sleep├─lsmd├─mcelog├─packagekitd───2*[{packagekitd}]├─polkitd───7*[{polkitd}]├─pulseaudio───2*[{pulseaudio}]├─rpcbind├─rsyslogd───2*[{rsyslogd}]├─rtkit-daemon───2*[{rtkit-daemon}]├─smartd├─sshd───sshd───sshd─┬─bash─┬─pstree│                   │     └─systemctl───less│                   └─sftp-server├─sssd_kcm├─systemd─┬─(sd-pam)│         ├─at-spi-bus-laun─┬─dbus-daemon───{dbus-daemon}│         │                 └─3*[{at-spi-bus-laun}]│         ├─at-spi2-registr───2*[{at-spi2-registr}]│         ├─dbus-daemon───{dbus-daemon}│         ├─dconf-service───2*[{dconf-service}]│         ├─evolution-addre─┬─evolution-addre───5*[{evolution-a│         │                 └─4*[{evolution-addre}]│         ├─evolution-calen─┬─evolution-calen───8*[{evolution-c│         │                 └─4*[{evolution-calen}]│         ├─evolution-sourc───3*[{evolution-sourc}]│         ├─gnome-shell-cal───5*[{gnome-shell-cal}]│         ├─gnome-terminal-─┬─bash─┬─tcpdump│         │                 │     └─vim│         │                 └─3*[{gnome-terminal-}]│         ├─goa-daemon───3*[{goa-daemon}]│         ├─goa-identity-se───3*[{goa-identity-se}]│         ├─gvfs-afc-volume───3*[{gvfs-afc-volume}]│         ├─gvfs-goa-volume───2*[{gvfs-goa-volume}]│         ├─gvfs-gphoto2-vo───2*[{gvfs-gphoto2-vo}]│         ├─gvfs-mtp-volume───2*[{gvfs-mtp-volume}]│         ├─gvfs-udisks2-vo───3*[{gvfs-udisks2-vo}]│         ├─gvfsd───2*[{gvfsd}]│         ├─gvfsd-fuse───5*[{gvfsd-fuse}]│         ├─ibus-portal───2*[{ibus-portal}]│         ├─tracker-store───4*[{tracker-store}]│         └─xdg-permission-───2*[{xdg-permission-}]├─systemd-journal├─systemd-logind├─systemd-machine├─systemd-udevd├─tuned───3*[{tuned}]├─udisksd───4*[{udisksd}]├─upowerd───2*[{upowerd}]├─2*[vmtoolsd───3*[{vmtoolsd}]]├─vmware-vmblock-───2*[{vmware-vmblock-}]└─wpa_supplicant 2、父子进程的关系 子进程由父进程产生,在linux系统中使用系统调用fork创建进程。fork复制的内容包括父进程的数据和堆栈段以及父进程的进程环境。子进程继承父进程的安全性身份、过去和当前的文件描述符、端口和资源特权、环境变量以及程序代码。 运行过程子进程运行时父进程休眠。当子进程完成时发出(exit)信号请求在退出时子进程已经关闭或丢弃了其资源环境后剩余释放不掉的资源称之为僵尸进程。父进程在子进程退出时收到信号而被唤醒清理剩余的结构然后继续执行其自己的程序代码。 三、程序管理 1、常见的软件包类型 1.rpm包.rpm为后缀红帽系列操作系统RedHatCentOSOpenSUSE主要的软件包封装格式已经做好默认设置只有红帽系统能用 查看 [rootbogon ~]# rpm -qa | wc -l 1485 ​ 安装 rpm -ivh 卸载 rpm -e 更新 rpm -u 2.deb包.deb为后缀debian系列操作系统debianUbuntukali主要的软件包封装格式只有debian系统能运用 3.二进制包能够直接被计算机安装 4.编译安装由源代码转化成二进制进行安装 2.安装方法 1单独从网上找安装包下载 2自动安装从源内下载安装 注前提是源内有相关的软件包 rpm yum 例 [rootbogon ~]# yum install -y httpd 上次元数据过期检查1 day, 1:14:33 前执行于 2025年05月27日 星期二 02时24分36秒。 依赖关系解决。 软件包           架构   版本                         仓库       大小安装:httpd             x86_64 2.4.37-65.moduleel8.10.019383b7755d4.3appstream 1.4 M 安装依赖关系:apr               x86_64 1.6.3-12.el8                 appstream 128 kapr-util         x86_64 1.6.1-9.el8                   appstream 105 khttpd-filesystem noarch 2.4.37-65.moduleel8.10.019383b7755d4.3appstream 44 khttpd-tools       x86_64 2.4.37-65.moduleel8.10.019383b7755d4.3appstream 111 kmod_http2         x86_64 1.15.7-10.moduleel8.10.019383b7755d4.3appstream 155 krocky-logos-httpd noarch 86.3-1.el8                   baseos     24 k 安装弱的依赖:apr-util-bdb     x86_64 1.6.1-9.el8                   appstream 24 kapr-util-openssl x86_64 1.6.1-9.el8                   appstream 26 k 启用模块流:httpd                   2.4                                           ​ 事务概要安装 9 软件包 ​ 总下载2.0 M 安装大小5.4 M 下载软件包 (1/9): apr-util-bdb-1.6.1-9.el8.x86_64. 104 kB/s | 24 kB     00:00     (2/9): apr-util-openssl-1.6.1-9.el8.x86 173 kB/s | 26 kB     00:00     (3/9): apr-util-1.6.1-9.el8.x86_64.rpm 263 kB/s | 105 kB     00:00     (4/9): apr-1.6.3-12.el8.x86_64.rpm     318 kB/s | 128 kB     00:00     (5/9): httpd-filesystem-2.4.37-65.modul 311 kB/s | 44 kB     00:00     (6/9): httpd-tools-2.4.37-65.moduleel8 772 kB/s | 111 kB     00:00     (7/9): rocky-logos-httpd-86.3-1.el8.noa 379 kB/s | 24 kB     00:00     (8/9): mod_http2-1.15.7-10.moduleel8.1 1.3 MB/s | 155 kB     00:00     (9/9): httpd-2.4.37-65.moduleel8.10.0 3.1 MB/s | 1.4 MB     00:00     ------------------------------------------------------------------------ 总计                                   722 kB/s | 2.0 MB     00:02     运行事务检查 事务检查成功。 运行事务测试 事务测试成功。 运行事务准备中 :                                                         1/1 安装   : apr-1.6.3-12.el8.x86_64                                 1/9 运行脚本: apr-1.6.3-12.el8.x86_64                                 1/9 安装   : apr-util-bdb-1.6.1-9.el8.x86_64                         2/9 安装   : apr-util-openssl-1.6.1-9.el8.x86_64                     3/9 安装   : apr-util-1.6.1-9.el8.x86_64                             4/9 运行脚本: apr-util-1.6.1-9.el8.x86_64                             4/9 安装   : httpd-tools-2.4.37-65.moduleel8.10.019383b7755d4.3   5/9 安装   : rocky-logos-httpd-86.3-1.el8.noarch                     6/9 运行脚本: httpd-filesystem-2.4.37-65.moduleel8.10.019383b775   7/9 安装   : httpd-filesystem-2.4.37-65.moduleel8.10.019383b775   7/9 安装   : mod_http2-1.15.7-10.moduleel8.10.019383b7755d4.3.x   8/9 安装   : httpd-2.4.37-65.moduleel8.10.019383b7755d4.3.x86_6   9/9 运行脚本: httpd-2.4.37-65.moduleel8.10.019383b7755d4.3.x86_6   9/9 验证   : apr-1.6.3-12.el8.x86_64                                 1/9 验证   : apr-util-1.6.1-9.el8.x86_64                             2/9 验证   : apr-util-bdb-1.6.1-9.el8.x86_64                         3/9 验证   : apr-util-openssl-1.6.1-9.el8.x86_64                     4/9 验证   : httpd-2.4.37-65.moduleel8.10.019383b7755d4.3.x86_6   5/9 验证   : httpd-filesystem-2.4.37-65.moduleel8.10.019383b775   6/9 验证   : httpd-tools-2.4.37-65.moduleel8.10.019383b7755d4.3   7/9 验证   : mod_http2-1.15.7-10.moduleel8.10.019383b7755d4.3.x   8/9 验证   : rocky-logos-httpd-86.3-1.el8.noarch                     9/9 ​ 已安装:apr-1.6.3-12.el8.x86_64                                               apr-util-1.6.1-9.el8.x86_64                                           apr-util-bdb-1.6.1-9.el8.x86_64                                       apr-util-openssl-1.6.1-9.el8.x86_64                                   httpd-2.4.37-65.moduleel8.10.019383b7755d4.3.x86_64                httpd-filesystem-2.4.37-65.moduleel8.10.019383b7755d4.3.noarch     httpd-tools-2.4.37-65.moduleel8.10.019383b7755d4.3.x86_64          mod_http2-1.15.7-10.moduleel8.10.019383b7755d4.3.x86_64            rocky-logos-httpd-86.3-1.el8.noarch                                   ​ 完毕 rpm包的命名方法 zip-0-11.el7.x86_64.rpm ​ 软件名.版本号.安装平台.安装架构平台的位数32位x86或者64位x86_64.rpm yum源类型 1.本地yum源 利用本地存在的软件包路径 file://localPath绝对路径【路径下要包含“repodata包含rpm包的元数据”目录】 例 ount: /mnt: WARNING: device write-protected, mounted read-only. [rootlocalhost ~]# cd /mnt/ [rootlocalhost mnt]# ls AppStream BaseOS EFI images isolinux LICENSE media.repo [rootlocalhost mnt]# cd AppStream/ [rootlocalhost AppStream]# ls Packages repodata [rootlocalhost AppStream]# cd Packages [rootlocalhost Packages]# ls 3 b d f h j l n p r t v x z a c e g i k m o q s u w y [rootlocalhost Packages]# pwd /mnt/AppStream/Packages [rootlocalhost Packages]# cd .. [rootlocalhost AppStream]# pwd /mnt/AppStream [rootlocalhost AppStream]# cd /etc/yum.repos.d/ [rootlocalhost yum.repos.d]# ls epel-modular.repo         Rocky-HighAvailability.repo epel.repo                 Rocky-Media.repo epel-testing-modular.repo Rocky-NFV.repo epel-testing.repo         Rocky-Plus.repo Rocky-AppStream.repo       Rocky-PowerTools.repo Rocky-BaseOS.repo         Rocky-ResilientStorage.repo Rocky-Debuginfo.repo       Rocky-RT.repo Rocky-Devel.repo           Rocky-Sources.repo Rocky-Extras.repo [rootlocalhost yum.repos.d]# mkdir backup [rootlocalhost yum.repos.d]# ls backup                     Rocky-Extras.repo epel-modular.repo         Rocky-HighAvailability.repo epel.repo                 Rocky-Media.repo epel-testing-modular.repo Rocky-NFV.repo epel-testing.repo         Rocky-Plus.repo Rocky-AppStream.repo       Rocky-PowerTools.repo Rocky-BaseOS.repo         Rocky-ResilientStorage.repo Rocky-Debuginfo.repo       Rocky-RT.repo Rocky-Devel.repo           Rocky-Sources.repo [rootlocalhost yum.repos.d]# vim local.repo [local] namelocal baseurlfile:///mnt/Appstream enabled1 gpgcheck0 2.网络yum源 利用网络存储的软件包路径 http://域名/Path #不常用 ​ https://域名/Path ​ ftp://域名/Path #不常用 rpm包的常用选项 -e 删除安装包 -v 显示安装过程 rpm -e httpd -q 查看包是否安装 [rootbogon home]# rpm -q httpd 未安装软件包 httpd [rootbogon home]# rpm -qa #查看已安装的所有包 [rootbogon home]# rpm -qf /usr/bin/ls #查看命令由哪个软件包安装完成 coreutils-8.30-15.el8.x86_64 当然还有办法看未安装的软件包 rpm -qpi httpd- #查看未安装的软件包开发信息 rpm -qpl httpd- #查看未安装软件包的安装路径及生成文件 deb dpkg apt 3.二进制 只需要运行bin文件 例 jdk-6u14-linux-x64.bin ​ ./jdk-6u14-linux-x64.bin ​ 根据提示进行操作即可 4.编译安装步骤 需要依赖gcc和make环境 ​ 配置cd 源码包的解压路径./configure --prefix安装路径/usr/local/nginx ​ 编译make ​ 安装make install 首先需要从网上下载安装包这里我们首先去github上下载nginx-1.28.0.tar.gz然后再将压缩包放进windTerm的root中开始操作 [rootbogon ~]# mv nginx-1.28.0.tar.gz /home/ #移动到home目录中 [rootbogon ~]# cd /home/ [rootbogon home]# ls nginx-1.28.0.tar.gz shanshan [rootbogon home]# tar xf nginx-1.28.0.tar.gz -C /usr/local/ [rootbogon home]# cd /usr/local/nginx-1.28.0/ [rootbogon nginx-1.28.0]# ls auto       CODE_OF_CONDUCT.md contrib         LICENSE   SECURITY.md CHANGES     conf               CONTRIBUTING.md man       src CHANGES.ru configure           html             README.md [rootbogon nginx-1.28.0]# ./configure --prefix/usr/local/nginx #配置解压路径 checking for OS Linux 5.14.0-503.14.1.el9_5.x86_64 x86_64 checking for C compiler ... found using GNU C compiler gcc version: 11.5.0 20240719 (Red Hat 11.5.0-2) (GCC) checking for gcc -pipe switch ... found checking for -Wl,-E switch ... found checking for gcc builtin atomic operations ... found checking for C99 variadic macros ... found checking for gcc variadic macros ... found checking for gcc builtin 64 bit byteswap ... found checking for unistd.h ... found checking for inttypes.h ... found checking for limits.h ... found checking for sys/filio.h ... not found checking for sys/param.h ... found checking for sys/mount.h ... found checking for sys/statvfs.h ... found checking for crypt.h ... found checking for Linux specific features checking for epoll ... found checking for EPOLLRDHUP ... found checking for EPOLLEXCLUSIVE ... found checking for eventfd() ... found checking for O_PATH ... found checking for sendfile() ... found checking for sendfile64() ... found checking for sys/prctl.h ... found checking for prctl(PR_SET_DUMPABLE) ... found checking for prctl(PR_SET_KEEPCAPS) ... found checking for capabilities ... found checking for crypt_r() ... found checking for sys/vfs.h ... found checking for BPF sockhash ... found checking for SO_COOKIE ... found checking for UDP_SEGMENT ... found checking for nobody group ... found checking for poll() ... found checking for /dev/poll ... not found checking for kqueue ... not found checking for crypt() ... not found checking for crypt() in libcrypt ... found checking for F_READAHEAD ... not found checking for posix_fadvise() ... found checking for O_DIRECT ... found checking for F_NOCACHE ... not found checking for directio() ... not found checking for statfs() ... found checking for statvfs() ... found checking for dlopen() ... found checking for sched_yield() ... found checking for sched_setaffinity() ... found checking for SO_SETFIB ... not found checking for SO_REUSEPORT ... found checking for SO_ACCEPTFILTER ... not found checking for SO_BINDANY ... not found checking for IP_TRANSPARENT ... found checking for IP_BINDANY ... not found checking for IP_BIND_ADDRESS_NO_PORT ... found checking for IP_RECVDSTADDR ... not found checking for IP_SENDSRCADDR ... not found checking for IP_PKTINFO ... found checking for IPV6_RECVPKTINFO ... found checking for IP_MTU_DISCOVER ... found checking for IPV6_MTU_DISCOVER ... found checking for IP_DONTFRAG ... not found checking for IPV6_DONTFRAG ... found checking for TCP_DEFER_ACCEPT ... found checking for TCP_KEEPIDLE ... found checking for TCP_FASTOPEN ... found checking for TCP_INFO ... found checking for accept4() ... found checking for int size ... 4 bytes checking for long size ... 8 bytes checking for long long size ... 8 bytes checking for void * size ... 8 bytes checking for uint32_t ... found checking for uint64_t ... found checking for sig_atomic_t ... found checking for sig_atomic_t size ... 4 bytes checking for socklen_t ... found checking for in_addr_t ... found checking for in_port_t ... found checking for rlim_t ... found checking for uintptr_t ... uintptr_t found checking for system byte ordering ... little endian checking for size_t size ... 8 bytes checking for off_t size ... 8 bytes checking for time_t size ... 8 bytes checking for AF_INET6 ... found checking for setproctitle() ... not found checking for pread() ... found checking for pwrite() ... found checking for pwritev() ... found checking for strerrordesc_np() ... found checking for localtime_r() ... found checking for clock_gettime(CLOCK_MONOTONIC) ... found checking for posix_memalign() ... found checking for memalign() ... found checking for mmap(MAP_ANON|MAP_SHARED) ... found checking for mmap(/dev/zero, MAP_SHARED) ... found checking for System V shared memory ... found checking for POSIX semaphores ... found checking for struct msghdr.msg_control ... found checking for ioctl(FIONBIO) ... found checking for ioctl(FIONREAD) ... found checking for struct tm.tm_gmtoff ... found checking for struct dirent.d_namlen ... not found checking for struct dirent.d_type ... found checking for sysconf(_SC_NPROCESSORS_ONLN) ... found checking for sysconf(_SC_LEVEL1_DCACHE_LINESIZE) ... found checking for openat(), fstatat() ... found checking for getaddrinfo() ... found checking for PCRE2 library ... not found checking for PCRE library ... not found checking for PCRE library in /usr/local/ ... not found checking for PCRE library in /usr/include/pcre/ ... not found checking for PCRE library in /usr/pkg/ ... not found checking for PCRE library in /opt/local/ ... not found checking for PCRE library in /opt/homebrew/ ... not found ​ ./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by using --with-pcrepath option. 这里可以看到解压路径配置失败因为缺少了一个叫PCRE的库需要安装一下 [rootbogon nginx-1.28.0]# yum install -y pcre #已经安装过的话尝试后面加一下 -utils或-devel 上次元数据过期检查2:03:55 前执行于 2025年05月28日 星期三 13时07分52秒。 软件包 pcre-8.44-4.el9.x86_64 已安装。 依赖关系解决。 无需任何处理。 完毕 [rootbogon nginx-1.28.0]# yum install -y pcre-utils 上次元数据过期检查2:05:09 前执行于 2025年05月28日 星期三 13时07分52秒。 未找到匹配的参数: pcre-utils 错误没有任何匹配: pcre-utils [rootbogon nginx-1.28.0]# yum install -y pcre-devel #缺的就是这个库 上次元数据过期检查2:05:56 前执行于 2025年05月28日 星期三 13时07分52秒。 依赖关系解决。 软件包           架构         版本               仓库             大小安装:pcre-devel       x86_64       8.44-4.el9         appstream       469 k 安装依赖关系:pcre-cpp         x86_64       8.44-4.el9         appstream       25 kpcre-utf16       x86_64       8.44-4.el9         appstream       183 kpcre-utf32       x86_64       8.44-4.el9         appstream       173 k ​ 事务概要安装 4 软件包 ​ 总下载850 k 安装大小2.6 M 下载软件包 (1/4): pcre-utf32-8.44-4.el9.x86_64.rpm 378 kB/s | 173 kB     00:00     (2/4): pcre-utf16-8.44-4.el9.x86_64.rpm 334 kB/s | 183 kB     00:00     (3/4): pcre-cpp-8.44-4.el9.x86_64.rpm   233 kB/s | 25 kB     00:00     (4/4): pcre-devel-8.44-4.el9.x86_64.rpm 721 kB/s | 469 kB     00:00     ------------------------------------------------------------------------ 总计                                   429 kB/s | 850 kB     00:01     运行事务检查 事务检查成功。 运行事务测试 事务测试成功。 运行事务准备中 :                                                         1/1 安装   : pcre-cpp-8.44-4.el9.x86_64                             1/4 安装   : pcre-utf16-8.44-4.el9.x86_64                           2/4 安装   : pcre-utf32-8.44-4.el9.x86_64                           3/4 安装   : pcre-devel-8.44-4.el9.x86_64                           4/4 运行脚本: pcre-devel-8.44-4.el9.x86_64                           4/4 验证   : pcre-utf32-8.44-4.el9.x86_64                           1/4 验证   : pcre-utf16-8.44-4.el9.x86_64                           2/4 验证   : pcre-devel-8.44-4.el9.x86_64                           3/4 验证   : pcre-cpp-8.44-4.el9.x86_64                             4/4 ​ 已安装:pcre-cpp-8.44-4.el9.x86_64         pcre-devel-8.44-4.el9.x86_64      pcre-utf16-8.44-4.el9.x86_64       pcre-utf32-8.44-4.el9.x86_64       ​ 完毕 [rootbogon nginx-1.28.0]# ./configure --prefix/usr/local/nginx checking for OS Linux 5.14.0-503.14.1.el9_5.x86_64 x86_64 checking for C compiler ... found using GNU C compiler gcc version: 11.5.0 20240719 (Red Hat 11.5.0-2) (GCC) checking for gcc -pipe switch ... found checking for -Wl,-E switch ... found checking for gcc builtin atomic operations ... found checking for C99 variadic macros ... found checking for gcc variadic macros ... found checking for gcc builtin 64 bit byteswap ... found checking for unistd.h ... found checking for inttypes.h ... found checking for limits.h ... found checking for sys/filio.h ... not found checking for sys/param.h ... found checking for sys/mount.h ... found checking for sys/statvfs.h ... found checking for crypt.h ... found checking for Linux specific features checking for epoll ... found checking for EPOLLRDHUP ... found checking for EPOLLEXCLUSIVE ... found checking for eventfd() ... found checking for O_PATH ... found checking for sendfile() ... found checking for sendfile64() ... found checking for sys/prctl.h ... found checking for prctl(PR_SET_DUMPABLE) ... found checking for prctl(PR_SET_KEEPCAPS) ... found checking for capabilities ... found checking for crypt_r() ... found checking for sys/vfs.h ... found checking for BPF sockhash ... found checking for SO_COOKIE ... found checking for UDP_SEGMENT ... found checking for nobody group ... found checking for poll() ... found checking for /dev/poll ... not found checking for kqueue ... not found checking for crypt() ... not found checking for crypt() in libcrypt ... found checking for F_READAHEAD ... not found checking for posix_fadvise() ... found checking for O_DIRECT ... found checking for F_NOCACHE ... not found checking for directio() ... not found checking for statfs() ... found checking for statvfs() ... found checking for dlopen() ... found checking for sched_yield() ... found checking for sched_setaffinity() ... found checking for SO_SETFIB ... not found checking for SO_REUSEPORT ... found checking for SO_ACCEPTFILTER ... not found checking for SO_BINDANY ... not found checking for IP_TRANSPARENT ... found checking for IP_BINDANY ... not found checking for IP_BIND_ADDRESS_NO_PORT ... found checking for IP_RECVDSTADDR ... not found checking for IP_SENDSRCADDR ... not found checking for IP_PKTINFO ... found checking for IPV6_RECVPKTINFO ... found checking for IP_MTU_DISCOVER ... found checking for IPV6_MTU_DISCOVER ... found checking for IP_DONTFRAG ... not found checking for IPV6_DONTFRAG ... found checking for TCP_DEFER_ACCEPT ... found checking for TCP_KEEPIDLE ... found checking for TCP_FASTOPEN ... found checking for TCP_INFO ... found checking for accept4() ... found checking for int size ... 4 bytes checking for long size ... 8 bytes checking for long long size ... 8 bytes checking for void * size ... 8 bytes checking for uint32_t ... found checking for uint64_t ... found checking for sig_atomic_t ... found checking for sig_atomic_t size ... 4 bytes checking for socklen_t ... found checking for in_addr_t ... found checking for in_port_t ... found checking for rlim_t ... found checking for uintptr_t ... uintptr_t found checking for system byte ordering ... little endian checking for size_t size ... 8 bytes checking for off_t size ... 8 bytes checking for time_t size ... 8 bytes checking for AF_INET6 ... found checking for setproctitle() ... not found checking for pread() ... found checking for pwrite() ... found checking for pwritev() ... found checking for strerrordesc_np() ... found checking for localtime_r() ... found checking for clock_gettime(CLOCK_MONOTONIC) ... found checking for posix_memalign() ... found checking for memalign() ... found checking for mmap(MAP_ANON|MAP_SHARED) ... found checking for mmap(/dev/zero, MAP_SHARED) ... found checking for System V shared memory ... found checking for POSIX semaphores ... found checking for struct msghdr.msg_control ... found checking for ioctl(FIONBIO) ... found checking for ioctl(FIONREAD) ... found checking for struct tm.tm_gmtoff ... found checking for struct dirent.d_namlen ... not found checking for struct dirent.d_type ... found checking for sysconf(_SC_NPROCESSORS_ONLN) ... found checking for sysconf(_SC_LEVEL1_DCACHE_LINESIZE) ... found checking for openat(), fstatat() ... found checking for getaddrinfo() ... found checking for PCRE2 library ... not found checking for PCRE library ... found checking for PCRE JIT support ... found checking for zlib library ... found creating objs/Makefile ​ Configuration summary using system PCRE library OpenSSL library is not used using system zlib library ​nginx path prefix: /usr/local/nginxnginx binary file: /usr/local/nginx/sbin/nginxnginx modules path: /usr/local/nginx/modulesnginx configuration prefix: /usr/local/nginx/confnginx configuration file: /usr/local/nginx/conf/nginx.confnginx pid file: /usr/local/nginx/logs/nginx.pidnginx error log file: /usr/local/nginx/logs/error.lognginx http access log file: /usr/local/nginx/logs/access.lognginx http client request body temporary files: client_body_tempnginx http proxy temporary files: proxy_tempnginx http fastcgi temporary files: fastcgi_tempnginx http uwsgi temporary files: uwsgi_tempnginx http scgi temporary files: scgi_temp ​ 解压完成 [rootbogon nginx-1.28.0]# vim Makefile [rootbogon nginx-1.28.0]# make #开始源代码包编译 make -f objs/Makefile make[1]: 进入目录“/usr/local/nginx-1.28.0” cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/nginx.o \src/core/nginx.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_log.o \src/core/ngx_log.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_palloc.o \src/core/ngx_palloc.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_array.o \src/core/ngx_array.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_list.o \src/core/ngx_list.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_hash.o \src/core/ngx_hash.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_buf.o \src/core/ngx_buf.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_queue.o \src/core/ngx_queue.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_output_chain.o \src/core/ngx_output_chain.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_string.o \src/core/ngx_string.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_parse.o \src/core/ngx_parse.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_parse_time.o \src/core/ngx_parse_time.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_inet.o \src/core/ngx_inet.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_file.o \src/core/ngx_file.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_crc32.o \src/core/ngx_crc32.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_murmurhash.o \src/core/ngx_murmurhash.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_md5.o \src/core/ngx_md5.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_sha1.o \src/core/ngx_sha1.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_rbtree.o \src/core/ngx_rbtree.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_radix_tree.o \src/core/ngx_radix_tree.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_slab.o \src/core/ngx_slab.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_times.o \src/core/ngx_times.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_shmtx.o \src/core/ngx_shmtx.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_connection.o \src/core/ngx_connection.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_cycle.o \src/core/ngx_cycle.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_spinlock.o \src/core/ngx_spinlock.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_rwlock.o \src/core/ngx_rwlock.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_cpuinfo.o \src/core/ngx_cpuinfo.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_conf_file.o \src/core/ngx_conf_file.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_module.o \src/core/ngx_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_resolver.o \src/core/ngx_resolver.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_open_file_cache.o \src/core/ngx_open_file_cache.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_crypt.o \src/core/ngx_crypt.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_proxy_protocol.o \src/core/ngx_proxy_protocol.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_syslog.o \src/core/ngx_syslog.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/event/ngx_event.o \src/event/ngx_event.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/event/ngx_event_timer.o \src/event/ngx_event_timer.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/event/ngx_event_posted.o \src/event/ngx_event_posted.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/event/ngx_event_accept.o \src/event/ngx_event_accept.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/event/ngx_event_udp.o \src/event/ngx_event_udp.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/event/ngx_event_connect.o \src/event/ngx_event_connect.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/event/ngx_event_pipe.o \src/event/ngx_event_pipe.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_time.o \src/os/unix/ngx_time.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_errno.o \src/os/unix/ngx_errno.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_alloc.o \src/os/unix/ngx_alloc.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_files.o \src/os/unix/ngx_files.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_socket.o \src/os/unix/ngx_socket.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_recv.o \src/os/unix/ngx_recv.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_readv_chain.o \src/os/unix/ngx_readv_chain.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_udp_recv.o \src/os/unix/ngx_udp_recv.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_send.o \src/os/unix/ngx_send.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_writev_chain.o \src/os/unix/ngx_writev_chain.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_udp_send.o \src/os/unix/ngx_udp_send.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_udp_sendmsg_chain.o \src/os/unix/ngx_udp_sendmsg_chain.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_channel.o \src/os/unix/ngx_channel.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_shmem.o \src/os/unix/ngx_shmem.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_process.o \src/os/unix/ngx_process.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_daemon.o \src/os/unix/ngx_daemon.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_setaffinity.o \src/os/unix/ngx_setaffinity.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_setproctitle.o \src/os/unix/ngx_setproctitle.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_posix_init.o \src/os/unix/ngx_posix_init.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_user.o \src/os/unix/ngx_user.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_dlopen.o \src/os/unix/ngx_dlopen.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_process_cycle.o \src/os/unix/ngx_process_cycle.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_linux_init.o \src/os/unix/ngx_linux_init.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/event/modules/ngx_epoll_module.o \src/event/modules/ngx_epoll_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/os/unix/ngx_linux_sendfile_chain.o \src/os/unix/ngx_linux_sendfile_chain.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_bpf.o \src/core/ngx_bpf.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/src/core/ngx_regex.o \src/core/ngx_regex.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http.o \src/http/ngx_http.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_core_module.o \src/http/ngx_http_core_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_special_response.o \src/http/ngx_http_special_response.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_request.o \src/http/ngx_http_request.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_parse.o \src/http/ngx_http_parse.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_log_module.o \src/http/modules/ngx_http_log_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_request_body.o \src/http/ngx_http_request_body.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_variables.o \src/http/ngx_http_variables.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_script.o \src/http/ngx_http_script.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_upstream.o \src/http/ngx_http_upstream.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_upstream_round_robin.o \src/http/ngx_http_upstream_round_robin.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_file_cache.o \src/http/ngx_http_file_cache.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_write_filter_module.o \src/http/ngx_http_write_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_header_filter_module.o \src/http/ngx_http_header_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_chunked_filter_module.o \src/http/modules/ngx_http_chunked_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_range_filter_module.o \src/http/modules/ngx_http_range_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_gzip_filter_module.o \src/http/modules/ngx_http_gzip_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_postpone_filter_module.o \src/http/ngx_http_postpone_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_ssi_filter_module.o \src/http/modules/ngx_http_ssi_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_charset_filter_module.o \src/http/modules/ngx_http_charset_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_userid_filter_module.o \src/http/modules/ngx_http_userid_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_headers_filter_module.o \src/http/modules/ngx_http_headers_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/ngx_http_copy_filter_module.o \src/http/ngx_http_copy_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_not_modified_filter_module.o \src/http/modules/ngx_http_not_modified_filter_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_static_module.o \src/http/modules/ngx_http_static_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_autoindex_module.o \src/http/modules/ngx_http_autoindex_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_index_module.o \src/http/modules/ngx_http_index_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_mirror_module.o \src/http/modules/ngx_http_mirror_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_try_files_module.o \src/http/modules/ngx_http_try_files_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_auth_basic_module.o \src/http/modules/ngx_http_auth_basic_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_access_module.o \src/http/modules/ngx_http_access_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_limit_conn_module.o \src/http/modules/ngx_http_limit_conn_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_limit_req_module.o \src/http/modules/ngx_http_limit_req_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_geo_module.o \src/http/modules/ngx_http_geo_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_map_module.o \src/http/modules/ngx_http_map_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_split_clients_module.o \src/http/modules/ngx_http_split_clients_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_referer_module.o \src/http/modules/ngx_http_referer_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_rewrite_module.o \src/http/modules/ngx_http_rewrite_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_proxy_module.o \src/http/modules/ngx_http_proxy_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_fastcgi_module.o \src/http/modules/ngx_http_fastcgi_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_uwsgi_module.o \src/http/modules/ngx_http_uwsgi_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_scgi_module.o \src/http/modules/ngx_http_scgi_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_memcached_module.o \src/http/modules/ngx_http_memcached_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_empty_gif_module.o \src/http/modules/ngx_http_empty_gif_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_browser_module.o \src/http/modules/ngx_http_browser_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_upstream_hash_module.o \src/http/modules/ngx_http_upstream_hash_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_upstream_ip_hash_module.o \src/http/modules/ngx_http_upstream_ip_hash_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_upstream_least_conn_module.o \src/http/modules/ngx_http_upstream_least_conn_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_upstream_random_module.o \src/http/modules/ngx_http_upstream_random_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_upstream_keepalive_module.o \src/http/modules/ngx_http_upstream_keepalive_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs -I src/http -I src/http/modules \-o objs/src/http/modules/ngx_http_upstream_zone_module.o \src/http/modules/ngx_http_upstream_zone_module.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/event/quic -I src/os/unix -I objs \-o objs/ngx_modules.o \objs/ngx_modules.c cc -o objs/nginx \ objs/src/core/nginx.o \ objs/src/core/ngx_log.o \ objs/src/core/ngx_palloc.o \ objs/src/core/ngx_array.o \ objs/src/core/ngx_list.o \ objs/src/core/ngx_hash.o \ objs/src/core/ngx_buf.o \ objs/src/core/ngx_queue.o \ objs/src/core/ngx_output_chain.o \ objs/src/core/ngx_string.o \ objs/src/core/ngx_parse.o \ objs/src/core/ngx_parse_time.o \ objs/src/core/ngx_inet.o \ objs/src/core/ngx_file.o \ objs/src/core/ngx_crc32.o \ objs/src/core/ngx_murmurhash.o \ objs/src/core/ngx_md5.o \ objs/src/core/ngx_sha1.o \ objs/src/core/ngx_rbtree.o \ objs/src/core/ngx_radix_tree.o \ objs/src/core/ngx_slab.o \ objs/src/core/ngx_times.o \ objs/src/core/ngx_shmtx.o \ objs/src/core/ngx_connection.o \ objs/src/core/ngx_cycle.o \ objs/src/core/ngx_spinlock.o \ objs/src/core/ngx_rwlock.o \ objs/src/core/ngx_cpuinfo.o \ objs/src/core/ngx_conf_file.o \ objs/src/core/ngx_module.o \ objs/src/core/ngx_resolver.o \ objs/src/core/ngx_open_file_cache.o \ objs/src/core/ngx_crypt.o \ objs/src/core/ngx_proxy_protocol.o \ objs/src/core/ngx_syslog.o \ objs/src/event/ngx_event.o \ objs/src/event/ngx_event_timer.o \ objs/src/event/ngx_event_posted.o \ objs/src/event/ngx_event_accept.o \ objs/src/event/ngx_event_udp.o \ objs/src/event/ngx_event_connect.o \ objs/src/event/ngx_event_pipe.o \ objs/src/os/unix/ngx_time.o \ objs/src/os/unix/ngx_errno.o \ objs/src/os/unix/ngx_alloc.o \ objs/src/os/unix/ngx_files.o \ objs/src/os/unix/ngx_socket.o \ objs/src/os/unix/ngx_recv.o \ objs/src/os/unix/ngx_readv_chain.o \ objs/src/os/unix/ngx_udp_recv.o \ objs/src/os/unix/ngx_send.o \ objs/src/os/unix/ngx_writev_chain.o \ objs/src/os/unix/ngx_udp_send.o \ objs/src/os/unix/ngx_udp_sendmsg_chain.o \ objs/src/os/unix/ngx_channel.o \ objs/src/os/unix/ngx_shmem.o \ objs/src/os/unix/ngx_process.o \ objs/src/os/unix/ngx_daemon.o \ objs/src/os/unix/ngx_setaffinity.o \ objs/src/os/unix/ngx_setproctitle.o \ objs/src/os/unix/ngx_posix_init.o \ objs/src/os/unix/ngx_user.o \ objs/src/os/unix/ngx_dlopen.o \ objs/src/os/unix/ngx_process_cycle.o \ objs/src/os/unix/ngx_linux_init.o \ objs/src/event/modules/ngx_epoll_module.o \ objs/src/os/unix/ngx_linux_sendfile_chain.o \ objs/src/core/ngx_bpf.o \ objs/src/core/ngx_regex.o \ objs/src/http/ngx_http.o \ objs/src/http/ngx_http_core_module.o \ objs/src/http/ngx_http_special_response.o \ objs/src/http/ngx_http_request.o \ objs/src/http/ngx_http_parse.o \ objs/src/http/modules/ngx_http_log_module.o \ objs/src/http/ngx_http_request_body.o \ objs/src/http/ngx_http_variables.o \ objs/src/http/ngx_http_script.o \ objs/src/http/ngx_http_upstream.o \ objs/src/http/ngx_http_upstream_round_robin.o \ objs/src/http/ngx_http_file_cache.o \ objs/src/http/ngx_http_write_filter_module.o \ objs/src/http/ngx_http_header_filter_module.o \ objs/src/http/modules/ngx_http_chunked_filter_module.o \ objs/src/http/modules/ngx_http_range_filter_module.o \ objs/src/http/modules/ngx_http_gzip_filter_module.o \ objs/src/http/ngx_http_postpone_filter_module.o \ objs/src/http/modules/ngx_http_ssi_filter_module.o \ objs/src/http/modules/ngx_http_charset_filter_module.o \ objs/src/http/modules/ngx_http_userid_filter_module.o \ objs/src/http/modules/ngx_http_headers_filter_module.o \ objs/src/http/ngx_http_copy_filter_module.o \ objs/src/http/modules/ngx_http_not_modified_filter_module.o \ objs/src/http/modules/ngx_http_static_module.o \ objs/src/http/modules/ngx_http_autoindex_module.o \ objs/src/http/modules/ngx_http_index_module.o \ objs/src/http/modules/ngx_http_mirror_module.o \ objs/src/http/modules/ngx_http_try_files_module.o \ objs/src/http/modules/ngx_http_auth_basic_module.o \ objs/src/http/modules/ngx_http_access_module.o \ objs/src/http/modules/ngx_http_limit_conn_module.o \ objs/src/http/modules/ngx_http_limit_req_module.o \ objs/src/http/modules/ngx_http_geo_module.o \ objs/src/http/modules/ngx_http_map_module.o \ objs/src/http/modules/ngx_http_split_clients_module.o \ objs/src/http/modules/ngx_http_referer_module.o \ objs/src/http/modules/ngx_http_rewrite_module.o \ objs/src/http/modules/ngx_http_proxy_module.o \ objs/src/http/modules/ngx_http_fastcgi_module.o \ objs/src/http/modules/ngx_http_uwsgi_module.o \ objs/src/http/modules/ngx_http_scgi_module.o \ objs/src/http/modules/ngx_http_memcached_module.o \ objs/src/http/modules/ngx_http_empty_gif_module.o \ objs/src/http/modules/ngx_http_browser_module.o \ objs/src/http/modules/ngx_http_upstream_hash_module.o \ objs/src/http/modules/ngx_http_upstream_ip_hash_module.o \ objs/src/http/modules/ngx_http_upstream_least_conn_module.o \ objs/src/http/modules/ngx_http_upstream_random_module.o \ objs/src/http/modules/ngx_http_upstream_keepalive_module.o \ objs/src/http/modules/ngx_http_upstream_zone_module.o \ objs/ngx_modules.o \ -lcrypt -lpcre -lz \ -Wl,-E sed -e s|%%PREFIX%%|/usr/local/nginx| \-e s|%%PID_PATH%%|/usr/local/nginx/logs/nginx.pid| \-e s|%%CONF_PATH%%|/usr/local/nginx/conf/nginx.conf| \-e s|%%ERROR_LOG_PATH%%|/usr/local/nginx/logs/error.log| \ man/nginx.8 objs/nginx.8 make[1]: 离开目录“/usr/local/nginx-1.28.0” [rootbogon nginx-1.28.0]# make install #开始安装 make -f objs/Makefile install make[1]: 进入目录“/usr/local/nginx-1.28.0” test -d /usr/local/nginx || mkdir -p /usr/local/nginx test -d /usr/local/nginx/sbin \|| mkdir -p /usr/local/nginx/sbin test ! -f /usr/local/nginx/sbin/nginx \|| mv /usr/local/nginx/sbin/nginx \/usr/local/nginx/sbin/nginx.old cp objs/nginx /usr/local/nginx/sbin/nginx test -d /usr/local/nginx/conf \|| mkdir -p /usr/local/nginx/conf cp conf/koi-win /usr/local/nginx/conf cp conf/koi-utf /usr/local/nginx/conf cp conf/win-utf /usr/local/nginx/conf test -f /usr/local/nginx/conf/mime.types \|| cp conf/mime.types /usr/local/nginx/conf cp conf/mime.types /usr/local/nginx/conf/mime.types.default test -f /usr/local/nginx/conf/fastcgi_params \|| cp conf/fastcgi_params /usr/local/nginx/conf cp conf/fastcgi_params \/usr/local/nginx/conf/fastcgi_params.default test -f /usr/local/nginx/conf/fastcgi.conf \|| cp conf/fastcgi.conf /usr/local/nginx/conf cp conf/fastcgi.conf /usr/local/nginx/conf/fastcgi.conf.default test -f /usr/local/nginx/conf/uwsgi_params \|| cp conf/uwsgi_params /usr/local/nginx/conf cp conf/uwsgi_params \/usr/local/nginx/conf/uwsgi_params.default test -f /usr/local/nginx/conf/scgi_params \|| cp conf/scgi_params /usr/local/nginx/conf cp conf/scgi_params \/usr/local/nginx/conf/scgi_params.default test -f /usr/local/nginx/conf/nginx.conf \|| cp conf/nginx.conf /usr/local/nginx/conf/nginx.conf cp conf/nginx.conf /usr/local/nginx/conf/nginx.conf.default test -d /usr/local/nginx/logs \|| mkdir -p /usr/local/nginx/logs test -d /usr/local/nginx/logs \|| mkdir -p /usr/local/nginx/logs test -d /usr/local/nginx/html \|| cp -R html /usr/local/nginx test -d /usr/local/nginx/logs \|| mkdir -p /usr/local/nginx/logs make[1]: 离开目录“/usr/local/nginx-1.28.0” 安装完成 需要注意的是编译安装完成的软件默认不被systemd管理 也就是无法直接使用命令因此要给它设置一个软连接为他进行路径优化 [rootbogon nginx]# ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx 大功告成了 四、Linux操作系统启动流程详解 1、概述 Linux启动流程是从按下电源键到用户登录的完整过程分为传统BIOSMBR和现代UEFIGPT两种模式。主流系统如CentOS 7/Ubuntu 18.04通常使用 UEFI GRUB2 systemd 组合。 2、启动流程核心阶段 1. 电源与固件阶段 UEFI/BIOS初始化 硬件自检POST, Power-On Self-Test UEFI特点图形化界面、支持GPT分区、独立于OS的Shell环境 定位启动设备读取NVRAM中的启动项efibootmgr命令可管理 2. 引导加载程序Bootloader GRUB2 核心作用 内有一个重要的运行级别后面会说 配置文件路径/boot/grub2/grub.cfg由grub2-mkconfig生成 引导程序分类 关键配置参数 [rootbogon ~]# cd /boot/grub2 [rootbogon grub2]# vim grub.cfg set root(hd0,gpt1)  # 指定/boot所在分区 linux /vmlinuz-5.4.0 root/dev/sda2 ro  # 内核路径及挂载参数 initrd /initramfs-5.4.0.img             # 初始化内存文件系统 3. 内核初始化 内核解压与初始化 加载vmlinuz压缩的内核镜像 initramfs 作用 包含根文件系统挂载前的驱动如LVM、RAID 提供dracut工具集可通过dmesg | grep initramfs查看日志 挂载根文件系统/为只读模式 4. systemd 初始化进程 首个用户态进程 PID1替代传统init 核心任务 解析/etc/systemd/system/default.target默认运行级别 并行启动服务单元Unit 激活sysinit.target系统初始化、basic.target基础服务 关键操作命令 systemctl get-default         # 查看默认target systemctl set-default multi-user.target  # 设置默认为命令行模式 journalctl -b                # 查看本次启动日志 默认运行级别是可以修改的 后面会说 5. 用户登录阶段 终端登录 getty 服务生成终端/etc/systemd/system/getty.target.wants/ 调用login验证用户身份 图形化登录 Display Manager如GDM、LightDM启动X/Wayland会话 3、故障排查与调试技巧 1. 常见启动问题 故障现象可能原因解决方法GRUB Rescue 提示符引导分区损坏/配置丢失使用Live CD重建grubKernel panic驱动缺失/根文件系统错误检查initramfs是否包含所需驱动systemd启动卡死服务依赖死锁添加systemd.unitemergency.target内核参数文件系统只读fsck未通过或磁盘错误手动运行fsck /dev/sda1 五、systemd管理机制 init进程是所有进程的父进程systemd实际上是一种管理init的软件。只能管理rpm安装的 units存储路径 ​ /usr/lib/systemd/system 基于unit概念实现常见的unit类型 单元类型扩展名说明Service.service描述一个系统服务Target.target描述一组systemd的单元 例 rootbogon ~]# cd /usr/lib/systemd/system/ [rootbogon system]# cd [rootbogon ~]# ls -a .     视频 音乐             .bash_logout   .config   .ssh ..   图片 桌面             .bash_profile .cshrc   .tcshrc 公共 文档 anaconda-ks.cfg .bashrc       .lesshst .viminfo 模板 下载 .bash_history   .cache         .local 1、运行级别 运行级别与target对应关系 级别说明0关机1单用户2多用户等同于33多用户4多用户(等同于3)5图形多用户6重启 查看运行级别** runlevel ​ N|运行级别数字   当前运行级别数字 例 [rootbogon ~]# runlevel N 5 N代表null表示没切换过其它运行级别 切换运行级别** init  运行级别数字 例 [rootbogon ~]# init 3 [rootbogon ~]# runlevel 5 3 查看默认运行级别 systemctl get-default [rootbogon ~]# systemctl get-default graphical.target 设置默认运行级别 systemctl set-default  运行级别target 例 2、systemctl命令的使用 语法结构 systemctl  服务控制类型 服务名称[.service] 服务控制类型 start:启动 stop:停止 restart重启会停止服务 reload重载不停止服务,)加载配置文件优雅的重启 status:查看状态 Activeactiveruning Activeinactive(dead) 例 [rootbogon ~]# systemctl status httpd ○ httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; pActive: inactive (dead)Docs: man:httpd.service(8) enable:开机自启动 is-enabled查看是否开机自启动 disable开机不进行自启动 --now 配合enable与disable使用在进行开机自启或不自启的同时进行打开或关闭指定服务 其它选项 -t ​ 指定unit类型 ​ Unit Commands ​ list-units ​ 列出所有unit一般与-t结合 例 rootbogon ~]# systemctl list-units -t serviceUNIT                                   LOAD   ACTIVE SUB     DESCRIPTION                                               accounts-daemon.service               loaded active running Accounts Serviceatd.service                           loaded active running Deferred execution schedulerauditd.service                         loaded active running Security Auditing Serviceavahi-daemon.service                   loaded active running Avahi mDNS/DNS-SD Stackbluetooth.service                     loaded active running Bluetooth servicechronyd.service                       loaded active running NTP client/servercolord.service                         loaded active running Manage, Install and Generate Color Profilescrond.service                         loaded active running Command Schedulercups.service                           loaded active running CUPS Schedulerdbus-broker.service                   loaded active running D-Bus System Message Busdracut-shutdown.service               loaded active exited Restore /run/initramfs on shutdownfirewalld.service                     loaded active running firewalld - dynamic firewall daemongdm.service                           loaded active running GNOME Display Managerirqbalance.service                     loaded active running irqbalance daemonkdump.service                         loaded active exited Crash recovery kernel armingkmod-static-nodes.service             loaded active exited Create List of Static Device Nodesldconfig.service                       loaded active exited Rebuild Dynamic Linker Cachelibstoragemgmt.service                 loaded active running libstoragemgmt plug-in server daemonlvm2-monitor.service                   loaded active exited Monitoring of LVM2 mirrors, snapshots etc. using dmeventd omcelog.service                         loaded active running Machine Check Exception Logging DaemonModemManager.service                   loaded active running Modem ManagerNetworkManager-wait-online.service     loaded active exited Network Manager Wait OnlineNetworkManager.service                 loaded active running Network Managernis-domainname.service                 loaded active exited Read and set NIS domainname from /etc/sysconfig/networkplymouth-quit-wait.service             loaded active exited Hold until boot process finishes up 3、服务启动报错排查 脚本错误 ###参数报错 Failed to restart crond.service: Unit is not loaded properly: Invalid argument. ​ See system logs and systemctl status crond.service for details. ​ Loaded: error (Reason: Invalid argument) ​ ###命令报错 8月 27 11:57:51 localhost.localdomain systemd[12545]: Failed at step EXEC spawning /usr/sbin/httpd1: No such file or directory -- Subject: Process /usr/sbin/httpd1 could not be executed ​ 配置文件错误 Job for httpd.service failed because the control process exited with error code. See systemctl status httpd.service and journalctl -xe for details. ​ Active: failed (Result: exit-code) ​ AH00526: Syntax error on line 42 of /etc/httpd/conf/httpd.conf: 未知错误 Active: failed (Result: exit-code) 8月 27 12:03:41 localhost.localdomain useradd[12790]: failed adding user apache, exit code: 9 没有具体的错误提示 排查关联服务及配置文件 服务排错命令 journalctl -xe 图形化管理工具 ntsysv  #只能在图形化运行级别使用
http://www.zqtcl.cn/news/283222/

相关文章:

  • 优化网站浏览量怎么看建设网站公司专业服务
  • php做的网站预览单产品网站建设
  • 网站文件验证上海推广网站公司
  • 如何免费申请网站外贸工艺品网站建设
  • 有名的wordpress网站网站开发企业培训
  • 中国建设银行绑定网站南宁seo如何做
  • 饮食类网站律师资格证报考条件
  • 昆明网站建设推广房源管理免费系统
  • jsp网站开发书籍环保网站 怎么做
  • 深圳营销型网站建设公司搜狗短网址生成
  • 如何优化购物网站建设广州seo公司排行
  • iis5.1 新建网站舆情系统的作用
  • 北京国互网网站建设公司东莞寮步搬家公司
  • 学校门户网站是什么意思做网站的意义大不大
  • 做网站卖酒网站内容建设的布局和结构
  • 效果图在哪个网站可以找比较好wordpress网站背景设置
  • 专业整站优化韩国设计公司网站
  • 网站建设与规划学的心得体会WordPress主题启用出现错误
  • 网站建设 资讯宁波东方论坛首页
  • 东莞网站制作有名 乐云践新郑州官方网
  • 网站开发经理具备什么知识调查问卷网站建设
  • 做购买网站企业宣传片制作拍摄
  • logo艺术字转换器徐州seo企业
  • 禹城网站建设公司湖州城市投资建设集团网站
  • 上海城乡住房建设厅网站asp网站怎么做301定向
  • 惠州免费网站建设上海家装10强名单
  • 新手学习做网站电子商务网站建设与维护实验报告
  • 网站建设制作设计推广上海职业技能培训机构
  • 网站不同颜色网站无障碍的建设方面空缺
  • 手机网站织梦模板it初学者做网站