$\bullet$ As Nathaniel wrote, the case $X\in M_n(\mathbb{Q})$ is not difficult. Let $p>0$ be an integer s.t. $pX\in M_n(\mathbb{Z})$. The row-style Hermite normal form of $pX$ is $H=UpX$, where $U$ is integer unimodular and $H$ is upper-triangular with non-negative diagonal. Then $K=UX$ gives the result; we can also use the Smith normal form ($spectrum(UXV)=spectrum(VUX)$).
$\bullet$ Now we assume that $X\in GL_n(\mathbb{R})$. We consider a rational approximation $Y$ of $X$; as above, $L=UY$ is upper-triangular with $>0$ diagonal $(l_i)_i$. When $X$ is non-singular, the eigenvalues $(\lambda_i)_i$ of $UX$ are close to the $(l_i)$'s.
$\DeclareMathOperator\spectrum{spectrum}\DeclareMathOperator\GL{GL}$As Nathaniel wrote, the case $X\in M_n(\mathbb{Q})$ is not difficult. Let $p>0$ be an integer s.t. $pX\in M_n(\mathbb{Z})$. The row-style Hermite normal form of $pX$ is $H=UpX$, where $U$ is integer unimodular and $H$ is upper-triangular with non-negative diagonal. Then $K=UX$ gives the result; we can also use the Smith normal form ($\spectrum(UXV)=\spectrum(VUX)$).
Now we assume that $X\in \GL_n(\mathbb{R})$. We consider a rational approximation $Y$ of $X$; as above, $L=UY$ is upper-triangular with $>0$ diagonal $(l_i)_i$. When $X$ is non-singular, the eigenvalues $(\lambda_i)_i$ of $UX$ are close to the $(l_i)$'s.
Unfortunately, $L$ has "always" multiple eigenvalues and -in general-—in general— some $(\lambda_i)$'s are not real. We do not need all the properties of the Hermite matrix; in fact, the only properties that interest us are "$H$ is triangular with a positive diagonal".
$\textbf{Question.}$Question. We assume that $\det(pY)$ can be written as a product of $n$ distinct positive integers. Can we modify the algorithm for constructing the Hermite form so that the diagonal of $pL$ is composed of $n$ distinct $>0$ integers?
If yes, then $spectrum(UX)\subset (0,+\infty)$$\spectrum(UX)\subset (0,+\infty)$.