Question 1, what disto do you use. IMORTANT becuase I need to know what type of init scripts you use V or BSD.
You probably want to use inetd to startup your services not cron. Cron is not meant for what you are trying to do. It's meant to run a program at a specefic time. Like log rotation, sychronizing your clock, stuff like that. Inetd, is what your want to use. Inetd basically listens on all ports you tell it to and then when someone tries to connect to the port, lauches the appropraite service like httpd. Much more effecient then to have a buch of services running on your computer all the time, instead of just the one inetd.