Are all non-terminals of the CFG given by the LHS of productions?
No. Not all non-terminals necessarily appear at the LHS of productions, that is, not every non-terminal must have productions for it.

Of course, such non-terminals are rather useless and can be removed from the grammar without changing the language. Also the dual is actually possible: there might be terminal symbols that do not appear at the RHS of productions. For example $a^*$ is a context-free language over the alphabet $\{a,b\}$.