Rescuers have continued searching a sunken cruise ship in the Yangtze River for more than 400 missing people, many of them elderly, but hopes of finding more survivors were fading.

Only 14 people, including the ship's captain, have been found alive since the ship capsized in a freak tornado on Monday night with 456 people on board. Just 19 bodies have been recovered.

Rescuers have not slackened off, even though about 200 divers face difficulties such as cabin doors blocked by tables and beds. There is also the fear that rashly cutting holes in the hull could burst air pockets keeping people alive.

"Although there's lots of work to do, saving people is still being put first," Transport Ministry spokesman Xu Chengguang said.

But some relatives were bracing themselves for the worst.

"Yesterday I still had some hope. The boat is big and the water hadn't gone all the way in. Now, it's been more that 40 hours. I ask you, what do I have left?" said Wang Feng, a 35-year-old wedding photographer whose father was on the ship.

The ship was on an 11-day voyage upstream from the city of Nanjing, near Shanghai, to Chongqing.

It also emerged the Nanjing Maritime Safety Administration had investigated Eastern Star as part of a safety campaign into passenger ferries and tour boats and held the ship along with five other vessels.

Li Yongjun, the captain of a freighter that passed near the Eastern Star shortly before it capsized, said the weather was so bad he decided to anchor and wait out the storm.

The captain and chief engineer have been detained by police for questioning. An initial investigation found the ship was not overloaded and had enough lifejackets on board.