Lyon decimated Bangladesh's top order with four consecutive lbws before Sabbir Rahman and Mushfiqur Rahim put on 105 for the sixth wicket to steady the hosts in Chittagong.
Monsoon rain could disrupt play on the second day, putting pressure on Steve Smith's men to polish off Bangladesh's tail early as they seek a win to equalise the two-Test series.
Australia lost their first-ever Test against Bangladesh last week and dropped a fast bowler in Chittagong to strengthen their spin attack on a turning wicket.
Lyon disposed of the four opening batsman before claiming his fifth in the last session when Sabbir was stumped.
But skipper Mushfiqur Rahim remains an obstacle for the tourists, unbeaten on 62 and patiently holding together the innings.
Nasir Hossain, the last recognised batsman, was the other not out player with 19 at close of play at the Zahur Ahmed Chowdhury Stadium.
Rahim and Sabbir displayed contrasting styles in their stand, with Sabbir playing adventurous shots and Rahim anchoring.
Sabbir scored his 50 off only 62 balls but slowed as Rahim became more confident, smashing his own half-century off 124 balls.
Sabbir dispatched Lyon for a six over long-on and Rahim hit two consecutive fours against Steve O’Keefe.
Lyon, the first off-spinner to open the Test bowling for Australia since 1938, finally removed Sabbir in the 82nd over when he was stumped by Mathew Wade.
Lyon finished with figures of five for 77 off 28 overs. His scalps included Tamim Iqbal, one of the architects of Bangladesh's historic victory over Australia, who fell for just nine on his home ground.
He also sent back Mominul Haque, who boasts the highest batting average of the Bangladesh team.
Left-arm spinner Ashton Agar got the other wicket for Australia, as a three-pronged spin attack took the battle to the hosts.
Agar dismissed Shakib Al Hasan, whose all-round heroics earned him man of the match in the first Test, for 24.
Rahim had won the toss and opted to bat first on what looked like a spinners' paradise. Bangladesh brought in Mominul in place of pace bowler Shafiul Islam.
Australia picked spin bowling all-rounder Steve O'Keefe, who replaced injured fast bowler Josh Hazlewood.
Hilton Cartwright replaced out-of-sorts batsman Usman Khawaja, who scored just one run each in his two innings in the first Test.