Sponsored Content
Top Forums UNIX for Advanced & Expert Users Error starting httpd via systemctl Post 303042134 by anaigini45 on Monday 16th of December 2019 04:47:43 AM
Old 12-16-2019
Error starting httpd via systemctl

Hi,


Most of our systems have the apache customized, and started manually via the command line. One eg :


Code:
[root@dev1-myeg system]# ps -aux | grep http
root      6278  0.0  0.0 112708   984 pts/2    S+   16:32   0:00 grep --color=auto http
root      6398  0.0  0.3 570636 14376 ?        Ss   Sep17   8:34 /usr/local/apache-2.4.33/bin/httpd -k start
apache   17671  0.0  5.5 2598496 209928 ?      Sl   Dec10   0:21 /usr/local/apache-2.4.33/bin/httpd -k start
apache   17672  0.0  5.5 2601972 209792 ?      Sl   Dec10   0:20 /usr/local/apache-2.4.33/bin/httpd -k start
apache   17673  0.0  5.3 2601972 201648 ?      Sl   Dec10   0:23 /usr/local/apache-2.4.33/bin/httpd -k start
apache   17799  0.0  5.5 2602232 209604 ?      Sl   Dec10   0:24 /usr/local/apache-2.4.33/bin/httpd -k start

To start the httpd service ,we use :


Code:
/usr/local/apache-2.4.33/bin/httpd -k start

However, we want to automate the service via systemd. Thus I modified the original script which is this :


Code:
[root@dev1-myeg system]# cat httpd24-httpd.service.bak
[Unit]
Description=The Apache HTTP Server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=notify
EnvironmentFile=/opt/rh/httpd24/root/etc/sysconfig/httpd
ExecStart=/opt/rh/httpd24/root/usr/sbin/httpd-scl-wrapper $OPTIONS -DFOREGROUND
ExecReload=/opt/rh/httpd24/root/usr/sbin/httpd-scl-wrapper $OPTIONS -k graceful
ExecStop=/opt/rh/httpd24/root/usr/sbin/httpd-scl-wrapper $OPTIONS -k graceful-stop
# 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
PrivateTmp=true

[Install]
WantedBy=multi-user.target
[root@dev1-myeg system]#

To this :


Code:
[root@dev1-myeg system]# cat httpd.service
[Unit]
Description=The Apache HTTP Server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=notify
EnvironmentFile=/usr/local/apache-2.4.33/bin/httpd
ExecStart=/usr/local/apache-2.4.33/bin/httpd $OPTIONS -DFOREGROUND
ExecReload=/usr/local/apache-2.4.33/bin/httpd $OPTIONS -k graceful
ExecStop=/bin/kill -WINCH ${MAINPID}

# 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
PrivateTmp=true

[Install]
WantedBy=multi-user.target
[root@dev1-myeg system]#

I then killed the currently running httpd process, to test if the script works. I get this error when I start the script :


HTTP process killed :


Code:
[root@dev1-myeg system]# ps -aux | grep http
root      7272  0.0  0.0 112708   984 pts/2    S+   16:44   0:00 grep --color=auto http

Starting the httpd service after it had been killed :



Code:
[root@dev1-myeg system]# systemctl start httpd.service
Warning: httpd.service changed on disk. Run 'systemctl daemon-reload' to reload units.
Job for httpd.service failed because a configured resource limit was exceeded. See "systemctl status httpd.service" and "journalctl -xe" for details.

I then edit the script to this (edited the command to start httpd) :


Code:
[root@dev1-myeg system]# cat httpd.service
[Unit]
Description=The Apache HTTP Server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=notify
EnvironmentFile=/usr/local/apache-2.4.33/bin/httpd
#ExecStart=/usr/local/apache-2.4.33/bin/httpd $OPTIONS -DFOREGROUND
ExecStart=/usr/local/apache-2.4.33/bin/httpd -k start
ExecReload=/usr/local/apache-2.4.33/bin/httpd $OPTIONS -k graceful
ExecStop=/bin/kill -WINCH ${MAINPID}

# 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
PrivateTmp=true

[Install]
WantedBy=multi-user.target
[root@dev1-myeg system]#

Trying to stop the service after the error :


Code:
[root@dev1-myeg system]# systemctl stop httpd.service
Warning: httpd.service changed on disk. Run 'systemctl daemon-reload' to reload units.

Still get error when trying to start the service :


Code:
[root@dev1-myeg system]# systemctl start httpd.service
Warning: httpd.service changed on disk. Run 'systemctl daemon-reload' to reload units.
Job  for httpd.service failed because a configured resource limit was  exceeded. See "systemctl status httpd.service" and "journalctl -xe" for  details.

Trying to reload httpd :


Code:
[root@dev1-myeg system]# systemctl daemon-reload httpd.service
Invalid number of arguments.

Checking the output from httpd status :


Code:
[root@dev1-myeg system]# systemctl status httpd.service
â- httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: failed (Result: resources)

Dec 16 16:42:21 dev1-myeg.int.myeg.com.my systemd[1]: Failed to load environment files: Argument list too long
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my systemd[1]: httpd.service failed to run 'start' task: Argument list too long
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my systemd[1]: Failed to start The Apache HTTP Server.
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my systemd[1]: Unit httpd.service entered failed state.
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my systemd[1]: httpd.service failed.
Dec 16 16:44:35 dev1-myeg.int.myeg.com.my systemd[1]: Failed to load environment files: Argument list too long
Dec 16 16:44:35 dev1-myeg.int.myeg.com.my systemd[1]: httpd.service failed to run 'start' task: Argument list too long
Dec 16 16:44:35 dev1-myeg.int.myeg.com.my systemd[1]: Failed to start The Apache HTTP Server.
Dec 16 16:44:35 dev1-myeg.int.myeg.com.my systemd[1]: httpd.service failed.
Warning: httpd.service changed on disk. Run 'systemctl daemon-reload' to reload units.
[root@dev1-myeg system]#

This is the output from journalctl -xe :


Code:
-- Logs begin at Tue 2019-12-10 05:01:01 +08, end at Mon 2019-12-16 17:40:02 +08. --
Dec 16 16:42:01 dev1-myeg.int.myeg.com.my systemd[1]: Started Session 133274 of user root.
-- Subject: Unit session-133274.scope has finished start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit session-133274.scope has finished starting up.
--
-- The start-up result is done.
Dec 16 16:42:01 dev1-myeg.int.myeg.com.my CROND[7051]: (root) CMD (cd /usr/local/apache31-MYEG/htdocs/myeg_new_ui && php artisan get:survey > /usr/local/apache31-MYEG/logs/getsurvey-cron.lo
Dec 16 16:42:02 dev1-myeg.int.myeg.com.my postfix/pickup[6538]: 34C8D479D7F: uid=0 from=<root>
Dec 16 16:42:02 dev1-myeg.int.myeg.com.my postfix/cleanup[4839]: 34C8D479D7F: message-id=<20191216084202.34C8D479D7F@dev1-myeg.int.myeg.com.my>
Dec 16 16:42:02 dev1-myeg.int.myeg.com.my postfix/qmgr[5740]: 34C8D479D7F: from=<root@dev1-myeg.int.myeg.com.my>, size=2539, nrcpt=1 (queue active)
Dec 16 16:42:02 dev1-myeg.int.myeg.com.my postfix/local[4841]: 34C8D479D7F: to=<root@dev1-myeg.int.myeg.com.my>, orig_to=<root>, relay=local, delay=0.41, delays=0.39/0/0/0.01, dsn=5.2.2, st
Dec 16 16:42:02 dev1-myeg.int.myeg.com.my postfix/cleanup[4839]: 3B9CC47C211: message-id=<20191216084202.3B9CC47C211@dev1-myeg.int.myeg.com.my>
Dec 16 16:42:02 dev1-myeg.int.myeg.com.my postfix/qmgr[5740]: 3B9CC47C211: from=<>, size=4538, nrcpt=1 (queue active)
Dec 16 16:42:02 dev1-myeg.int.myeg.com.my postfix/bounce[6960]: 34C8D479D7F: sender non-delivery notification: 3B9CC47C211
Dec 16 16:42:02 dev1-myeg.int.myeg.com.my postfix/qmgr[5740]: 34C8D479D7F: removed
Dec 16 16:42:02 dev1-myeg.int.myeg.com.my postfix/local[4841]: 3B9CC47C211: to=<root@dev1-myeg.int.myeg.com.my>, relay=local, delay=0.02, delays=0.01/0/0/0.01, dsn=5.2.2, status=bounced (ca
Dec 16 16:42:02 dev1-myeg.int.myeg.com.my postfix/qmgr[5740]: 3B9CC47C211: removed
Dec 16 16:42:15 dev1-myeg.int.myeg.com.my graylog-collector-sidecar[3251]: time="2019-12-16T16:42:15+08:00" level=error msg="[UpdateRegistration] Failed to report collector status to server
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my polkitd[3254]: Registered Authentication Agent for unix-process:7087:779850084 (system bus name :1.269220 [/usr/bin/pkttyagent --notify-fd 5 --fall
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my systemd[1]: Failed to load environment files: Argument list too long
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my systemd[1]: httpd.service failed to run 'start' task: Argument list too long
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my systemd[1]: Failed to start The Apache HTTP Server.
-- Subject: Unit httpd.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit httpd.service has failed.
--
-- The result is failed.
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my systemd[1]: Unit httpd.service entered failed state.
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my systemd[1]: httpd.service failed.
Dec 16 16:42:21 dev1-myeg.int.myeg.com.my polkitd[3254]: Unregistered Authentication Agent for unix-process:7087:779850084 (system bus name :1.269220, object path /org/freedesktop/PolicyKit
Dec 16 16:42:23 dev1-myeg.int.myeg.com.my graylog-collector-sidecar[3251]: time="2019-12-16T16:42:23+08:00" level=error msg="[RequestConfiguration] Fetching configuration failed: Get http:/
Dec 16 16:42:55 dev1-myeg.int.myeg.com.my graylog-collector-sidecar[3251]: time="2019-12-16T16:42:55+08:00" level=error msg="[UpdateRegistration] Failed to report collector status to server
Dec 16 16:43:01 dev1-myeg.int.myeg.com.my systemd[1]: Started Session 133275 of user root.
-- Subject: Unit session-133275.scope has finished start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit session-133275.scope has finished starting up.
--
-- The start-up result is done.
Dec 16 16:43:01 dev1-myeg.int.myeg.com.my CROND[7144]: (root) CMD (cd /usr/local/apache31-MYEG/htdocs/myeg_new_ui && php artisan get:survey > /usr/local/apache31-MYEG/logs/getsurvey-cron.lo
Dec 16 16:43:02 dev1-myeg.int.myeg.com.my postfix/pickup[6538]: 36908479D7F: uid=0 from=<root>
Dec 16 16:43:02 dev1-myeg.int.myeg.com.my postfix/cleanup[4839]: 36908479D7F: message-id=<20191216084302.36908479D7F@dev1-myeg.int.myeg.com.my>
lines 1-48/1435 3%


Please help me debug this, as I am not sure where to start.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

httpd error

I installed FreeBSD6.x and apache2.x using gzip the tar files.i then gave ./configure command.It is know that by default apache2 will be created in /usr/local/apache2 but when i give ./configure command apache2 is not created and iam not able to execute apachectl start it says command not... (2 Replies)
Discussion started by: kumarangopi
2 Replies

2. Linux

splashy starting up error

Hi eveyone and Happy Holidays, My problem is starting splashy in fedora 8 what i have done is:- installed splashy with no errors edited grub removed rhgb and added quiet vga=791 splash set default theme with command splashy_config -s default no errors added /sbin/splashy boot in... (4 Replies)
Discussion started by: dave123
4 Replies

3. AIX

Error when compile httpd 2.2.8 on AIX 5.2

Hi everybody, I tried to compile httpd-2.8.8 on AIX 5.2. After downloading the Source file I run the configure as following: >> CC=gcc ./configure --prefix=/usr/local/apache After that i run the command make, but it failed. Below are last several lines of stdout of the make command: lo... (7 Replies)
Discussion started by: aldowsary
7 Replies

4. Slackware

I/O Error on starting firefox

I was trying to open the port for my ftp end also IŽve triedto start firefox and so i received the following error: Input / Output Error. When i try to start that one in console i receive the following: No Protocol Especified No Protocol Especified Error: Cannot open display: :0,0 (1 Reply)
Discussion started by: darkpirate
1 Replies

5. Web Development

Httpd not starting

I compiled apache 2.2.15 from source and installed it. When I try to start it, its not coming up. # ./httpd -k start # echo $? 1 # ps -ef | grep httpd | grep -v grep # # ./httpd -v Server version: Apache/2.2.15 (Unix) Server built: Dec 13 2013 04:31:41When I run it in gdb I am... (4 Replies)
Discussion started by: chacko193
4 Replies

6. Red Hat

Httpd service not starting... Error "Documentroot must be a directory"

I am working with CentOS 6.5. Indeed the document root /var/www/html is a directory and it is a mount point of one file system (not NFS) I observed, if I unmount that file system, I could able to start httpd. Is it restricted in CentOS 6.X that the Documentroot can not be a mount point? ... (5 Replies)
Discussion started by: atanubanerji
5 Replies

7. UNIX for Dummies Questions & Answers

How to grep a line not starting with # from a file (there are two lines starting with # and normal)?

e.g. File name: File.txt cat File.txt Result: #INBOUND_QUEUE=FAQ1 INBOUND_QUEUE=FAQ2 I want to get the value for one which is not commented out. Thanks, (3 Replies)
Discussion started by: Tanu
3 Replies

8. UNIX for Beginners Questions & Answers

Systemctl enable failing

i started this command and got this error messages on red hat 7.0 # systemctl enable httpd.service Failed to execute operation: No such file or directory #systemctl enable mysql.service Failed to execute operation: Too many levels of symbolic links what should i do as this command... (2 Replies)
Discussion started by: DOkuwa
2 Replies

9. Shell Programming and Scripting

How to integrate all the systemctl commands into a shell script to verify any daemon/agent service?

Hi, Can we integrate all the systemctl command into a shell script to verify any service with all the options of systemctl if service integrate with the operating system service management tools to deliver their functionality. sudo systemctl start <service_name> sudo systemctl stop... (1 Reply)
Discussion started by: Mannu2525
1 Replies

10. UNIX for Advanced & Expert Users

How to create custom options of my own in systemctl Linux?

Hello All, Greetings!! I was trying to create a custom option in systemctl like its out of the box options eg--> status, stop, start, restart, I have tried searching in google but didn't find anything related to it. Basically I would like to create a custom option which is related to... (9 Replies)
Discussion started by: RavinderSingh13
9 Replies
All times are GMT -4. The time now is 05:59 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy