Edinburgh gained revenge for last week's defeat by Bath, whose Heineken Cup qualification hopes have now ended.
Full-back and captain Chris Paterson scored all the hosts' points, landing his first penalty after two minutes.
Nicky Little replied and tied the scores again before half-time after Paterson restored the lead.
Edinburgh dominated after the blizzard that hit Murrayfield, and half-time, had elapsed, but a Paterson penalty was enough to overcome a lacklustre Bath.
The Scottish side, who now must win their last two games to qualify from Pool 4, took the lead when Paterson, making his 50th Heineken Cup appearance, slotted a simple penalty after the Bath defence went over the top.
Paterson scored three penalties for the home side
Little had an opportunity to level the scores three minutes later, but his kick from wide on the left struck the far post before being cleared.
Edinburgh dominated the early possession but failed to make much headway, with their passing across the line being too flat to fox the English side's defence.
A scrummage infringement by Kyle Traynor gave Little another opportunity after 21 minutes and this time the Bath fly-half made no mistake from in front of the posts.
Heavy snow made handling difficult and Little missed another chance with a penalty before making no mistake from 45 metres after half an hour.
Handling in the ruck allowed Paterson to reply from in front of the posts two minutes later as Edinburgh's Ben Cairns was forced off with a head knock, to be replaced by Mark Robertson.
The blizzard had passed in time for the second half to kick off, but both sides adopted a kicking game designed to reduce the errors.
Edinburgh started to dominate possession but despite the hosts being camped in the opposing 22, Bath held firm.
A knock-on eventually gave Paterson the chance to edge Edinburgh ahead and he made no mistake with his penalty attempt after 63 minutes.
Bath had rarely been in the Edinburgh half after the break but won a penalty straight from the restart, only for replacement Ryan Davis's kick to fall short.
Another infringement in the scrum gave Bath another opportunity from long range, but Jack Cuthbert's effort drifted wide.
Edinburgh's Phil Godman also fell short with a penalty effort from 45 metres, but the home side eased to victory.
Edinburgh coach Rob Moffat: "It was a good win for us. We were a bit disappointed last week down at Bath. I don't think we played as well as we could.
"I thought we started the game well today, but the thing we did not do was get an early try as they did last week.
"What changed the game was the snow. It was horrendous for 20 minutes, but in the second half we controlled the game.
"We did not score a try this week or this week, but we have the players and that will come. Bath are not a bad side and know how to defend."
Bath coach Steve Meehan: "Edinburgh's second half execution won them the game. They retained possession in the right areas by being more precise.
"I have never seen a game played with that amount of snow falling. Fijian Nicky Little looked at home.
"The maximum points we could now get would be 16. That won't get us into the top eight who qualify.
"We want to be in the Heineken Cup every season and, if we're to bounce back for next season, we have to move up the Premiership table."
Edinburgh: Paterson, Houston, Cairns, De Luca, Visser, Godman, Laidlaw, Traynor, Ford, G. Cross, S. Turnbull, C. Hamilton, MacDonald, Rennie, Newlands. Replacements: Robertson for Cairns (32), Thompson for De Luca (60), Jacobsen for Traynor (49), MacKenzie for C. Hamilton (60), Callam for Rennie (60). Not Used: Miven, Young, Samson.
Bath: Abendanon, Stephenson, Carraro, Hape, Cheeseman, Little, Claassens, Flatman, Dixon, Wilson, Hooper, Short, Beattie, Salvi, Watson. Replacements: Cuthbert for Abendanon (66), Davis for Little (66), Bemand for Claassens (76), Mears for Flatman (55), Bell for Wilson (60), Grewcock for Hooper (55), Skirving for Beattie (60). Not Used: Catt.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.