The Sharks traded a conditional draft pick to Nashville for Hannan before Wednesday's trade deadline.
Hannan had no goals, one assist and a minus-11 rating in 29 games for the Predators this season. Nashville will get a sixth-round pick if Hannan appears in a playoff game or a seventh-round pick if he does not. San Jose entered the day in sixth place in the Western Conference.
Hannan played eight seasons for the Sharks before leaving as a free agent following the 2006-07 season. He effectively replaces Douglas Murray on the roster. Murray was traded to Pittsburgh last week for two second-round picks.
Hannan, 34, has 33 goals and 165 assists in 937 career games with San Jose, Nashville, Colorado, Calgary and Washington.
ESPN.com's Pierre LeBrun and The Associated Press contributed to this report.