A luxury cruise ship stranded off Mexico's coast in the Pacific with nearly 4,500 people on board, including 24 Australians, is being towed to California, more than 24 hours after an engine fire broke out.
No one was injured but the ship had no air conditioning or hot water and was running low on food, so the passengers were eating canned crab meat and Spam dropped in by military helicopters.
What began as a seven-day cruise to the picturesque Mexican Riviera was thrown into chaos when an engine-room fire cut power to the 290-metre vessel and set it adrift off Mexico's Pacific coast about 6am on Monday (0100 AEDT Tuesday).
Tugboats were scrambled to rescue the "Carnival Splendor," some 320 kilometres south of San Diego, after the fire left the ship with minimal power, said Carnival Cruise Lines.
The ship began moving again on Tuesday night after the first of several Mexican tugboats began pulling it towards San Diego, where it was expected to arrive on Thursday night (Friday AEDT), Carnival Cruise Lines said in a statement.
News that makes sense
Your trusted source for staying up-to-date with the world around you. Get free daily news updates and analysis, straight to your inbox.
The fire erupted in the aft engine room and was extinguished with no injuries to guests or crew - but the ship, carrying 3,299 passengers and 1,167 crew, was left without key services, including air conditioning, hot food services and telephones.
Carnival spokeswoman Joyce Oliva said the ship's command was able to communicate with outsiders on a backup system.
"Conditions on board the ship are very challenging and we sincerely apologise for the discomfort and inconvenience our guests are currently enduring," Carnival president Gerry Cahill said.
Australia's Department of Foreign Affairs and Trade (DFAT) consular staff at the Australian embassy in Mexico City were in contact with the cruise company and were on standby to help the 24 Australians aboard the ship.
US Navy helicopters were ferrying 30 tonnes of supplies, including the crab meat, croissants, Pop Tarts, Spam and other items, to the ship late Tuesday.
The Seahawk helicopters were taking off with dangling palettes of supplies from the USS Ronald Reagan, an aircraft carrier diverted from training manoeuvres to help.
The tugboats were originally set to take the Splendor to the Mexican coastal city of Ensenada, but the cruise line changed its plans and will attempt to have it towed to San Diego, where hotel and flight arrangements would await the passengers, Carnival said.
If the process moves too slowly, it may still be taken to Ensenada, the statement said.
Coast Guard Petty Officer Kevin Metcalf said the tugs and a Coast Guard cutter escort would have to move slowly because the ship was so big.
After the fire, passengers were first asked to move from their cabins to the ship's upper deck, but eventually allowed to go back to their rooms.
The ship's auxiliary power allowed for toilets and cold running water, while bottled water and cold food were provided, the company said.
The ship, which first entered service in July 2008, was on a seven-day Mexican Riviera cruise which started on Sunday in Long Beach, California.
It was about 320km south of San Diego at the time of the engine fire, according to the statement from Miami-based Carnival.
It began drifting about 90km off shore.
Passengers will get a full refund, their travel expenses paid and will receive another cruise equal to the amount paid for their troubled trip, the company said.

