The GNU/Hurd does not use SYSV runlevels, so commands like

$ shutdown -h now

will not work. Simply use the equivalent shortcut

$ halt

which is provided natively on GNU/Hurd, instead of from SYSV runlevels.

Note that due to a bug, we recommend you run syncfs prior to issuing the halt command.