The Alexandros T was bound for China from Brazil carrying iron ore when it encountered rough seas and high winds, listed, broke up and sank Wednesday night, the BBC reported.
National Sea Rescue Institute spokesman Craig Lambinon told the BBC 33 people had been on board.
"Six were rescued last night, five on a life raft and one in the water," he said.
All of the crew was reportedly wearing life vests and prepared to abandon ship, but it was unclear how only six managed it.
An air force C-130 aircraft was circling the site and ships converged at the site early Thursday, about 325 miles south of the South African town of Port Alfred.