lawlRedneck

May 27, 2010

nerdcred++

Filed under: nerdery —— elmidgeto @ 6:41 am

Well, once again, I needed to find a solution to a non-existent problem. Well, almost non-existent.

The other day we had a rather unique error when trying to restart an Apache process. A stop command was issued, the process died off in the process list, but an orphaned session was keeping the http port tied up, so Apache could not restart.

What to do?

Well, given my awakening and increasing knowledge of the various commands and utilities in Linux, the only solution was to over-engineer a fully automated solution I could incorporate into a maintenance script.

With no further adieu, I give you a completely hands off way to kill the process holding on to a given port.

sudo -S kill -9 `sudo -S netstat -lpn < $SFL | grep :80 |  awk ' { split($7,pid,"/"); printf("%s",pid[1]) } '` < $SFL

$SFL is the absolute location of a file containing the sudo password of the account used to run the command(s).

Fairly simple, and overly engineered solution, so the only proper title was of course, nerdcred++. Anyone else have a more elegant solution that can be used in an automated script, and without the httpd.pid being in existence?

lawlRedneck is proudly powered by WordPress running on http://blogs.dootdoot.com.
Create a new blog and join in the fun! Entries (RSS) and Comments (RSS).