622 lines
11 KiB
HTML
622 lines
11 KiB
HTML
<HTML
|
|
><HEAD
|
|
><TITLE
|
|
>Kernel configuration -Part "A"</TITLE
|
|
><META
|
|
NAME="GENERATOR"
|
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.60"><LINK
|
|
REL="HOME"
|
|
TITLE="Securing and Optimizing Linux"
|
|
HREF="index.html"><LINK
|
|
REL="UP"
|
|
TITLE="Configuring and Building a Secure, Optimized Kernel"
|
|
HREF="secopt-kernel.html"><LINK
|
|
REL="PREVIOUS"
|
|
TITLE="Compilation"
|
|
HREF="chap7sec79.html"><LINK
|
|
REL="NEXT"
|
|
TITLE='Kernel configuration -Part "B"'
|
|
HREF="chap7sec81.html"></HEAD
|
|
><BODY
|
|
CLASS="section"
|
|
BGCOLOR="#FFFFFF"
|
|
TEXT="#000000"
|
|
LINK="#0000FF"
|
|
VLINK="#840084"
|
|
ALINK="#0000FF"
|
|
><DIV
|
|
CLASS="NAVHEADER"
|
|
><TABLE
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
CELLPADDING="0"
|
|
CELLSPACING="0"
|
|
><TR
|
|
><TH
|
|
COLSPAN="3"
|
|
ALIGN="center"
|
|
>Securing and Optimizing Linux: RedHat Edition -A Hands on Guide</TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
WIDTH="10%"
|
|
ALIGN="left"
|
|
VALIGN="bottom"
|
|
><A
|
|
HREF="chap7sec79.html"
|
|
>Prev</A
|
|
></TD
|
|
><TD
|
|
WIDTH="80%"
|
|
ALIGN="center"
|
|
VALIGN="bottom"
|
|
>Chapter 7. Configuring and Building a Secure, Optimized Kernel</TD
|
|
><TD
|
|
WIDTH="10%"
|
|
ALIGN="right"
|
|
VALIGN="bottom"
|
|
><A
|
|
HREF="chap7sec81.html"
|
|
>Next</A
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><HR
|
|
ALIGN="LEFT"
|
|
WIDTH="100%"></DIV
|
|
><DIV
|
|
CLASS="section"
|
|
><H1
|
|
CLASS="section"
|
|
><A
|
|
NAME="prt2sct35kcon"
|
|
>7.5. Kernel configuration -Part "A"</A
|
|
></H1
|
|
><P
|
|
>These are the options available for you to choose from the list of Kernel Configurable options as soon as you enter <B
|
|
CLASS="command"
|
|
>make config</B
|
|
> at the prompt as described in the previous section.As
|
|
soon as you enter make config at the prompt as described in the previous step, a list of Kernel configurable options will be displayed for you to choose to configure the Kernel, you must indicate what
|
|
features and devices drivers you want to include in your Linux system and select how to include support for specific devices. Typically, for each configuration option, you have to respond with one of the following
|
|
choices: We have used a simple convention for our example configuration:
|
|
<DIV
|
|
CLASS="example"
|
|
><A
|
|
NAME="AEN5283"
|
|
></A
|
|
><P
|
|
><B
|
|
>Example 7-1. SMP support</B
|
|
></P
|
|
><P
|
|
> <TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><PRE
|
|
CLASS="screen"
|
|
> Symmetric multi-processing support <TT
|
|
CLASS="envar"
|
|
>(CONFIG_SMP)</TT
|
|
> <TT
|
|
CLASS="literal"
|
|
>Y/M/N</TT
|
|
> <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>N</B
|
|
></TT
|
|
>
|
|
</PRE
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
>
|
|
where
|
|
<P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><PRE
|
|
CLASS="programlisting"
|
|
> Symmetric multi-processing support <TT
|
|
CLASS="envar"
|
|
>(CONFIG_SMP)</TT
|
|
> -is one of the choice
|
|
</PRE
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
>
|
|
<EM
|
|
>We have choosen to say <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>N</B
|
|
></TT
|
|
> in this case. </EM
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <TT
|
|
CLASS="literal"
|
|
>Y/M/N</TT
|
|
> - are the options you have i.e. you can say yes or no or choose as module.
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>[Y]</B
|
|
></TT
|
|
> -To compile into the kernel and always be loaded
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>
|
|
<TT
|
|
CLASS="userinput"
|
|
><B
|
|
>[M]</B
|
|
></TT
|
|
> -To use a module for that feature and load that segment of code on demand
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>[N]</B
|
|
></TT
|
|
> -To skip and excludes the support for that specific device from the Kernel
|
|
</P
|
|
></LI
|
|
></UL
|
|
>
|
|
</P
|
|
></DIV
|
|
>
|
|
</P
|
|
><DIV
|
|
CLASS="important"
|
|
><BLOCKQUOTE
|
|
CLASS="important"
|
|
><P
|
|
><B
|
|
><SPAN
|
|
CLASS="inlinemediaobject"
|
|
><IMG
|
|
SRC="./images/Important.gif"
|
|
ALT="Important"
|
|
></IMG
|
|
></SPAN
|
|
>: </B
|
|
>
|
|
It is important to note that majuscule letter of <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>n</B
|
|
></TT
|
|
> or <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>y</B
|
|
></TT
|
|
> mean the default choice. If a device does not have a modular device driver, you will not see the <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>[M]</B
|
|
></TT
|
|
> option. Some
|
|
time an <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>[?]</B
|
|
></TT
|
|
> option will appear in the choices. This mean that you can get more information about the feature when you type <B
|
|
CLASS="keycap"
|
|
>?</B
|
|
> + <B
|
|
CLASS="keycap"
|
|
>ENTER</B
|
|
> key. Choosing the <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>[?]</B
|
|
></TT
|
|
>
|
|
help option will opens another terminal describing the option.
|
|
</P
|
|
></BLOCKQUOTE
|
|
></DIV
|
|
><DIV
|
|
CLASS="formalpara"
|
|
><P
|
|
><B
|
|
>Code maturity level options. </B
|
|
>
|
|
<TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><PRE
|
|
CLASS="screen"
|
|
>
|
|
Prompt for development and/or incomplete code/drivers <TT
|
|
CLASS="envar"
|
|
>(CONFIG_EXPERIMENTAL)</TT
|
|
> <TT
|
|
CLASS="literal"
|
|
>N/y/?</TT
|
|
>
|
|
</PRE
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
>
|
|
</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="formalpara"
|
|
><P
|
|
><B
|
|
>Processor type and features. </B
|
|
>
|
|
<TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><PRE
|
|
CLASS="screen"
|
|
> Processor family (386, 486/Cx486, 586/K5/5x86/6x86, Pentium/K6/TSC, PPro/6x86MX) <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>[PPro/6x86MX]</B
|
|
></TT
|
|
>
|
|
Maximum Physical Memory (1GB, 2GB) <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>[1GB]</B
|
|
></TT
|
|
>
|
|
Math emulation (CONFIG_MATH_EMULATION) <TT
|
|
CLASS="literal"
|
|
>N/y/?</TT
|
|
>
|
|
<SPAN
|
|
CLASS="acronym"
|
|
>MTRR</SPAN
|
|
> (Memory Type Range Register) support (CONFIG_MTRR) N/y/?
|
|
Symmetric multi-processing support (CONFIG_SMP) Y/n/? <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>N</B
|
|
></TT
|
|
>
|
|
</PRE
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
>
|
|
|
|
</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="formalpara"
|
|
><P
|
|
><B
|
|
>Loadable module support. </B
|
|
>
|
|
<TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><PRE
|
|
CLASS="screen"
|
|
> Enable loadable module support (CONFIG_MODULES) Y/n/? <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>N</B
|
|
></TT
|
|
>
|
|
</PRE
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
>
|
|
</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="formalpara"
|
|
><P
|
|
><B
|
|
>General setup. </B
|
|
>
|
|
<TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><PRE
|
|
CLASS="screen"
|
|
> Networking support (CONFIG_NET) Y/n/?
|
|
PCI support (CONFIG_PCI) Y/n/?
|
|
<SPAN
|
|
CLASS="acronym"
|
|
>PCI</SPAN
|
|
> access mode (<SPAN
|
|
CLASS="acronym"
|
|
>BIOS,</SPAN
|
|
> Direct, Any <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>[Any]</B
|
|
></TT
|
|
>
|
|
<SPAN
|
|
CLASS="acronym"
|
|
>PCI</SPAN
|
|
> quirks (CONFIG_PCI_QUIRKS) Y/n/? <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>N</B
|
|
></TT
|
|
>
|
|
Backward-compatible /proc/pci (CONFIG_PCI_OLD_PROC) Y/n/? <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>N</B
|
|
></TT
|
|
>
|
|
<SPAN
|
|
CLASS="acronym"
|
|
>MCA</SPAN
|
|
> support (CONFIG_MCA) N/y/?
|
|
<SPAN
|
|
CLASS="acronym"
|
|
>SGI</SPAN
|
|
> Visual Workstation support (CONFIG_VISWS) N/y/?
|
|
System V <SPAN
|
|
CLASS="acronym"
|
|
>IPC</SPAN
|
|
> (CONFIG_SYSVIPC) Y/n/?
|
|
<SPAN
|
|
CLASS="acronym"
|
|
>BSD</SPAN
|
|
> Process Accounting (CONFIG_BSD_PROCESS_ACCT) N/y/?
|
|
Sysctl support (CONFIG_SYSCTL) Y/n/?
|
|
Kernel support for a.out binaries (CONFIG_BINFMT_AOUT) Y/n/?
|
|
Kernel support for <SPAN
|
|
CLASS="acronym"
|
|
>ELF</SPAN
|
|
> binaries (CONFIG_BINFMT_ELF) Y/n/?
|
|
Kernel support for <SPAN
|
|
CLASS="abbrev"
|
|
>MISC.</SPAN
|
|
> binaries (CONFIG_BINFMT_MISC) Y/n/?
|
|
Parallel port support (CONFIG_PARPORT) N/y/?
|
|
Advanced Power Management <SPAN
|
|
CLASS="acronym"
|
|
>BIOS</SPAN
|
|
> support (CONFIG_APM) N/y/?
|
|
|
|
</PRE
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
>
|
|
|
|
</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="formalpara"
|
|
><P
|
|
><B
|
|
>Plug and Play support. </B
|
|
>
|
|
<TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><PRE
|
|
CLASS="screen"
|
|
> Plug and Play support (CONFIG_PNP) [N/y/?]
|
|
</PRE
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
>
|
|
</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="formalpara"
|
|
><P
|
|
><B
|
|
>Block devices. </B
|
|
>
|
|
<TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><PRE
|
|
CLASS="screen"
|
|
> Normal <SPAN
|
|
CLASS="acronym"
|
|
>PC</SPAN
|
|
> floppy disk support (CONFIG_BLK_DEV_FD) Y/n/?
|
|
Enhanced <SPAN
|
|
CLASS="acronym"
|
|
>IDE/MFM/RLL</SPAN
|
|
> disk/cdrom/tape/floppy support (CONFIG_BLK_DEV_IDE) Y/n/?
|
|
Use old disk-only driver on primary interface (CONFIG_BLK_DEV_HD_IDE) N/y/?
|
|
Include <SPAN
|
|
CLASS="acronym"
|
|
>IDE/ATA-2</SPAN
|
|
> DISK support (CONFIG_BLK_DEV_IDEDISK) Y/n/?
|
|
Include <SPAN
|
|
CLASS="acronym"
|
|
>IDE/ATAPI</SPAN
|
|
> CDROM support (CONFIG_BLK_DEV_IDECD) Y/n/?
|
|
Include <SPAN
|
|
CLASS="acronym"
|
|
>IDE/ATAPI</SPAN
|
|
> TAPE support (CONFIG_BLK_DEV_IDETAPE) N/y/?
|
|
Include <SPAN
|
|
CLASS="acronym"
|
|
>IDE/ATAPI</SPAN
|
|
> FLOPPY support (CONFIG_BLK_DEV_IDEFLOPPY) N/y/?
|
|
<SPAN
|
|
CLASS="acronym"
|
|
>SCSI</SPAN
|
|
> emulation support (CONFIG_BLK_DEV_IDESCSI) N/y/?
|
|
CMD640 chipset bugfix/support (CONFIG_BLK_DEV_CMD640) Y/n/? <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>N</B
|
|
></TT
|
|
>
|
|
RZ1000 chipset bugfix/support (CONFIG_BLK_DEV_RZ1000) Y/n/? <TT
|
|
CLASS="userinput"
|
|
><B
|
|
>N</B
|
|
></TT
|
|
>
|
|
Generic <SPAN
|
|
CLASS="acronym"
|
|
>PCI</SPAN
|
|
> <SPAN
|
|
CLASS="acronym"
|
|
>IDE</SPAN
|
|
> chipset support (CONFIG_BLK_DEV_IDEPCI) Y/n/?
|
|
Generic <SPAN
|
|
CLASS="acronym"
|
|
>PCI</SPAN
|
|
> bus-master <SPAN
|
|
CLASS="acronym"
|
|
>DMA</SPAN
|
|
> support (CONFIG_BLK_DEV_IDEDMA) Y/n/?
|
|
Boot off-board chipsets first support (CONFIG_BLK_DEV_OFFBOARD) N/y/?
|
|
Use DMA by default when available (CONFIG_IDEDMA_AUTO) Y/n/?
|
|
Other <SPAN
|
|
CLASS="acronym"
|
|
>IDE</SPAN
|
|
> chipset support (CONFIG_IDE_CHIPSETS) N/y/?
|
|
Loopback device support (CONFIG_BLK_DEV_LOOP) N/y/?
|
|
Network block device support (CONFIG_BLK_DEV_NBD) N/y/?
|
|
Multiple devices driver support (CONFIG_BLK_DEV_MD) N/y/?
|
|
<SPAN
|
|
CLASS="acronym"
|
|
>RAM</SPAN
|
|
> disk support (CONFIG_BLK_DEV_RAM) N/y/?
|
|
<SPAN
|
|
CLASS="acronym"
|
|
>XT</SPAN
|
|
> hard disk support (CONFIG_BLK_DEV_XD) N/y/?
|
|
Mylex DAC960/DAC1100 <SPAN
|
|
CLASS="acronym"
|
|
>PCI</SPAN
|
|
> <SPAN
|
|
CLASS="acronym"
|
|
>RAID</SPAN
|
|
> Controller support (CONFIG_BLK_DEV_DAC960) N/y/? (NEW)
|
|
Parallel port <SPAN
|
|
CLASS="acronym"
|
|
>IDE</SPAN
|
|
> device support (CONFIG_PARIDE) N/y/?
|
|
Compaq SMART2 support (CONFIG_BLK_CPQ_DA) [N/y/?] (NEW)
|
|
</PRE
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
>
|
|
</P
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="NAVFOOTER"
|
|
><HR
|
|
ALIGN="LEFT"
|
|
WIDTH="100%"><TABLE
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
CELLPADDING="0"
|
|
CELLSPACING="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="left"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="chap7sec79.html"
|
|
>Prev</A
|
|
></TD
|
|
><TD
|
|
WIDTH="34%"
|
|
ALIGN="center"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="index.html"
|
|
>Home</A
|
|
></TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="chap7sec81.html"
|
|
>Next</A
|
|
></TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="left"
|
|
VALIGN="top"
|
|
>Compilation</TD
|
|
><TD
|
|
WIDTH="34%"
|
|
ALIGN="center"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="secopt-kernel.html"
|
|
>Up</A
|
|
></TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
>Kernel configuration -Part "B"</TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></BODY
|
|
></HTML
|
|
> |