I see repeatedly that it’s optimal to calculate the analytical steady state by hand and then solve it numerically using a non-linear solver, but I also see here and there that linear models (measured in log deviations from the steady state) should be functional taking the initial steady state as being a vector of zeroes.

What could cause a linear model to not run when given a vector of zeroes as initial steady state? Example (using the system of equations from Beidas-Strom and Poghosyan, 2011) code attached.

codebettabstar=bettaistar+chiibstar(-1)+chiiX(-1)
+(cstar_Hx_steady)chiipr_H+chii(delttas-ppi)+((p_XxeB)-betta)
*X+((p_XxeB)-betta)*pr_H-((p_XxeB)*mX_steady)*M-((p_XxeB)*c_F/X)
*rer-((p_XxeB)*oX_steady)*prstar_O;
[/code]
has a division by X. Dynare also complains about

Yes. Linearity is not equal to 0 steady states (there may be a constant term as in the Gali mod-files on my hompage). But given linearity, 0 starting values should always succeed in finding the steady state.