
The man, who was not identified by authorities, handed himself over to police, according to a spokesman for the Rio police.
The bus, which had been scheduled to depart to the city of Juiz de Fora in Minas Gerais state, was waiting at the station platform on Tuesday afternoon when the suspect broke into it after shooting and injuring two people outside the bus, spokesman Marco Andrade told journalists.
Andrade said the man was arrested and all the hostages, who included elderly people and children, were freed.
Thefts and hijacks targeting buses near Rio’s main bus station have become common this year, with the buses in some cases being taken to the city’s poor favela neighbourhoods.