With that, the Florida Marlins were off and running to their second straight shutout.
"We've been playing very aggressively on the basepaths," Marlins manager Edwin Rodriguez said. "And tonight was a good example. We're not showing the power that we used to show in previous years, but we're compensating that with aggressive baserunning."
The Marlins have eight home runs in 16 games, yet are still off to a 10-6 start, second in the NL East behind Philadelphia.
Bonifacio had two hits and scored from second on Coghlan's slow roller to highlight a four-run Florida second. Nolasco (2-0) gave up four hits, walked one and threw 66 of his 96 pitches for strikes for the Marlins, who have won five of their last six.
"Any time you get an early lead like that and all that run support, you just want to get those guys in the dugout as fast as possible," Nolasco said. "I was just trying to throw as many strikes as I could, get quick innings and get us back in the dugout."
Pittsburgh starter Charlie Morton (2-1) was tagged for six runs on 10 hits in five innings, his ERA more than doubling from 1.64 to 3.33. Matt Diaz had two of Pittsburgh's five hits, including a double.
The Pirates are 3-7 since April 9.
"They were just hitting my slider," Morton said. "It wasn't sinking."
Edward Mujica allowed one hit in the final two innings for Florida, which beat Pittsburgh by the same 6-0 score on Tuesday night.
Morton had allowed five runs -- four earned -- in his first three starts, never giving up more than one in any inning. That changed quickly against the Marlins, who had six straight batters reach with two out in the second and matched their biggest one-inning output of the young season.
Singles by John Buck and Bonifacio got Florida started, and a four-pitch walk to Nolasco loaded the bases. The next batter was Coghlan, who tapped the first pitch toward the right side and beat it out -- all while Bonifacio, Florida's speediest player, had a green light from third base coach Joey Espada and never broke stride on his sprint from second.
"That put us in a bad situation," Pirates manager Clint Hurdle said of the four-pitch walk to Nolasco. "And the one that followed was the one that really dug the hole deeper."
"The ball just wasn't doing what it normally does," Morton said.
Bonifacio -- who was only in the lineup because left fielder Logan Morrison is sidelined with a left foot injury -- and Coghlan struck again in the third, each hitting RBI singles to push the Marlins' lead to 6-0.
That was more than plenty for Nolasco, who hadn't gotten six runs of support since last July 31.
He struck out the side in the fourth, worked another 1-2-3 inning in the fifth, and got help from two defensive gems by Ramirez -- who victimized Pittsburgh third baseman Pedro Alvarez both times.
The Marlins' shortstop fielded a sharp one-hopper by Alvarez behind the second-base bag in the second, then threw from his knee in time for the out. And with two out in the seventh, Ramirez caught a relay throw from Bonifacio, spun and got Buck the ball in time to tag a sliding Alvarez and keep Pittsburgh scoreless.
"We didn't think," Ramirez said. "Just threw. Twice."
The announced attendance was 10,112, though the stadium seemed to hold about half that many people.
Pittsburgh has lost consecutive road games for the first time this season. ... Morrison has four of Florida's eight home runs. No other Marlins player has more than one, though Mike Stanton nearly got his first on a double that bounced high off the wall in right-center in the fifth inning. ... Thursday marks the Pirates' final scheduled appearance at Sun Life Stadium, where they're now 29-43. ... Morton was 2-12 with a 7.57 ERA last season, and was bidding to win three straight decisions for the first time in his career.