Captain Nicolae Stanciu's magnificent long-range strike gave Romania, backed by the vast majority of the Munich crowd, a first-half lead in their Group E opener.
Razvan Marin's shot from distance then skipped under Lunin as Romania turned the screw with two more goals before the hour, Denis Dragus tapping home the third.
"This shirt means everything to me and to score at the Euros, you can't do more than that. To also win in the manner we did, that's just incredible," said Stanciu.
"I know myself and know my team-mates. I know we're not going to celebrate after this win, we're only going to concentrate on Belgium now."
It was a disastrous start to the campaign for Ukraine, who must quickly regroup with games to follow against Slovakia and Belgium.
"Unfortunately nobody expected this result," said Ukraine coach Serhiy Rebrov. "We didn't do good enough."
"We all have emotions. Everybody is unhappy," he added.
Ukraine players emerged onto the pitch with Ukrainian flags draped over their shoulders in the country's first game at a major tournament since the Russian invasion in February 2022.
They missed out on qualifying for the World Cup two years ago but secured a fourth successive appearance at the Euros, despite the backdrop of the largest European conflict since World War II.
Three years ago Ukraine reached the quarter-finals under Andriy Shevchenko. But a lot has changed since for a country ravaged by war, with his former striker partner Rebrov now in charge.
Rebrov confided that simply taking part in Germany, where more than a million Ukrainians have found refuge, is an important step for the nation.
He said he had received countless messages from people back home, including those fighting on the front line, and that it was up to his team to "show the spirit" of Ukraine in troubled times.
Lunin struggles
Romania advanced through qualifying unbeaten but had not won in four games this year ahead of their return to the big stage after missing out on Euro 2020.
Their last and only previous win at the tournament came when they reached the quarter-finals of Euro 2000.
Ukraine probed early on a warm afternoon at the Allianz Arena without success and paid the price for inviting pressure on themselves that led to a misplaced clearance from Lunin.
The Real Madrid stopper played the ball straight to Dennis Man, who slid a pass across for Stanciu to rifle a sensational 20-yard strike into the top corner.
Lunin was immediately consoled by Oleksandr Zinchenko, but he was nearly beaten again minutes later by Stanciu, this time directly from a corner.
After a deflected Man effort fizzed just wide, Stanciu's in swinging corner glanced off the bar with the back pedalling Ukraine 'keeper flapping at thin air.
Worse was to come for Lunin as following a swift Romanian counter-attack, Marin fired a crisp low strike from 25 yards that appeared to deceive him for pace eight minutes into the second half.
Dragus effectively wrapped up the victory shortly after when he prodded in as Man knocked the ball across the six-yard box following a well-worked short corner.
Romania goalkeeper Florin Nita saved well from Georgiy Sudakov late on before substitute Roman Yaremchuk's lob grazed the bar on its way over, encapsulating what was a day to forget for Ukraine.