diff options
author | Archaic <archaic@linuxfromscratch.org> | 2005-12-26 19:00:06 +0000 |
---|---|---|
committer | Archaic <archaic@linuxfromscratch.org> | 2005-12-26 19:00:06 +0000 |
commit | 5536f7440f2f4a12782e8d741cbbba5f1c3cfea8 (patch) | |
tree | a0f3a22ecc9c0eedfd891d54e9acf06502d2b07f /chapter08 | |
parent | 2550494b85359ff42bb95a72911c7751cbce14d4 (diff) |
Applied Alexander Patrakov's patch which adds UTF-8 capability to the
development branch of the LFS Book.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@7235 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'chapter08')
-rw-r--r-- | chapter08/fstab.xml | 39 | ||||
-rw-r--r-- | chapter08/kernel.xml | 16 |
2 files changed, 47 insertions, 8 deletions
diff --git a/chapter08/fstab.xml b/chapter08/fstab.xml index 439057b4f..1487bbbea 100644 --- a/chapter08/fstab.xml +++ b/chapter08/fstab.xml @@ -65,4 +65,43 @@ EOF</userinput></screen> <filename>usbcore</filename> must be listed in <filename>/etc/sysconfig/modules</filename>.</para> + <para>Filesystems with MS-DOS or Windows origin (i.e.: vfat, ntfs, smbfs, cifs, + iso9660, udf) need the <quote>iocharset</quote> mount option in order for + non-ASCII characters in file names to be interpreted properly. The value + of this option should be the same as the character set of your locale, + adjusted in such a way that the kernel understands it. This works if the + relevant character set definition (found under File systems -> + Native Language Support) has been compiled into the kernel + or built as a module. The <quote>codepage</quote> option is also needed for + vfat and smbfs filesystems. It + should be set to the codepage number used under MS-DOS in your country. E.g., + in order to mount USB flash drives, a ru_RU.KOI8-R user would need the + following line in <filename>/etc/fstab</filename>:</para> + +<screen>/dev/sda1 /media/flash vfat noauto,user,quiet,showexec,iocharset=koi8r,codepage=866 0 0</screen> + + <para>The corresponding line for ru_RU.UTF-8 users is:</para> + +<screen>/dev/sda1 /media/flash vfat noauto,user,quiet,showexec,iocharset=utf8,codepage=866 0 0</screen> + + <note><para>In the latter case, the kernel emits the following message:</para> + +<screen><computeroutput>FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!</computeroutput></screen> + + <para>This negative recommendation should be ignored, since all other values + of the <quote>iocharset</quote> option result in wrong display of filenames in + UTF-8 locales.</para></note> + + <para>It is also possible to specify default codepage and iocharset values for + some filesystems during kernel configuration, the relevant parameters + are named + <quote>Default NLS Option</quote> (CONFIG_NLS_DEFAULT), + <quote>Default Remote NLS Option</quote> (CONFIG_SMB_NLS_DEFAULT), + <quote>Default codepage for FAT</quote> (CONFIG_FAT_DEFAULT_CODEPAGE), and + <quote>Default iocharset for FAT</quote> (CONFIG_FAT_DEFAULT_IOCHARSET). + There is no way to specify these settings for the + ntfs filesystem at kernel compilation time.</para> + <!-- Personally, I find it more foolproof to always specify the iocharset and + codepage in /etc/fstab for MS-based filesystems - Alexander E. Patrakov --> + </sect1> diff --git a/chapter08/kernel.xml b/chapter08/kernel.xml index fcac33a39..4b9f0bcfd 100644 --- a/chapter08/kernel.xml +++ b/chapter08/kernel.xml @@ -48,6 +48,13 @@ in the kernel source tree for alternative methods to the way this book configures the kernel.</para> + <para>By default, Linux kernel generates wrong sequences of bytes when + dead keys are used in UTF-8 keyboard mode. Also, one cannot copy and paste + non-ASCII characters when UTF-8 mode is aciive. Fix these issues with the + patch:</para> + +<screen><userinput>patch -Np1 -i ../&linux-utf8-patch;</userinput></screen> + <para>Prepare for compilation by running the following command:</para> <screen><userinput>make mrproper</userinput></screen> @@ -57,14 +64,7 @@ kernel compilation. Do not rely on the source tree being clean after un-tarring.</para> - <para>If, in <xref linkend="ch-scripts-console" role=","/> it was decided to - compile the keymap into the kernel, issue the command below:</para> - -<screen role="nodump"><userinput>loadkeys -m /usr/share/kbd/keymaps/<replaceable>[path to keymap]</replaceable> > \ - drivers/char/defkeymap.c</userinput></screen> - - <para>For example, if using a Dutch keyboard, use - <filename>/usr/share/kbd/keymaps/i386/qwerty/nl.map.gz</filename>.</para> + <!-- Support for compiling a keymap into the kernel is deliberately removed --> <para>Configure the kernel via a menu-driven interface. BLFS has some information regarding particular kernel configuration requirements of |