Petacchi has won four stages of the Tour de France in his career
Alessandro Petacchi is out of the Tour de France and the Olympics after the Court of Arbitration for Sport (CAS) upheld his ban for a doping offence.
The Italian Olympic Committee imposed the ban after Petacchi tested positive for an excessive amount of salbutamol, which he is allowed to take for asthma.
But Italian cycling chiefs backed Petacchi, who claimed the result was because of human error.
The CAS upheld the one-year ban, which means he cannot race until 31 August.
Petacchi, 34, returned a "non-negative" test for salbutamol during last year's Giro d'Italia.
"Non-negative" means a substance is found which may be legal if the rider has a medical certificate.
Petacchi does have a medical certificate, which explains he is allowed to use a certain amount of salbutamol in his inhaler.
Nonetheless, the Italian Olympic Committee and the World Anti-Doping Agency sought a two-year ban.
The Italian Cycling Federation backed Petacchi and said the drug use was only for "therapeutic" needs and "did not constitute a violation of the existing rules", meaning the case had to be settled by the CAS.
In a statement, the CAS said they had upheld the ban but backdated it to the start of November 2007 and took into account the two months the Italian had already served.
"The arbitrators were satisfied that the adverse analytical finding in this case was the result of Alessandro Petacchi taking too much salbutamol on the day of the test but that the overdose was not taken with the intention of enhancing performance," the CAS statement said.