编译安装httpd2.4.25并编写systemd脚本
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,编译安装httpd2.4.25并编写systemd脚本一、官方的httpd安装脚本[root@textbox ~]# rpm -q --scripts httpdpreinstall scriptle
千家信息网最后更新 2026年11月03日编译安装httpd2.4.25并编写systemd脚本
编译安装httpd2.4.25并编写systemd脚本
一、官方的httpd安装脚本
[root@textbox ~]# rpm -q --scripts httpdpreinstall scriptlet (using /bin/sh):# Add the "apache" group and user/usr/sbin/groupadd -g 48 -r apache 2> /dev/null || :/usr/sbin/useradd -c "Apache" -u 48 -g apache \ -s /sbin/nologin -r -d /usr/share/httpd apache 2> /dev/null || :postinstall scriptlet (using /bin/sh):if [ $1 -eq 1 ] ; then # Initial installation systemctl preset httpd.service htcacheclean.service >/dev/null 2>&1 || : fipreuninstall scriptlet (using /bin/sh):if [ $1 -eq 0 ] ; then # Package removal, not upgrade systemctl --no-reload disable httpd.service htcacheclean.service > /dev/null 2>&1 || : systemctl stop httpd.service htcacheclean.service > /dev/null 2>&1 || : fipostuninstall scriptlet (using /bin/sh):systemctl daemon-reload >/dev/null 2>&1 || : # Trigger for conversion from SysV, per guidelines at:# https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Systemdposttrans scriptlet (using /bin/sh):test -f /etc/sysconfig/httpd-disable-posttrans || \ /bin/systemctl try-restart httpd.service htcacheclean.service >/dev/null 2>&1 || :二、httpd的systemd文件
参考:http://www.jinbuguo.com/systemd/systemd.kill.html
分为3部分:[Unit]、[Service]和[Install]
[root@textbox system]# cat httpd.service[Unit]Description=The Apache HTTP Server #描述信息After=network.target remote-fs.target nss-lookup.target #当前unit应当晚于哪些unit启动Documentation=man:httpd(8) #man手册Documentation=man:apachectl(8) #man手册[Service]Type=notify #unit进程启动类型,notify为在启动完成后会发送一个通知消息。还需要配合 NotifyAccess 来让 Systemd 接收消息 EnvironmentFile=/etc/sysconfig/httpd #环境配置文件ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND #指明启动unit要运行命令或脚本的绝对路径 ExecReload=/usr/sbin/httpd $OPTIONS -k graceful #指明reloadunit要运行的命令或脚本绝对路径ExecStop=/bin/kill -WINCH ${MAINPID} #指明停止unit要运行的命令或脚本# We want systemd to give httpd some time to finish gracefully, but still want# it to kill httpd after TimeoutStopSec if something went wrong during the# graceful stop. Normally, Systemd sends SIGTERM signal right after the# ExecStop, which would kill httpd. We are sending useless SIGCONT here to give# httpd time to finish.KillSignal=SIGCONT #设置杀死进程的 第一步使用什么信号(见上文)SIGCONT是18号信号,表示继续PrivateTmp=true #启动服务时会在/tmp目录生成一个类似system-private-xxx的文件,存在临时文件[Install]WantedBy=multi-user.target #:被哪些units所依赖,弱依赖 三、一键安装脚本
参考:https://blog.51cto.com/14012942/2427694
四、最终自己写的system文件
[root@textbox ~]# cat /usr/lib/systemd/system/httpd.service [Unit]Description=The Apache HTTP ServerAfter=network.target remote-fs.target nss-lookup.target[Service]Type=simpleEnvironmentFile=/etc/httpd/httpd.confExecStart=/apps/httpd24/bin/apachectl -k start -DFOREGROUNDExecReload=/apps/httpd24/bin/apachectl -k gracefulExecStop=/usr/bin/kill -WINCH ${MAINPID}PrivateTmp=true[Install]WantedBy=multi-user.target效果:
[root@textbox ~]# systemctl start httpd[root@textbox ~]# systemctl status httpd● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Active: active (running) since Wed 2019-09-04 21:25:16 CST; 1min 51s ago Main PID: 35575 (apachectl) CGroup: /system.slice/httpd.service ├─35575 /bin/sh /apps/httpd24/bin/apachectl -k start -DFOREGROUND ├─35577 /apps/httpd24/bin/httpd -k start -DFOREGROUND ├─35593 /apps/httpd24/bin/httpd -k start -DFOREGROUND ├─35594 /apps/httpd24/bin/httpd -k start -DFOREGROUND └─35595 /apps/httpd24/bin/httpd -k start -DFOREGROUNDSep 04 21:25:16 textbox systemd[1]: Started The Apache HTTP Server.Sep 04 21:25:31 textbox apachectl[35575]: AH00558: httpd: Could not reliably determine the server's fully qual...ssageHint: Some lines were ellipsized, use -l to show in full.[root@textbox ~]# systemctl stop httpd[root@textbox ~]# systemctl status httpd● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Active: inactive (dead)
脚本
文件
命令
运行
信号
手册
消息
路径
进程
参考
编译
上文
信息
官方
效果
环境
目录
类型
部分
一键
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
花魁咖啡
华服互联网科技靠谱吗
互联网科技巨头监管
互联网科技深圳
科技互联网技术
上海挚品互联网科技
智网互联网科技
善班互联网科技
成都互联网科技公司
奔汉互联网科技
互联网科技美容
互联网之后的科技是什么
北京大学互联网科技怎么样
互联网教育科技公司vipkid
黑科技 体验场景 互联网大会
易企秀互联网科技是做什么的
马化腾互联网科技教学
数字互联网科技有限公司
北京品多多互联网科技有限公司
保山浩联互联网科技有限公司
科技互联网项目
西安互联网科技公司
深圳期待互联网科技
互联网科技博客
中国最先进互联网科技公司
元气玛特互联网科技公司是外包吗
广东工业互联网大赛深圳学泰科技
互联网公司属于科技吗
黑龙江互联网科技公司
互联网大会出现的黑科技