The Springboks lost eight of 12 Tests last year and there has been media speculation that a series loss to France over three Tests would see coach Allister Coetzee sacked.
But after France trailed just 16-14 on 56 minutes, a penalty try was awarded against them, full-back Brice Dulin got a yellow card and they conceded two more tries.
It was an impressive no-frills win for South Africa, but France should be stronger next Saturday in Durban when seven stars rested after the Top 14 final will be available.
New South Africa skipper Warren Whiteley said: "It was a great start for us," after the team won for only the second time in nine internationals.
"The French put us under a lot of pressure -- especially at the start -- and we really needed to grind it out and get some points on the board.
"We started to get our rhythm so I am really proud of the performance.
"We exited really well, we played in the right areas. But it was a struggle up front, a fight.
"Just really proud of the boys and it has been a great two weeks for us, but by no means is it over for us as we've got two massive Tests against France coming up.
"There is such a good balance within the side at the moment, but we need to keep our feet on the ground and there is still a lot of work to be done."
'Need to improve'
France captain and lock Yoann Maestri said: "It was too difficult today, congratulations to South Africa for a good, good game.
"We hope it will be better for the next game. Next week we need to improve everything."
France had the first opportunity to score, but a fifth-minute penalty attempt from fly-half Jules Plisson drifted across the posts and wide.
Rival playmaker Elton Jantjies got his first shot at goal six minutes later and made no mistake with a close-range penalty.
Jantjies, desperate to shine after a poor 2016 Test season, doubled the lead on 15 minutes with another successful penalty kick.
South Africa, displaying a spirit that was in short supply last year, were camped inside the French half for the first quarter of a tight tussle.
France finally reached the South Africa 22 after 26 minutes and threatened to score until loose forward Louis Picamoles failed to grasp the ball with the tryline in sight.
The first try of the match went to South Africa on 31 minutes with full-back Andries Coetzee the architect and centre Jesse Kriel the scorer.
Debutant Coetzee changed the course of a lateral attack by cutting inside and when tackled, released the ball and quickly regathered it to dart forward.
He passed to Malcolm Marx, who had an outstanding first half bar a few wayward lineout throws, and the hooker sent Kriel over for a score Jantjies converted.
The visitors hit back on 35 minutes when two South Africans and one French player missed a bouncing ball over the tryline before centre Henry Chavancy scored.
Plisson converted before Jantjies slotted his third penalty to leave the home team 16-7 ahead at half-time.
France cut the gap to just two points close to the hour with slick handling taking the ball close to the line and replacement scrum-half Baptiste Serin dummying before diving over.
Plisson converted, but French joy was short-lived as they conceded two tries within a minute soon after.
Dulin was sin-binned for holding back winger Courtnall Skosan in a try-scoring position and a seven-point penalty try was awarded.
Almost immediately, a clever lineout ploy saw Whiteley push a long throw back into the path of scrum-half Ross Cronje, who raced over and Jantjies converted.
A two-point advantage had been transformed into a 30-14 lead and South Africa were on their way to a desperately needed triumph.
Centre Jan Serfontein scored a try after a break from Coetzee and Jantjies completed the scoring by converting for a perfect six-from-six goal-kicking record.