Adam Dunn homered and the White Sox went deep four times to back a solid start by Jake Peavy in a 5-2 victory over the Kansas City Royals on Wednesday.
Tyler Flowers, Dayan Viciedo and Alexi Ramirez also connected, and the White Sox made it two straight wins to start the season after dropping 12 of 18 to Kansas City a year ago.
The Royals, full of optimism after posting the majors' best record in spring training, will try to avoid a season-opening sweep Thursday.
Peavy (1-0) allowed one earned run and four hits in six innings, striking out six and walking none.
Dunn had two hits and scored twice. He led off the second with his 407th home run -- tying Duke Snider for 48th place on the career list -- and Flowers opened the third with his second shot.
Viciedo made up for his gaffes in left field with a big swing in the fourth, hitting a two-run drive that made it 4-1. The Royals scored a run in the sixth and loaded the bases against the Chicago bullpen in the seventh, only to come away empty-handed. Ramirez got the lead back up to 5-2 with a drive leading off the bottom half off Luke Hochevar, and the White Sox hung on from there.
Peavy did his part, outpitching Ervin Santana (0-1) after Chris Sale shut down the Royals in a 1-0 victory Monday in the opener.
The three-time All-Star re-signed with Chicago after a rebound season last year and started this one on a strong note. Five relievers combined to shut down the Royals, with Addison Reed working the ninth for his second save.
Santana (0-1), a mainstay in the Angels' rotation for eight seasons, also went six innings and gave up four runs and five hits. He struck out eight and walked one, but the long ball did him in.
Kansas City is counting on Santana to help solidify the rotation along with fellow newcomers James Shields and Wade Davis and a re-signed Jeremy Guthrie, moves that helped spark a surge of hope after the Royals finished with a losing record for the 17th time in 18 years.
But Santana got off to a shaky start.
Dunn put the White Sox ahead 1-0 with a 431-foot line drive to the seats in right-center, but the White Sox quickly gave it back.
Ramirez, the shortstop, was charged with an error even though Viciedo actually dropped Chris Getz's pop fly in a collision with one out. Then with two out, Viciedo misplayed Alcides Escobar's single, allowing Getz to score from first.
Flowers, who homered Monday, connected again leading off the third, and Viciedo gave them a cushion with his two-run drive in the fourth, just beyond a leaping Alex Gordon's glove in left.
The Royals got a run off Peavy in the sixth when Gordon doubled past a diving Viciedo and scored from third on a groundout by Billy Butler, but they couldn't come through after they loaded the bases against the White Sox bullpen in the seventh.
Donnie Veal relieved Jesse Crain with two on and one out and walked pinch hitter Miguel Tejada before retiring Gordon on a fly to shallow left. Matt Lindstrom came in and got Escobar to fly to right, ending the threat.