{
    "mode": "man",
    "parameter": "SETUPCON",
    "section": "1",
    "url": "https://www.chedong.com/phpMan.php/man/SETUPCON/1/json",
    "generated": "2026-06-15T18:52:42Z",
    "synopsis": "setupcon [OPTION]... [VARIANT]",
    "sections": {
        "NAME": {
            "content": "setupcon - sets up the font and the keyboard on the console\n\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "setupcon [OPTION]... [VARIANT]\n\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "setupcon  is  a  program for fast and easy setup of the font and the keyboard on the console.\nMost of the time you invoke setupcon without arguments.  The keyboard configuration is speci‐\nfied in ~/.keyboard or /etc/default/keyboard.  The font configuration is specified in ~/.con‐\nsole-setup or /etc/default/console-setup.  Consult keyboard(5) and console-setup(5)  for  in‐\nstructions how to configure these two files.\n\nIf you have to switch often between different encodings, keyboards or languages, you can pre‐\npare several alternative configuration files for setupcon.  Suppose that most of the time you\nwill  use Greek language with Greek keyboard layout, but sometimes you need to type in German\nwith German keyboard layout.  In this situation you should customize the  main  configuration\nfiles  (keyboard  and console-setup) for Greek.  Also, create alternative configuration files\nfor German named keyboard.german and console-setup.german.  Then in order  to  configure  the\nconsole for Greek you will simply run the command with no arguments: setupcon and in order to\nconfigure the console for German you will use setupcon german.\n\n\n",
            "subsections": []
        },
        "OPTIONS": {
            "content": "VARIANT\nSpecifies which configuration file to use.  With no variant, the  configuration  files\nof  setupcon are named console-setup and keyboard.  On the other hand, if you use e.g.\nchukchi as VARIANT then the configuration files  are  console-setup.chukchi  and  key‐\nboard.chukchi.   In  this way you can have easy access to several different configura‐\ntions - for example one for the Chukchi language and another for the default  configu‐\nration.\n\n",
            "subsections": [
                {
                    "name": "-v --verbose",
                    "content": "Be more verbose.   Use this option if something goes wrong or while experimenting with\nthe configuration files.\n\n",
                    "flag": "-v",
                    "long": "--verbose"
                },
                {
                    "name": "-k --keyboard-only",
                    "content": "Setup the keyboard only, do not setup the font or the terminal.  On Linux it is enough\nto do this configuration only once.\n\n",
                    "flag": "-k",
                    "long": "--keyboard-only"
                },
                {
                    "name": "-f --font-only",
                    "content": "Setup the font only, do not setup the keyboard or the terminal.  On Linux this config‐\nuration should be repeated each time a new console driver is  activated  (for  example\nwhen the frame buffer becomes active).\n\n",
                    "flag": "-f",
                    "long": "--font-only"
                },
                {
                    "name": "-t --terminal-only",
                    "content": "Setup the terminal only, do not setup the keyboard or the font.\n\n",
                    "flag": "-t",
                    "long": "--terminal-only"
                },
                {
                    "name": "--current-tty",
                    "content": "Setup the only the current virtual terminal.\n\n",
                    "long": "--current-tty"
                },
                {
                    "name": "--force",
                    "content": "Do not check whether we are on the console.  Notice that you can be forced to hard-re‐\nboot your computer if you run setupcon with this option and the screen  is  controlled\nby a X server.\n\n\n--save This  option can be useful if you want to use setupcon early in the boot process while\n/usr is not yet mounted and the required data are not  available.   This  option  will\nmake  setupcon  copy  the  required files in /etc/console-setup/ in order to make them\navailable before /usr is mounted.  If you use setupcon early in the boot process, then\nyou should run it with this option after every change of the console configuration.\n\n",
                    "long": "--force"
                },
                {
                    "name": "--save-only",
                    "content": "The  same  as  --save,  but does not setup anything.  This option can be useful if you\nwant to save the required files while the screen is controlled by a X server.\n\n\n--save-keyboard FILE\nFor use by initrd builders.  Do not configure anything.  Save an usable keyboard  lay‐\nout in FILE.\n\n\n--setup-dir DIR\nFor  use by initrd builders.  Do not configure anything.  Arrange in the directory DIR\neverything necessary in order to configure the console.  The file DIR/morefiles  lists\nall  binaries  the initrd builder has to install in the initrd image.  All other files\nin DIR have to be copied unchanged in the initrd.  In order to configure  the  console\none has to run the script DIR/bin/setupcon.\n\n",
                    "long": "--save-only"
                },
                {
                    "name": "-h --help",
                    "content": "Display usage information.\n\n",
                    "flag": "-h",
                    "long": "--help"
                }
            ]
        },
        "FILES": {
            "content": "~/.console-setup\n~/.keyboard\n/etc/default/console-setup\n/etc/default/keyboard\n/etc/default/console-setup.VARIANT\n/etc/default/keyboard.VARIANT\n/etc/console-setup/\n\n",
            "subsections": []
        },
        "SEE ALSO": {
            "content": "keyboard(5), console-setup(5)\n\n\n\nconsole-setup                                2011-03-17                                  SETUPCON(1)",
            "subsections": []
        }
    },
    "summary": "setupcon - sets up the font and the keyboard on the console",
    "flags": [
        {
            "flag": "-v",
            "long": "--verbose",
            "arg": null,
            "description": "Be more verbose. Use this option if something goes wrong or while experimenting with the configuration files."
        },
        {
            "flag": "-k",
            "long": "--keyboard-only",
            "arg": null,
            "description": "Setup the keyboard only, do not setup the font or the terminal. On Linux it is enough to do this configuration only once."
        },
        {
            "flag": "-f",
            "long": "--font-only",
            "arg": null,
            "description": "Setup the font only, do not setup the keyboard or the terminal. On Linux this config‐ uration should be repeated each time a new console driver is activated (for example when the frame buffer becomes active)."
        },
        {
            "flag": "-t",
            "long": "--terminal-only",
            "arg": null,
            "description": "Setup the terminal only, do not setup the keyboard or the font."
        },
        {
            "flag": "",
            "long": "--current-tty",
            "arg": null,
            "description": "Setup the only the current virtual terminal."
        },
        {
            "flag": "",
            "long": "--force",
            "arg": null,
            "description": "Do not check whether we are on the console. Notice that you can be forced to hard-re‐ boot your computer if you run setupcon with this option and the screen is controlled by a X server. --save This option can be useful if you want to use setupcon early in the boot process while /usr is not yet mounted and the required data are not available. This option will make setupcon copy the required files in /etc/console-setup/ in order to make them available before /usr is mounted. If you use setupcon early in the boot process, then you should run it with this option after every change of the console configuration."
        },
        {
            "flag": "",
            "long": "--save-only",
            "arg": null,
            "description": "The same as --save, but does not setup anything. This option can be useful if you want to save the required files while the screen is controlled by a X server. --save-keyboard FILE For use by initrd builders. Do not configure anything. Save an usable keyboard lay‐ out in FILE. --setup-dir DIR For use by initrd builders. Do not configure anything. Arrange in the directory DIR everything necessary in order to configure the console. The file DIR/morefiles lists all binaries the initrd builder has to install in the initrd image. All other files in DIR have to be copied unchanged in the initrd. In order to configure the console one has to run the script DIR/bin/setupcon."
        },
        {
            "flag": "-h",
            "long": "--help",
            "arg": null,
            "description": "Display usage information."
        }
    ],
    "examples": [],
    "see_also": [
        {
            "name": "keyboard",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/keyboard/5/json"
        },
        {
            "name": "console-setup",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/console-setup/5/json"
        }
    ]
}