The deal includes club options for the 2020 and 2021 seasons.
Eaton, 26, hit .300 with one home run, 35 RBIs and 76 runs in 123 games last season, his first in Chicago. The outfielder played his first two MLB seasons with the Arizona Diamondbacks.
"Adam serves as a catalyst, brings a spark of energy to the ballpark each and every day and helps ignite our offense," White Sox general manager Rick Hahn said, according to the team's website. "He provided everything we look for in a leadoff hitter, a centerfielder and a competitor after joining us last season. We expect him to be an important part of this team's success moving forward and are very pleased we were able to reach this agreement to keep him in a White Sox uniform for potentially the next seven seasons."
The White Sox finished 73-89 last year, good for fourth in the AL Central. It was the team's second consecutive losing season.
Chicago opens its 2015 regular season on April 6 at the Kansas City Royals.
- Stanley Kay