source: chapter07/console.xml@ c66cbd7

6.1 6.1.1
Last change on this file since c66cbd7 was 4ccba55, checked in by Matthew Burgess <matthew@…>, 19 years ago

Chapter 7 typo and markup fixes (merged from trunk r6023)

git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/6.1/BOOK@6025 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 5.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
3 <!ENTITY % general-entities SYSTEM "../general.ent">
4 %general-entities;
5]>
6<sect1 id="ch-scripts-console">
7<title>Configuring the Linux Console</title>
8<?dbhtml filename="console.html"?>
9
10<indexterm zone="ch-scripts-console">
11<primary sortas="d-console">console</primary>
12<secondary>configuring</secondary></indexterm>
13
14<para>This section discusses how to configure the
15<command>console</command> initscript that sets up the keyboard map
16and the console font. If non-ASCII characters (British pound and Euro
17character are examples of non-ASCII characters) will not be used and
18the keyboard is a U.S. one, skip this section. Without the
19configuration file, the console initscript will do nothing.</para>
20
21<para>The <command>console</command> script uses the
22<filename>/etc/sysconfig/console</filename> as a configuration file.
23Decide which keymap and screen font will be used. The
24language-specific HOWTO can help with this. A pre-made
25<filename>/etc/sysconfig/console</filename> file with known settings
26for several countries was installed with the LFS-Bootscripts package,
27so the relevant section can be uncommented if the country is
28supported. If still in doubt, look in the <filename
29class="directory">/usr/share/kbd</filename> directory for valid
30keymaps and screen fonts. Read the <command>loadkeys</command> and
31<command>setfont</command> manual pages
32and determine the correct arguments for these programs. Once decided,
33create the configuration file with the following command:</para>
34
35<screen><userinput>cat &gt;/etc/sysconfig/console &lt;&lt;"EOF"
36<literal>KEYMAP="<replaceable>[arguments for loadkeys]</replaceable>"
37FONT="<replaceable>[arguments for setfont]</replaceable>"</literal>
38EOF</userinput></screen>
39
40<para>For example, for Spanish users who also want to use the Euro
41character (accessible by pressing AltGr+E), the following settings are
42correct:</para>
43
44<screen><userinput>cat &gt;/etc/sysconfig/console &lt;&lt;"EOF"
45<literal>KEYMAP="es euro2"
46FONT="lat9-16 -u iso01"</literal>
47EOF</userinput></screen>
48
49<note><para>The <envar>FONT</envar> line above is correct only for the ISO 8859-15
50character set. If using ISO 8859-1 and, therefore, a pound sign
51instead of Euro, the correct <envar>FONT</envar> line would be:</para>
52
53<screen><userinput>FONT="lat1-16"</userinput></screen></note>
54
55<para>If the <envar>KEYMAP</envar> or <envar>FONT</envar> variable is not set, the
56<command>console</command> initscript will not run the corresponding
57program.</para>
58
59<para>In some keymaps, the Backspace and Delete keys send characters
60different from ones in the default keymap built into the kernel. This
61confuses some applications. For example,
62<application>Emacs</application> displays its help (instead of erasing
63the character before the cursor) when Backspace is pressed. To check
64if the keymap in use is affected (this works only for i386
65keymaps):</para>
66
67<screen><userinput>zgrep '\W14\W' <replaceable>[/path/to/your/keymap]</replaceable></userinput></screen>
68
69<beginpage/>
70
71<para>If the keycode 14 is Backspace instead of Delete, create the
72following keymap snippet to fix this issue:</para>
73
74<screen><userinput>mkdir -p /etc/kbd &amp;&amp; cat &gt; /etc/kbd/bs-sends-del &lt;&lt;"EOF"
75<literal> keycode 14 = Delete Delete Delete Delete
76 alt keycode 14 = Meta_Delete
77 altgr alt keycode 14 = Meta_Delete
78 keycode 111 = Remove
79 altgr control keycode 111 = Boot
80 control alt keycode 111 = Boot
81altgr control alt keycode 111 = Boot</literal>
82EOF</userinput></screen>
83
84<para>Tell the <command>console</command> script to load this
85snippet after the main keymap:</para>
86
87<screen><userinput>cat &gt;&gt;/etc/sysconfig/console &lt;&lt;"EOF"
88<literal>KEYMAP_CORRECTIONS="/etc/kbd/bs-sends-del"</literal>
89EOF</userinput></screen>
90
91<para>To compile the keymap directly into the kernel instead of
92setting it every time from the <command>console</command> bootscript,
93follow the instructions given in <xref linkend="ch-bootable-kernel" role="."/>
94Doing this ensures that the keyboard will always work as expected,
95even when booting into maintenance mode (by passing
96<parameter>init=/bin/sh</parameter> to the kernel), because the
97<command>console</command> bootscript will not be run in that
98situation. Additionally, the kernel will not set the screen font
99automatically. This should not pose many problems because ASCII characters
100will be handled correctly, and it is unlikely that a user would need
101to rely on non-ASCII characters while in maintenance mode.</para>
102
103<para>Since the kernel will set up the keymap, it is possible to omit
104the <envar>KEYMAP</envar> variable from the
105<filename>/etc/sysconfig/console</filename> configuration file. It can
106also be left in place, if desired, without consequence. Keeping it
107could be beneficial if running several different kernels where it is
108difficult to ensure that the keymap is compiled into every one of
109them.</para>
110
111</sect1>
112
Note: See TracBrowser for help on using the repository browser.