You can proceed in a similar way. Suppose the distinct eigenvalues are $\lambda_1,\ldots,\lambda_r$, the desired geometric multiplicitiy of $\lambda_i$ is $g_i$, and the desired algebraic multiplicity is $e_i\geq g_i$.
You want to construct a matrix whose Jordan form has exactly $g_i$ blocks associated with $\lambda_i$, and the total size of the blocks is $e_i$. You can achieve this by taking $g_i-1$ blocks of size $1$ (corresponding to eigenvectors), and then one block of size $e_i-g_i+1$, all associated to $\lambda_i$; other combinations are possible. For example, to get a matrix with a single eigenvalue $\lambda$ with geometric multiplicity $4$ and algebraic multiplicity $6$, you can take three blocks of size $1$ and one of size $6-4+1=3$: $\left(\begin{array}{cccccc} \lambda & 1 & 0 & 0 & 0 & 0\\ 0 & \lambda & 1 & 0 & 0 & 0\\ 0 & 0& \lambda & 0 & 0 & 0\\ 0 & 0 & 0 & \lambda & 0 & 0\\ 0 & 0 & 0 & 0 & \lambda & 0 \\ 0 & 0 & 0 & 0 & 0 & \lambda \end{array}\right)$ or take two blocks of size $2$ and two blocks of size $1$: $\left(\begin{array}{cccccc} \lambda & 1 & 0 & 0 & 0 & 0\\ 0 & \lambda & 0 & 0 & 0 & 0\\ 0 & 0 & \lambda & 1 & 0 & 0\\ 0 & 0 & 0 & \lambda & 0 & 0\\ 0 & 0 & 0 & 0 & \lambda & 0\\ 0 & 0 & 0 & 0 & 0 & \lambda \end{array}\right).$
Then you can conjugate by an invertible matrix to get it into a "non-obvious" form.