Here's another easy (and inexpensive) homemade cleaner. It really does work! (You might need to repeat the process a few times for stubborn clogs.)
1/2 C. baking soda
1 C. vinegar
1 teapot boiling water
1. Pack the drain with baking soda, then pour in the vinegar.
2. Keep the drain covered for 10 minutes, then flush it out with boiling water.
The last time we used this on our shower drain we had to repeat the process three times. (It was very badly clogged.) On the plus side, the foaming bubbles also conveniently cleaned the shower floor!