I have seen several treatments for redoing vinyl floors, and helped a friend with one. Clean the floor very throughly with tsp and rinse well. Prime the floor with Kilz primer, the original shellac based formula. This is designed specifically for nonporous surfaces. Very whiffy, ventilate well. Follow with latex paints and seal with several coats of polyurethane. This cannot be considered a permanent solution, but should last several years. I would also look at some of the new outdoor craft paints, like Durable Colors from Plaid. They apparently do not need the poly seal.
I also saw an interesting treatment in a magazine where a woman who owned a bed and breakfast pasted down rectangles torn from brown paper bags on her vinyl floor, added rubber stamp accents, then sealed it with polyurethane. Very cheap, and looked like a stone floor. It was interesting enough that I wish I had a floor to try it on.