Shanaka takes two wickets in the morning session to leave the hosts in trouble before rain ended the day's play.
Pujara stands firm as India struggle against Sri Lanka on rain-hit second day in Kolkata
Cheteshwar Pujara stood firm against a relentless Sri Lankan pace attack as India stumbled to 74-5 before rain cut short the second day of the first Test on Friday.
Fast bowler Dasun Shanaka struck twice on a cloudy morning session at Kolkata's Eden Gardens as the hosts struggled to improve on their overnight 17-3.
Pujara, batting on 47, and wicketkeeper-batsman Wriddhiman Saha, on six, were at the crease when rain halted play for the day before lunch.
- The Ashes: Paine handed surprise recall as Australia ring changes for first two Tests
- T10 Cricket League: Wasim Akram backs Mohammad Amir to star for Maratha Arabians
- UAE v Zimbabwe A: UAE ready to host World Cup Qualifier should Zimbabwe unrest affect original plans
Pujara's overnight partner Ajinkya Rahane became Shanaka's first victim, caught behind for four after a tentative 21-ball stay at the crease.
Shanaka, playing just his second Test after his debut against England last year, also got Ravichandran Ashwin for four, putting the hosts in trouble at 50-5.
Pujara, starting the day on eight, hit out when he could, finding the boundary nine times during his 102-ball stay so far.
Meanwhile Suranga Lakmal, who took three wickets in six maiden overs on Thursday, conceded his first runs after 46 balls to return figures of 3-5.
Lakmal's victims included India skipper Virat Kohli on day one, when adverse weather allowed only 11.5 overs to be played.
Twenty-one overs were bowled on the second day as the wet start to the three-Test series continued.