Tente alterar o comando para:
echo -e keymaps 0-127 \n keycode 21=z \n keycode 44=y | loadkeys
Eu poderia reproduzir o problema em um PC físico executando o Ubuntu 14.04 LTS (embora o comando não tenha nenhum outro efeito porque o mapa de teclado francês suíço que eu uso já possui Y e Z nessa posição) e alterando o 0-2,4-5,8,12
para 0-127
no comando parece resolvê-lo. Eu não entendo completamente por que ele trava com o outro comando, mas minha intuição é que os intervalos de mapa de teclado especificados não definem os existentes no mapa de teclado, indefinindo o estado de todas as teclas quando o Caps Lock está ativado (a emissão deste comando também cria o problema: echo -e keymaps 0-2,4-5,8,12 | loadkeys
). Não tenho certeza se é um bug ou um recurso pretendido.