The game is Pakistan's first Test at home since a militant attack on Sri Lanka's team bus in Lahore in 2009. Eight people died, while a number of players and officials were wounded.
It resulted in Pakistan then playing their home international games in the United Arab Emirates.
Speaking ahead of the match in Rawalpindi, Pakistan captain Azhar Ali told Arab News: "It's a historic occasion and all the players are excited to be part of this.
"We thank the Sri Lankan team for coming here. The last Test was also against them, so their visit will send a strong message to the world that we need to support each other.
"Cricket is the biggest thing and, if the youngsters can't see matches here, then it's a big loss for our cricket and budding players."
And it was 16-year-old quick Naseem Shah who led the way, with Sri Lanka reduced to 202 for five before bad light ended play 48 minutes early.
Karunaratne made 59 before Shaheen Afridi trapped him lbw, then Fernando followed for 40, caught by Haris Sohail off Shah.
And the middle order could not get going as Sri Lanka slipped to 127 for four after Kuhal Mendis made just 10, caught by Mohammad Rizwan off Usman Shinwari, and Dinesh Chandimal was bowled by Mohammad Abbas for two.
Shah finished with figures of two for 51, putting his team in the ascendancy on a day when 22.5 overs were lost.
And rain is forecast at various intervals over the next three days, suggesting it could prove difficult for either side to force a result.