Archive for 19 January , 2010
I had never heard about the Tux HTTP server until today. I found out about it the hard way and it took some research to locate what the problem was. I am building a server for internal services running a suite of open source products to allow better collaboration within the organization. Joomla, Xwiki and others. I ran the Software updater to update all the packages and as one of the steps rebooted the server. This was done and I went back to working on the configuring Tomcat with Xwiki and never gave the web server on port 80 a thought.
Now it wasn’t until I was going to show the boss the software installations I had now done and when he connected to port 80 he got the Oracle XE license page. Very strange. I shut down XE and the page disappeared but I got a 404 error, I smell a rat. I tried and started Apache but it kept failing with an error about socket in use; address already in use make_sock could not bind to address 80. Back to basics of troubleshooting. What was going on I asked myself.
I checked my Apache config, stopped the Tomcat server and still the problem existed. I tried fuser and got nothing. It did not find any process running that had Port 80 held. Now I was getting curious. I checked Netstat using netstat -an and nothing showed up. I am guessing you would be a little baffled, I was. I tried to telnet to the port, connected OK and then typed get and had it return a 404 error. So some research on netstat as there must be a way to find this process netstat -lnp and I found an entry for port 80 in use, but its pid is – nothing to find a process. Thankfully I was able to find some information that pointed to the – being an indicator of a kernel process. What a HTTP server in my kernel. Ok that is new, I thought so some further research and I finally found an entry in the dmesg log TUX: 0.0.0.0:80. Off to do a Google search of Tux and I found a piece about Tux the kernel based web server. So I checked, yes its installed. I ran services command and yes its running. So next is to shut it down and disable it from run levels so it cannot start.
Now the idea behind Tux seems petty good. It is apparently very fast for a whole lot of reasons. It is probably very useful, however most of that I am doing is dynamic content and doesn’t need screaming performance. So for now Tux is getting its marching orders until I learn and understand more about it and what it can do and how to integrate it to my dynamic applications. So how did it get started when previously I had Apache running at that port, it appears that Centos updates of which I selected all to update apparently activated Tux for me. Thanks guys.
I hope this may be of use to someone and a lesson learned is that it is hard to keep up with many different products at one time. On the other hand good troubleshooting practices will be of benefit and allow you to learn about and resolve many problems even if you only have a good idea about the product, not expert knowledge.
Se ya round