I am a beginning web designer and I was wondering how I can build my portfolio. I was thinking about calling different places like car repair etc and if they don't have a site I'll do it for free. But how would I do that, what do I say?

Rather than call, if I were you I'd visit these small businesses in person. Explain what you are trying to do -- build up a portfolio by doing a few free websites. Take a laptop with you and show the owners a few samples of your work. Explain how a website would benefit each individual business.