Pakistan's seamers justified captain Inzamam-ul Haq's decision to field first as they ripped through the top and middle-order to reduce the home side to 56-7 by the 21st over.
Tillakaratne Dilshan's gritty 48 not out lent the score some respectability in the company of tail-enders, adding 42 with Nuwan Kulasekara (11) for the eighth wicket and 25 for the ninth with Lasith Malinga (15).
Dilshan faced 75 deliveries and hit just three fours as the Pakistani bowlers took turns to torment the batting line-up on a two-paced pitch.
Rana Naved was the most successful bowler with 3-23 while other pacemen Rao Iftikhar and Abdul Razzaq chipped in with two wickets each.
Mohammad Asif was lucky to get out left-hander Kumar Sangakkara (one), who was adjudged leg-before although replays showed that the ball pitched well outside leg stump.
Leg-spinner Shahid Afridi claimed the wickets of Kulasekara and Malinga to stem the rearguard action and Sri Lanka were all out in the 45th over.
Mahela Jayawardene led Sri Lanka in the absence of captain Marvan Atapattu, who was ruled out of the series with a back injury.
Atapattu was the latest addition to the injury list which includes former captain Sanath Jayasuriya, veteran seamer Chaminda Vaas and emerging pace bowler Ruchira Perera.
The first match was abandoned on Friday due to rain while the third and final match will be held here on Wednesday.
The One-dayers will be followed by a two-Test series.