setxkbmap [ args ] [ layout [ variant [ option ... ] ] ]
The setxkbmap command maps the keyboard to use the layout determined by the options specified on the command line.
An XKB keymap is constructed from a number of components which are compiled only as needed. The source for all of the components can be found in /usr/share/X11/xkb.
If you have an Xserver and a client shell running on different computers and some XKB configuration files on those machines are different, you can get problems specifying a keyboard map by model, layout, and options names. This is because setxkbmap converts its arguments to names of XKB configuration files according to files that are on the client-side computer, then sends these file names to the server where xkbcomp has to compose a complete keyboard map using files which the server has. Thus if the sets of files differ in some way, the names that setxkbmap generates can be unacceptable on the server side. You can solve this problem by running the xkbcomp on the client side too. With the -print option setxkbmap just prints the file names in an appropriate format to its stdout and this output can be piped directly to the xkbcomp input. For example, the command
setxkbmap us -print | xkbcomp - $DISPLAY
makes both steps run on the same (client) machine and loads a keyboard map into the server.