pg_ctl start gives FATAL: role does not exist
This happens when you run pg_ctl start with the -w (wait) option, because it will try a test connection with a user that does not exist (in your case).  But that's not really a problem (except for the confusing error message), because that proves that the server is up.