After winning the toss and deciding to bat first the Sri Lankan captain Dimuth Karunaratne manged to see off the new ball bowlers and is one run away from a half century after just 36.3 overs were possible.
Angelo Mathews was yet to score when bad light stopped play early.
The hosts, who won the opening test in Galle by six wickets, made a watchful start after Karunaratne won the toss and opted to bat after a lengthy delay in the morning.
New Zealand’s seamers had no joy with the new ball and it was left to off-spinner William Somerville to strike the first blow when he dismissed Lahiru Thirimanne for two.
Karunaratne, who struck a match-winning 122 in the second innings in Galle, and Kusal Mendis kept the touring side at bay with a partnership of 50 for the second wicket before the latter fell for 32 to seam bowling all-rounder Colin de Grandhomme.
Both teams made one change from the first test with New Zealand bringing in De Grandhomme for specialist spinner Mitchell Santner.
The hosts drafted in off-spinner Dilruwan Perera for Akila Dananjaya, who was reported by the umpires for a suspect bowling action after his six-wicket match haul in Galle.
Play will start early today.