If, however, you have long hair (as I do), every once in a while, something must be done to keep your drain working freely. Firstly, I use drain guards/hair traps religiously when I wash my hair, to keep most of the hair that I shed from going down into the drain in the first place.
Second, don't be lazy. You can probably clean out a good portion of any caught up hair from you drain fairly easily. No, it won't be the most pleasant of tasks, but mechanical removal is the most environmentally friendly option. If you want to take this one step further, you can buy a snake (a.k.a. an auger) that goes down into your drain/the pipes to clear blockages.
When you have tried to remove any easy to reach blockages, and your water is still draining sluggishly, you can use this recipe for an all-natural drain cleaner. I tried it about a week ago on my seriously slow bathtub drain, and it worked like a charm. A week later, and it's still draining perfectly.
You will need:
1/2 cup baking soda
1 cup distilled white vinegar
1 pot of boiling water
Pour as much of the baking powder down into the drain as possible. Follow with some of the white vinegar. It should start to fizz and bubble. Mix together the rest of the baking soda and vinegar, and pour it slowly down into the drain. If you have a drain plug, cover the drain now. After 15 minutes, (remove your drain plug if you used one) pour the boiling water slowly down into the drain.
It's as simple as that. I did read somewhere that you shouldn't pour boiling water down your drain if you have plastic pipes because they might melt. Instead, just run hot water from your tap. Also, don't do this if you have just tried using a commercial drain opener, as the vinegar can react with the chemicals in the drain opener to create toxic fumes.