NASA has postponed a space launch due to a "cannibal" solar storm that could also disrupt GPS, communication systems and power grids.