Auto Install
for
Mandrakelinux™
10.0.3
Copyrights, Trademarks, Credits
Conventions Used in this Document
Contents of the Install Diskette
Contents of the HD_Grub Boot Diskette
Contents of the Boot CD-ROM and Diskette
Anatomy of the Boot Loader Configuration Files
Global Directives for syslinux / isolinux
Section Directives for syslinux / isolinux
General Paramters for syslinux / isolinux
Anatomy of the 'auto_inst.cfg' File
postInstall and postInstallNonRooted
The 'auto_inst.cfg' File Location
Scratch Built Auto Install Diskette
Things to know before starting
Network Auto Install Diskette Set
Boot CD-ROM and Auto Install Diskette
Creating an Updated Installation CD Set
Advanced and Less Error Prone Approaches
Alternate for Creating the Initial Image
Alternate for Creating an Updated CD Set
Setting up a Simple NFS Server
Network and Connection Examples
Single Interface Connections to a LAN or Internet
The Mandrakelinux™ Distribution provides a facility, DrakX, which allows for the automated installation on to computers that you use or manage.
The DrakX graphic installer has the capability of being used in the both interactive and automated modes. This document deals specifically with it's automated capability.
Automated Installation is intended for situations where the same 'Install' set is to be placed on multiple computers. This can be a substantial time saver for anyone. More importantly, the automation means that you do not have to sit in front of each computer filling in the blanks, picking this and that and hoping that you remember the selections you chose the previous time.
As a side benefit, it can be used as an emergency backup to re-install the same packages and basic configuration data on a computer that failed, lost everything and your normal back-ups can not be used to restore the computer.
I am sure that there are more reasons to use the automated features, but that's your experiment. Me, I was just tired of having to remember what I installed the last time. Also, this document provides me with the opportunity to give back to the Linux community something in kind.
The following sections will provide an overview of the process, details regarding the Install disks and the configuration files which drive the installation process.
Copyright © 2002,2003,2004 by David Eastcott.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
Trademarks are the property of their respective owners.
Mandrakelinux™ is trademark of MandrakeSoft S.A.
Credits: The Staff at MandrakeSoft for providing this capability.
This document is based on the original DrakX documents provided by MandrakeSoft.
Special thanks to Pixel and Guillaume Cottenceau at MandrakeSoft for their suggestions, corrections, insight and patience.
This document presents information in different ways in an attempt to differentiate between regular text and text which has special meaning or usage. The following table illustrates the various text forms:
|
This is regular text |
General text used through out this document. Those of you viewing the HTML forms of this document can change this font to one you prefer through your browsers settings. The use of Bold and Italic have been minimized but are used to provide emphasis in the text you are reading. |
|
/root/drakx/ |
A mono-spaced font is used to represent any text which you would see in a text file or could be expected to type at a command line. Including directories, file names and commands. |
|
Hyper-link to sections within the scope of this document. |
|
|
Hyper-link to web sites on the internet. Since this document is available in non-web page form I have tried to minimize the use of hyper-links which do not explicitly contain the URL to external web sites. |
|
|
kernel
vmlinuz |
Text with a Light Blue background is used to indicate the contents (fragments too) of text found in the isolinux.cfg, menu.lst, syslinux.cfg and auto_inst.cfg files. For those of you reading a paper copy, it will probably be difficult to distinguish between blue and grey. |
|
#!/bin/bash |
Text with a Light Grey background is used to indicate the contents of other files, predominantly Bash/Perl Scripts but may include file fragments which are illustrating the use of concepts presented in the document. |
|
|
|
The following Icons are used to provide special emphasis regarding the text to its immediate right:
|
|
Indicates that the text is providing important clarification or information and should be examined closely. |
|
|
Indicates something that you should NOT do, or at least be very certain that you understand the consequences if you do. |
|
|
Indicates that the text is describing optional information which is outside the scope of this document and that you may find useful. |
|
|
Indicates something that would probably make your experience with the concepts in this document a bit more enjoyable. |
This document has been revised to conform with the capabilities of the 10.0 release. It is available in a number of formats, as an OpenOffice document, Adobe PDF (optimized for printing), HTML (both as a single file and multi-part hyper-linked) and PostScript.
You can find this document on the Mandrakelinux™ web site at:
http://www.linux-mandrake.com/drakx (then look for the 'kickstart' link)
or:
For current HTML and PDF versions as I generate them or, for older versions and my small collection of related stuff you can visit:
http://members.shaw.ca/mandrake/
If you find an error or some feature I missed you can contact me by email at david@eastcott.net.
|
10.0.3 |
2004-05-02 |
Adjustments: Change distribution name to Mandrakelinux™. Creating a Mastering File Set: added definition for second DVD. A Script Based Updater: adjusted script to use find instead of ls, since large list of files breaks ls. Alternate for Creating an Updated CD Set: adjusted script to create both DVDs.
|
|
10.0.02 |
2004-03-12 |
Adjustments: Conventions Used in this Document: added description. Installation Methods: added a description for the HD_Grub boot diskette and some minor editorial things. Contents of the HD_Grub Boot Diskette: added description. Anatomy of the Boot Loader Configuration Files: replaces the section title Anatomy of the 'syslinux.cfg' and 'isolinux.cfg' Files, adjusted text to describe the three boot loader files in more detail. Anatomy of the 'auto_inst.cfg' File: manualFstab: added 'toFormatCheck' and re-use partitions example. partitions: added some options. services: remove 'udev' service and add warning about getting services actually generated. useSupermount: add 'magicdev' option description. Scratch Built Auto Install Diskette: added Grub Auto Install Diskette. Problems and Issues: add issues about the Community Release.
|
|
10.0.01 |
2004-02-20 |
Adjustments: Contents of the Boot CD-ROM and Diskette: add test directory. Network Auto Install Diskette Set: remove Test Drive warning and adjust text for latest stage1 improvements. Boot CD-ROM and Auto Install Diskette: add note that the diskette can be both vfat or ext2. Problems and Issues: remove Dual Diskette Network Install Hack. Total reformatting and cleanups for html versions.
|
|
10.0.0 |
2004-02-15 |
Initial adjustments for 10.0: Introduction: introduce the 'boot.iso' solution and expand descriptions to include the contents of a CD-ROM created from the 'boot.iso' file. Anatomy of the 'syslinux.cfg' and 'isolinux' Files: added information for isolinux, added parameters proxy_host and proxy_port. Anatomy of the 'auto_inst.cfg' File: minor changes identified in the Options Summary table. Advanced Features: removed warning about IP-based Naming bug. Scratch Built Auto Install Diskette: adjusted and added sections for creating the Network Diskette Set and the Boot CD-ROM methods. Creating an Updated Installation CD Set: adjusted myCD.conf and a few minor script fixes. Problems and Issues: updated with issues as of cooker 2004-02-14. |
Installation of the Mandrakelinux™ distribution on a computer(s) depends on a number of things:
|
Environment: |
is the computer connected to a network, are you trying to use the computer for more than one Operating System (Multi-Boot). |
|
Equipment: |
does the computer contain conventional hardware, or are there special considerations such as USB or PCMCIA devices. |
|
Preferences: |
what works best for you or your situation. |
MandrakeSoft has gone to great lengths to simplify the installation process of their distribution on a large variety of computers, yet provide you a choice of approaches.
The Mandrakelinux™ distribution provides support for three primary installation methods (sources):
via CD-ROM
via Hard Disk with Linux, Windows or Reiser file systems
via Network based Services such as NFS, FTP or HTTP
In addition, there are a few variations that provide support for specific equipment:
via PCMCIA devices
via Other (Non-standard hardware)
And finally, if none of the above work with your hardware, there are a series of Alternatives which utilize different kernel versions for each of the above.
If you have time, read the file on the first Installation CD called INSTALL.htm and the one in the images directory called README for a bit more detail.
|
|
DVD-ROM and CD-ROM are synonymous within this document, except where noted. Installation via Hard Disk has changed and now uses the Grub Boot Loader. Installation via Network Services has changed due to the new 2.6 kernel and the number of network device drivers that need to be supported. Mandrake has split the Network Services boot image into two disk images, one to hold the kernel and message files and a second that contains the network device driver files. Installation can also be performed for any of the available methods by using the new Bootable ISO image. This method allows the use of all three installation modes.
|
CD-ROM based installation is portable. With a floppy diskette and the CD-ROM set, you can install the distribution, anywhere, on any computer that has a CD-ROM drive and a floppy disk drive.
Hard Disk based installation is more for those of you that have multiple disk drives installed in the target computer, one to hold the distribution file set and a second which will contain the installed system. This would most likely be used in situations where the computer dual boots Linux and other OS's. It is not very portable, but it does afford one the ability to install Linux without disturbing the existing OS and it is very fast.
Network based installation is where the flexibility of the Automated Installation process really shines. One computer holds the distribution file set, all other computers only require network based access to the file set. Now I can just carry a single CD-ROM and a diskette to hold the configuration file or 2 diskettes, insert in the desired computer, push reset and go for coffee (almost - the 2 diskettes require that I hang around until the installer prompts me for the second diskette).
With the three options, NFS, FTP and HTTP, you can actually install files from one computer to another, anywhere in the world. However, there are performance and reliability issues which you will have to be prepared to deal with when accessing servers outside your own local world.
There are three installation modes that may be employed for each of the methods:
|
Manual |
this mode is where you select every thing interactively. Most people use this method when they are installing the distribution on their personal workstation computer. |
|
Fully Automated |
this mode is where all selections are predetermined, the installation process is controlled, without manual intervention, by the contents of a simple configuration file and, progress is indicated by simple text messages. It is ideally suited for installations on identical computers. Creative individuals using the postInstall features can overcome most obstacles. |
|
Replay |
this mode is very similar to the fully automated mode, except that progress is indicated via a graphical presentation and, the configuration file provides you with the ability to manually intervene during certain steps. You will love this one for situations where the computers are virtually identical, but you would normally have created a custom install disk to deal with certain hardware peculiarities or, you have a need to perform customization with each installation. |
As I indicated earlier, you are going to have to make some choices that fit your situation and environment. The beauty of all these Choices is that you are not stuck doing it one way....
Before getting started, you should review the descriptions of the various Installation Mediums (diskette, CD-ROM) in the sections following this one.
The simplest approach to get started is to perform a Manual Install, then generate the desired Auto Install diskette. However, before you get started, please check the Errata page on the Mandrake web site (www.linux-mandrake.com) since there may be information there that applies to your equipment. The following are a brief set of steps to get you started.
|
1. |
decide if you are going to perform a CD-ROM, Hard Disk or Network based install. If you are going to do a CD-ROM install, then skip the next step. |
|
2. |
copy the contents of all three CD-ROMs (or single DVD), or obtain the file set via ftp and: |
|
a) |
For a Hard Disk, make sure that the Mandrakelinux™ file set is present on one of the computer's hard disks (partitions). Remember to retain the CD's directory hierarchy. Also, this method requires that you place the files on one of three types of file systems: Linux (ext2), Windows (vfat) or Reiser (a journaling file system). |
|
b) |
For network services, make sure the Mandrakelinux™ file set is accessible on the server you want to use. (see section Setting up a Simple NFS Server). Remember to retain the CD's directory hierarchy. |
|
3. |
Create a boot floppy disk(s) using the appropriate image file(s): images/cdrom.img for a CD-ROM based install (only if your computer can not boot from CD-ROM). images/hd_grub.img for a Hard Disk based install images/network.img and images/network_drivers.img for a Network Services based install. Or create a CD-ROM using the images/boot.iso for an install using any of the available methods. See the INSTALL.txt and the images/README files for instructions on how to create the diskette(s). Also you will find additional / alternate images to use which may resolve situations for your particular equipment setup. |
|
4. |
Boot the computer and perform the installation manually. |
|
5. |
JUST before re-booting, select 'Advanced', then select 'Generate an auto install floppy', then pick either 'Replay' or 'Automated'. This will create the needed diskette(s) containing all the basic files you will need for the next installation. |
|
6. |
Review the contents of the diskette(s) and adjust as necessary before using. See the remainder of this document. |
|
7. |
Install any where, any time and as often as you like, or until the coffee runs out. |
There are a number of different and innovative approaches that you could use rather than the simplistic one above, but then that your job, eh? However, for those of you who are a bit braver or, just want to do it your self then you should see the section Scratch Built Auto Install Diskette for a examples of various customized approaches.
For those of you who were so excited about installing and test driving the new Mandrakelinux™ release that you forgot to 'Generate an auto install floppy', no problem. Mandrakelinux™ has a tool available, as part of the drakconf program (Mandrake Control Center), that will allow you to generate an Auto Install disk at any time after the initial installation, see the section Replay Install for details. Or you can get a copy of the auto_inst.cfg.pl file located in the directory /root/drakx.
In addition to the standard CD-ROM and DVD installations that most users are familiar with, Auto Installation makes use of floppy diskettes and CD-ROMs to initiate and control the installation process. The next three sections describe the contents of the diskette(s) that you generated at the end of the manual installation process described in the previous section.
After completing the 'Generate an auto install floppy' step (using the cdrom, network or pcmcia images), you should have a diskette (two for Network Services based installs) containing the following files:
advanced.msg
This file contains some text that describes a number of advanced options. You could customize this.
auto_inst.cfg
This file contains your selections. See the section Anatomy of the 'auto_inst.cfg' File for details. For Network Services based installs, this file is on the second diskette. In case you were wondering, you will also find this file in the /root/drakx directory with the name auto_inst.cfg.pl.
boot.msg
This file contains a graphic image that appears as soon as you boot from the diskette. You could customize this.
help.msg
This file contains some text regarding the start up options and keys, which you can customize too. It is optional and may not be present on your generated diskette (space limitations).
ldlinux.sys
This is what booted (boot loader). Don't mess with it.
cdrom.rdz or hd.rdz or network.rdz
The file name is dependent on the Method you used to perform the manual install. It contains stage 1 of DrakX and other things which are needed for the automated install.
syslinux.cfg
This file contains information that controls the operation of the 'ldlinux' boot loader. You may have to modify this. See the section Anatomy of the Boot Loader Configuration Files for details.
vmlinuz
This is the compressed Linux kernel image file. Don't mess with this one either.
modules.mar
This file contains all the possible network device drivers supported by the Stage1 installer. It is only present on the second diskette of Network Services based install diskette set.
After completing the 'Generate an auto install floppy' step (using the hd_grub image), you should have a diskette containing the following files:
auto_inst.cfg
This file contains your selections. See the section Anatomy of the 'auto_inst.cfg' File for details. In case you were wondering, you will also find this file in the /root/drakx directory with the name auto_inst.cfg.pl.
menu.lst
This file contains information that controls the operation of the 'grub' boot loader. You may have to modify this. See the section Anatomy of the Boot Loader Configuration Files for details. MandrakeSoft has a web page, http://qa.mandrakesoft.com/hd_grub.cgi, that you should use to help with setting specific parameters need to boot your computer's hardware.
stage1
This is used to load and run stage2. Do not mess with it
stage2
This is the actual Grub Boot Loader program. Do not mess with it either.
After completing the 'Generate an auto install floppy' step, the only file, on the diskette, that is important is:
auto_inst.cfg
This file contains your selections. See the section Anatomy of the 'auto_inst.cfg' File for details. In case you were wondering, you will also find this file in the /root/drakx directory with the name auto_inst.cfg.pl.
After creating a CD-ROM from the boot.iso file, you should have a CD-ROM containing the following files in the isolinux/ directory:
advanced.msg
This file contains some text that describes a number of advanced options. You could customize this.
boot.cat
This file contains information for the isolinux boot loader. Don't mess with it.
boot.msg
This file contains a graphic image that appears as soon as you boot from the diskette. You could customize this.
help.msg
This file contains some text regarding the start up options and keys, which you can customize too.
isolinux.bin
This is what booted (boot loader). Don't mess with it.
isolinux.cfg
This file contains information that controls the operation of the 'isolinux' boot loader. You may have to modify this. See the section Anatomy of the Boot Loader Configuration Files for details.
alt0 and alt1
Are directories containing the following files:
all.rdz
It contains stage 1 of DrakX and other things which are needed for the install.
vmlinuz
This is the compressed Linux kernel image file. Don't mess with this one either.
test
directory containing the memory test program (Press F2 on boot to access).
The contents of the files, syslinux.cfg, menu.lst, isolinux.cfg and auto_inst.cfg, are what the bulk of this document is about, so with out further a due....
Installation is initiated by 'booting' the computer with a specially created boot media (floppy or CD-ROM) that is used to start Stage 1 of the Mandrakelinux™ installation. Stage 1, after obtaining the necessary information, loads and activates the main installation program referred to as Stage 2. Stage 1 and Stage 2 are collectively known as DrakX. This section deals specifically with Stage 1 and the configuration files used by the boot loaders.
The boot media contains a Boot Loader, kernel and the Stage 1 program (the term 'gi' is associated with or is the name of the Stage 1 program). Due to changes in the Mandrakelinux™ distribution, there are now three different boot loader programs used, depending on the installation method desired. The following table illustrates the boot image files (located in images) and their associated media, boot loader and configuration file:
|
Image |
Boot Media |
Boot Loader |
Configuration File |
|---|---|---|---|
|
boot.iso |
CD-ROM |
isolinux |
isolinux/isolinux.cfg |
|
cdrom.img |
floppy |
syslinux |
syslinux.cfg |
|
hd_grub.img |
floppy |
grub |
menu.lst |
|
network.img and network_drivers.img |
2 x floppy |
syslinux |
syslinux.cfg |
|
pcmcia.img |
floppy |
syslinux |
syslinux.cfg |
|
|
|
|
|
Please refer to the section Getting Started and the documentation INSTALL.txt and images/README (on your CD-ROM or the down loaded file set) for details regarding the creation of your desired boot media.
Regardless of the boot media used, the boot process goes something like this:
|
1. |
The computers' BIOS reads the Master Boot Record (MBR), |
|
2. |
Then loads and runs the Boot Loader program, |
|
3. |
The Boot Loader reads its configuration file and retrieves the location and name of the file containing the kernel to be started and the parameters to be passed to the kernel (what this section is all about), |
|
4. |
The kernel is loaded and it in turn runs the Stage 1 install program (its actually hidden in the initial ram disk (the file ending with the .rdz extention). |
|
5. |
And now ... |
The files, isolinux.cfg, menu.lst and syslinux.cfg are used to specify what the boot loader is supposed to do and what options, if any, are available to an installer (you) at boot time. In addition, the boot loader passes parameters to the linux kernel when it loads and starts the kernel; a few of the parameters are used by the kernel, but all the parameters are available to the Stage 1 program. Some of these parameters are specific to an installation method (as is the initial ram disk contained on the floppy/CD-ROM).
Consequently, the Auto Install diskette that you created (at the end of your initial installation or from the Mandrake Control Center on a running system) is set up to match the installation method that was originally used. If you are planning to install multiple computers the same way, then you are all set.
However, if you intend to change the installation method, you will have to create your own Auto Install diskette (see the section Scratch Built Auto Install Diskette). The reason for this is due to the flexibility needed to support a variety of installation methods and options. You just can not get it all on one diskette. This is not as bad as you may think, since the most important file, auto_inst.cfg, is independent of the installation method.
The following are going review the contents of the configuration files as used by MandrakeSoft. For an in-depth description of the capabilities of each loader, please visit their web sites:
for GRUB see the site: http://www.gnu.org/software/grub
for SYSLINUX/ISOLINUX see the site: http://syslinux.zytor.com
Lets begin with samples of the configuration files used for each boot loader. Please note the similarities / differences as you examine them.
This is a fragment extracted from a isolinux.cfg file used with a Network Services:NFS install:
|
default linux |
|
prompt 1 |
|
timeout 50 |
|
display boot.msg |
|
F1 help.msg |
|
F2 advanced.msg |
|
F3 boot.msg |
|
label linux |
|
kernel alt0/vmlinuz |
|
append ramdisk_size=128000 initrd=alt0/all.rdz root=/dev/ram3 acpi=ht |
|
vga=788 kickstart=floppy automatic=method:nfs, |
|
server:fileserver,directory:/Mandrake/10.0, |
|
network:static,ip:192.168.5.202,netmask:255.255.255.0, |
|
gateway:192.168.5.253,dns:192.168.5.253 |
|
|
All the text starting with append through 255.255.255.0, are on ONE line. |
This is a fragment extracted from a menu.lst file used with a Disk Install:
|
timeout 5 |
|
default 0 |
|
fallback 0 |
|
|
|
title Mandrake Install |
|
|
|
root (hd0,6) |
|
kernel /cooker/isolinux/alt0/vmlinuz ramdisk_size=128000 |
|
root=/dev/ram3 acpi=ht vga=788 kickstart=floppy |
|
automatic=method:disk,dis:hde,par:hde7,dir:/cooker, |
|
initrd /cooker/isolinux/alt0/all.rdz |
|
|
All the text starting with kernel through cooker, are on ONE line. |
This is a fragment extracted from a syslinux.cfg file used with a Network Services:NFS install.
|
default linux |
|
prompt 1 |
|
timeout 50 |
|
display boot.msg |
|
F1 help.msg |
|
F2 advanced.msg |
|
F3 boot.msg |
|
label linux |
|
kernel vmlinuz |
|
append ramdisk_size=128000 initrd=network.rdz root=/dev/ram3 acpi=ht |
|
vga=788 kickstart=floppy automatic=method:nfs, |
|
server:fileserver,directory:/Mandrake/10.0, |
|
network:static,ip:192.168.5.202,netmask:255.255.255.0, |
|
gateway:192.168.5.253,dns:192.168.5.253 |
|
|
All the text starting with append through 255.255.255.0, are on ONE line. |
As you can see, the syslinux.cfg and isolinux.cfg files are nearly identical but the menu.lst file is very different. Before we discuss these similarities / differences, we need to review the basic organization of the files.
Each file contains a set of directives which control the actions of the boot loader. These directives can be divided into two groups; global directives and section specific directives. The global ones control the operation of the boot loader, whereas the section directives are only effective when the installer (you) selects them.
The global directives usually occur at the beginning of the file and specify things like which section is selected by default, how long to wait for the installer to select a section, etc.
The section specific directives are identified by a line containing label <name> or title <name> and are followed by two or more lines which specify the kernel image to load and, what parameters to pass to the kernel (and the Stage 1 program) and the initial ram disk image to be used. The <name> parameter is the value that an installer would type in (or select) at the boot prompt to select a specific section other than the default one.
Two of the above fragments , syslinux.cfg
and isolinux.cfg, are
virtually identical except for the
kernel
alt0/vmlinuz and the initrd=alt0/all.rdz.
These similarities are the result of the two boot loaders being
supplied by the same developer. The difference is simply due to the
placement of the files on the associated boot media.
The third fragment, menu.lst, is substantially different. This is due to the fact that a different developer had a concept that differed from that of the developer of the other two fragments.
However, the important part of these three fragments begins with kickstart=. This is the start of the Stage 1 parameters and are the subject of this section.
The section Scratch Built Auto Install Diskette will provide you with example for all three boot loaders.
The following details the purpose of the directives that you can use in the three configuration files. You should visit the web page for each boot loader for more information regarding their capabilities and the options that are available to you. MandrakeSoft only uses a subset because they are generating "general purpose" files. You, on the other hand, are not as limited.
Boot Graphics
If you want to change the default graphics (boot.msg) for the syslinux or isolinux boot loaders, you need to read the file /usr/share/doc/syslinux*/README.graphics.
The Global Directives are not method or mode specific, rather they affect all methods / modes the same.
|
default linux |
if the user presses ENTER or the optional timeout expires, this tells the loader to locate the section with the label linux and begin booting the kernel as defined by the lines after the label <name>. |
|
prompt 1 |
this tells the loader to prompt the user to enter an alternate label rather than just using the default section. You can have several different boot scenarios in this file, which is the reason that the generated file has so much in it. This parameter is optional, removing it means the installer (you) will not have the ability to select an alternate boot section. |
|
timeout 50 |
this tells the loader to give the installer (you) 5 seconds to begin entering another label before using the default section and continuing on with the boot/install process. This parameter is optional and is not necessary if prompt is not used. |
|
display boot.msg |
this tells the loader
to display the contents of the specified file before presenting a
prompt. This is optional, but it may be a good idea to remind
the installer what is being installed. If you want a flashy
graphic message, then see the file
|
|
F1 help.msg |
if the user presses the F1 key, then display the specified file's contents. This parameter and associated file are optional. |
|
F2 advanced.msg |
if the user presses the F2 key, then display the specified file's contents. This parameter and associated file are optional. |
|
F3 boot.msg |
if the user presses the F3 key, then display the specified file's contents. This parameter and associated file are optional. |
|
label linux |
this names a section that defines specific information that the loader uses for booting Stage 1 of the installation process. The value associated with any section label can be typed by the user at the prompt to instruct the loader to find the specific section, rather than use the one named by the default directive. |
|
default 0 |
if the optional timeout expires, this tells the loader to locate the first section with the title keyword and begin booting the kernel as defined by the lines after the title. As usual, the debate about 0 meaning first continues. |
|
fallback 0 |
this tells the loader to use an alternate section should a error be encountered with the default section. This parameter is optional, removing it means the installer will not have the ability to select an alternate boot section. |
|
timeout 5 |
this tells the loader to give the user 5 seconds to select another section (title) before using the default and continuing on with the boot/install process. A value of 0 means wait forever. |
|
title linux |
this names a section that defines specific information that the loader uses for booting Stage 1 of the installation process. The value associated with any section label can be selected by the user at the prompt to instruct the loader to find the specific section, rather than use the one identified by the default directive. |
Section directives are preceded with the label (or title) directive.
In this case, a section contains a kernel and an append directive (see the section Advanced Features for special options).
|
kernel vmlinuz |
this is the name of the file containing the compressed kernel image to load and start. |
|
append=... |
this is a list of space separated parameters passed to the kernel when the loader starts it. |
If you look in the file that was generated, you will find a number of sections (choices) that an installer could select. Each has a different effect or purpose which the following table briefly describes:
|
vgalo, vgahi, vga16 |
Are just different resolutions for graphic installs. |
|
text |
Is a text based install. |
|
expert |
Has the advantage of disabling Automatic Hardware Detection. |
|
rescue |
Allows you to repair an already installed system using the CD-ROM. |
|
patch |
Allows you to install a patch from a floppy diskette. |
|
acpi |
Enables the Advanced Configuration and Power Interface. The other sections limit the ACPI to boot time enumeration. See the kernel documentation for more details. |
|
memtest |
Starts the stand-alone memory test. NOTE: only available when using the CD-ROM created from the boot.iso image. |
In this case, a section contains a kernel and an initrd directive (see the section Advanced Features for special options).
|
root (hd0,6) |
this tells the boot loader what disk drive and partition on the hard disk, as seen from the BIOSs' perspective, where the specified kernel and initial ram disk can be found. This can be really tricky for those of you, like me, using a mother board with a 'promise' controller (possibly others) that an installed system sees as /dev/hde but the BIOS sees it as the first hard drive. |
|
|
Mandrake has provided a web page to help you solve this little pain in the butt at: http://qa.mandrakesoft.com/hd_grub.cgi. |
|
kernel ... |
this is a list of space separated parameters passed to the kernel when the loader starts it. The name of the compressed kernel image is specified here and the boot loader installs it into memory before activating it and passing it the parameters. |
|
initrd ... |
this is the location of the initial ram disk image that is loaded and used to create a temporary file system for the kernel when the loader starts it. |
DrakX supports a substantial number of parameters that can be used to control its operation. This section will describe just the ones that affect the Automated Install.
|
|
You are going to get caught with this one so I will tell you now; the kernel will only pass a maximum of 256 characters from the 'append' (or 'kernel') line through to the Stage 1 installer, so be careful. |
If you examine the configuration file fragments closely, you will notice that there are a few kernel parameters present. These are normally placed at the end of the 'append' (or 'kernel') line so that the 256 character limit can be fully used for parameters passed to the Stage 1 installer. For the convenience of this documents text, I placed them at the end.
The following are common and not related to a specific method or mode but they are specific to the boot loader used.
|
kickstart=floppy |
required, do not change. This actually causes the installer to look on the floppy diskette for the auto_inst.cfg file. An interesting tidbit; if you omit this option and set the automatic= option, you can do GUI based installs without having to enter the method information each time. Of course the auto_inst.cfg file, if present, is ignored. |
|
netauto |
optional, this parameter is required if you are using a DHCP server to provide the name of the auto_inst.cfg file. See the section Advanced Features - DHCP Server. |
|
ramdisk_size=128000 |
required kernel parameter, do not change. |
|
root=/dev/ram3 |
required kernel parameter, do not change. |
|
acpi=ht |
optional kernel parameter, dependent on your motherboard. For more details check the kernel document Documentation/kernel-parameters.txt. |
|
vga=788 |
required, can be changed. Generally, this parameter affects the GUI installation, but it does have interesting effects when used in the Automated install. If you want details, then check out the kernel documents: Documentation/svga.txt and Documentation/i386/boot.txt |
|
text |
80x25 text |
|
vga16 |
80x25 text, 640 x 480 GUI |
|
785 |
80x30 text, 640 x 480 GUI (frame buffer) |
|
788 |
100x37 text, 800 x 600 GUI (frame buffer) |
|
791 |
130x48 text, 1024 x 768 GUI (frame buffer) |
|
794 |
158x64 text, 1280 x 1024 GUI (frame buffer) |
|
Others you can play with: |
|
|
0x0f01 |
80x50 text |
|
0x0f02 |
80x43 text |
|
0x0f03 |
80x28 text |
|
0x0f05 |
80x30 text |
|
0x0f06 |
80x34 text |
|
0x0f07 |
80x60 text |
|
0x0122 |
100x30 text |
|
Ask |
prompt for desired video characteristics to use. You can use this to determine the selections actually available for your video card. |
|
initrd=network.rdz |
required, changes based on the type of method being used: |
|
cdrom.rdz |
for CD-ROM |
|
hd_grub.rdz |
for Hard Disk |
|
network.rdz |
for Network Services |
|
all.rdz |
used with 'boot.iso' |
|
pcmcia.rdz |
for PCMCIA devices |
|
kickstart=floppy |
required, do not change. This actually causes the installer to look on the floppy diskette for the auto_inst.cfg file. An interesting tidbit; if you omit this option and set the automatic= option, you can do GUI based installs without having to enter the method information each time. Of course the auto_inst.cfg file, if present, is ignored. |
|
ramdisk_size=128000 |
required kernel parameter, do not change. |
|
root=/dev/ram3 |
required kernel parameter, do not change. |
|
acpi=ht |
optional kernel parameter, dependent on your motherboard. For more details check the kernel document Documentation/kernel-parameters.txt. |
|
vga=788 |
required, can be changed. Generally, this parameter affects the GUI installation, but it does have interesting effects when used in the Automated install. If you want details, then check out the kernel documents: Documentation/svga.txt and Documentation/i386/boot.txt |
|
text |
80x25 text |
|
vga16 |
80x25 text, 640 x 480 GUI |
|
785 |
80x30 text, 640 x 480 GUI (frame buffer) |
|
788 |
100x37 text, 800 x 600 GUI (frame buffer) |
|
791 |
130x48 text, 1024 x 768 GUI (frame buffer) |
|
794 |
158x64 text, 1280 x 1024 GUI (frame buffer) |
|
Others you can play with: |
|
|
0x0f01 |
80x50 text |
|
0x0f02 |
80x43 text |
|
0x0f03 |
80x28 text |
|
0x0f05 |
80x30 text |
|
0x0f06 |
80x34 text |
|
0x0f07 |
80x60 text |
|
0x0122 |
100x30 text |
|
Ask |
prompt for desired video characteristics to use. You can use this to determine the selections actually available for your video card. |
The automatic parameter is used to select the install method type (cdrom, disk, nfs, ftp or http) and to specify additional parameters as necessary. Any additional parameters are appended after the method type, with each being separated by a COMMA (,) rather than a SPACE. It uses the following general form:
automatic=method:<type>,<parameter>:<value>,
The following are a summary of the method parameters grouped by method type along with any special notes. The additional parameters are simply concatenated together to form a single comma separated string.
automatic=method:cdrom,
|
|
For those of you that are using CD-ROMs as the source media, the option interactive (see the section Anatomy of the 'auto_inst.cfg' File) is especially pertinent to package installation from more than the first CD. |
|
domain:eastcott.net, |
allows you to preset the domain name for the computer. |
|
hostname:linux1, |
allows you to set the host name for the computer. |
automatic=method:disk,
|
directory:/Mandrake/10.0, |
root directory where the files are found or, it may also specify the location and name of an ISO image (this image must be the 'first' CD's ISO image). |
|
|
If you specify an ISO file name, then you will be limited to installing ONLY those packages which are available in that ISO image. You will not be able to install packages from the other ISO images which form the complete set. |
|
disk:hda, |
disk drive containing the directory or ISO image. |
|
domain:eastcott.net, |
allows you to preset the domain name for the computer. |
|
hostname:linux1, |
allows you to set the host name for the computer. |
|
partition:hda6, |
partition number of the specified disk drive containing the directory or ISO image. |
automatic=method:nfs,
|
interface:eth1, |
specifies the ethernet interface to use (eg. eth0, eth5, etc.). It is only required when there is more than 1 ethernet interface. This feature can only be used if DrakX can auto detect ALL the ethernet cards. The trick when installing with multiple network card is convincing the computer that the ethX you specify is the same one it thinks is ethX. If you do not use the interface parameter, DrakX will ask you which one you want and then it will prompt you for the relevant information based on your specified method. |
|
server:fileserver, |
machine where the installable files are located, can be an IP or a host.domain (or host). |
|
directory:/Mandrake/10.0, |
root directory where the files are found. |
|
network:static, |
means you are going to specify the necessary IP information; |
|
ip:192.168.5.202, |
what is it for this machine. |
|
netmask:255.255.255.0, |
what is it's netmask. This is optional and is only required if you are using a non-standard netmask. |
|
gateway:192.168.5.253, |
what is the gateway's IP. This is optional and should only be included if the specified fileserver is not located on the same subnet. |
|
dns:192.168.5.253, |
what is the IP for the DNS server. Up to three DNS servers can be specified, each IP is separated by a comma. This is optional and should not be included if you do not have or use a DNS server. If it is not included, then the server: option must contain an IP address instead of a name. |
|
or |
|
|
network:dhcp, |
means the IP, netmask, gateway and dns parameters are provided by the dhcp server. Depending on how the dhcp and DNS servers are configured, the host name and domain name may also be supplied. |
|
or |
|
|
network:adsl, |
means the IP, netmask, gateway and dns parameters are provided by the ADSL service provider when you connect. |
|
adsluser:my_adsl_name, |
user name, as required, to login to your ADSL service provider. |
|
adslpass:my_password, |
password, as required, to login to your ADSL service provider. |
|
|
If you have selected network:adsl, be aware that ONLY the PPPoE protocol is currently supported. |
|
domain:eastcott.net, |
optionally allows you to preset the domain name for the computer. This parameter is only required if the stage 1 installer can not obtain the domain name from your DNS Server for the IP address that you specified. |
|
hostname:linux1, |
optionally allows you to set the host name for the computer. This parameter is only required if the stage 1 installer can not obtain the host name from your DNS Server for the IP address that you specified. |
automatic=method:ftp,
|
interface:eth1, |
specifies the ethernet interface to use (eg. eth0, eth5, etc.). It is only required when there is more than 1 ethernet interface. This feature can only be used if DrakX can auto detect ALL the ethernet cards. The trick when installing with multiple network card is convincing the computer that the ethX you specify is the same one it thinks is ethX. If you do not use the interface parameter, DrakX will ask you which one you want and then it will prompt you for the relevant information based on your specified method. |
|
server:fileserver, |
machine where the installable files are located, can be an IP or a host.domain (or host). |
|
directory:/Mandrake/10.0, |
root directory where the files are found. |
|
network:static, |
means you are going to specify the necessary IP information; |
|
ip:192.168.5.202, |
what is it for this machine. |
|
netmask:255.255.255.0, |
what is it's netmask. This is optional and is only required if you are using a non-standard netmask. |
|
gateway:192.168.5.253, |
what is the gateway's IP. This is optional and should only be included if the specified fileserver is not located on the same subnet. |
|
dns:192.168.5.253, |
what is the IP for the DNS server. Up to three DNS servers can be specified, each IP is separated by a comma. This is optional and should not be included if you do not have or use a DNS server. If it is not included, then the server: option must contain an IP address instead of a name. |
|
or |
|
|
network:dhcp, |
means the IP, netmask, gateway and dns parameters are provided by the dhcp server. Depending on how the dhcp and DNS servers are configured, the host name and domain name may also be supplied. |
|
or |
|
|
network:adsl, |
means the IP, netmask, gateway and dns parameters are provided by the ADSL service provider when you connect. |
|
adsluser:my_adsl_name, |
user name, as required, to login to your ADSL service provider. |
|
adslpass:my_password, |
password, as required, to login to your ADSL service provider. |
|
|
If you have selected network:adsl, be aware that ONLY the PPPoE protocol is currently supported. |
|
domain:eastcott.net, |
optionally allows you to preset the domain name for the computer. This parameter is only required if the stage 1 installer can not obtain the domain name from your DNS Server for the IP address that you specified. |
|
hostname:linux1, |
optionally allows you to set the host name for the computer. This parameter is only required if the stage 1 installer can not obtain the host name from your DNS Server for the IP address that you specified. |
|
user:anonymous, |
user name, as required, for ftp login. |
|
pass:david@eastcott.net, |
pass word, as required, for ftp login. |
|
proxy_host:prx.eastcott.net, |
optionally specifies the gateway to contact the real ftp host. |
|
proxy_port:8080, |
used with proxy_host to specify the port number to be used. |
automatic=method:http,
|
interface:eth1, |
specifies the ethernet interface to use (eg. eth0, eth5, etc.). It is only required when there is more than 1 ethernet interface. This feature can only be used if DrakX can auto detect ALL the ethernet cards. The trick when installing with multiple network card is convincing the computer that the ethX you specify is the same one it thinks is ethX. If you do not use the interface parameter, DrakX will ask you which one you want and then it will prompt you for the relevant information based on your specified method. |
|
server:fileserver, |
machine where the installable files are located, can be an IP or a host.domain (or host). |
|
directory:/Mandrake/10.0, |
root directory where the files are found. |
|
network:static, |
means you are going to specify the necessary IP information; |
|
ip:192.168.5.202, |
what is it for this machine. |
|
netmask:255.255.255.0, |
what is it's netmask. This is optional and is only required if you are using a non-standard netmask. |
|
gateway:192.168.5.253, |
what is the gateway's IP. This is optional and should only be included if the specified fileserver is not located on the same subnet. |
|
dns:192.168.5.253, |
what is the IP for the DNS server. Up to three DNS servers can be specified, each IP is separated by a comma. This is optional and should not be included if you do not have or use a DNS server. If it is not included, then the server: option must contain an IP address instead of a name. |
|
or |
|
|
network:dhcp, |
means the IP, netmask, gateway and dns parameters are provided by the dhcp server. Depending on how the dhcp and DNS servers are configured, the host name and domain name may also be supplied. |
|
or |
|
|
network:adsl, |
means the IP, netmask, gateway and dns parameters are provided by the ADSL service provider when you connect. |
|
adsluser:my_adsl_name, |
user name, as required, to login to your ADSL service provider. |
|
adslpass:my_password, |
password, as required, to login to your ADSL service provider. |
|
|
If you have selected network:adsl, be aware that ONLY the PPPoE protocol is currently supported. |
|
domain:eastcott.net, |
optionally allows you to preset the domain name for the computer. This parameter is only required if the stage 1 installer can not obtain the domain name from your DNS Server for the IP address that you specified. |
|
hostname:linux1, |
optionally allows you to set the host name for the computer. This parameter is only required if the stage 1 installer can not obtain the host name from your DNS Server for the IP address that you specified. |
|
proxy_host:prxy.eastcott.net, |
optionally specifies the gateway to contact the real http host. |
|
proxy_port:8080, |
used with proxy_host to specify the port number to be used. |
Documenting how you should use the network:dhcp option and the related domain and hostname options is difficult since they are highly dependent on the characteristics and interactions of your DHCP and DNS servers. In addition to the conventional servers, there are a number of devices capable of acting as DHCP servers for a LAN which are designed primarily for use in the Windows world and may require a bit of effort on your part to get it working.
Since there are may ways to set the DHCP / DNS servers up, I will present a few of the more common arrangements and what may be required for the Stage 1 installer. These are by no means the only ways.
DHCP servers can be configured to provide IP, host name and domain name information based solely on the ethernet address of the network card in a computer. An associated DNS server can be pre-configured with the IP and host name association, or the DHCP server can inform the DNS server of the IP/name association (Dynamic DNS). In this case all that is required is the network:dhcp, parameter.
Another configuration scenario is where the computer must supply a host name when requesting IP information, then the DHCP server will return the IP, host name, and domain name information. This is the usual case for most Cable Modem connections and is the behaviour exhibited by most Windows based computers. Again, the DNS server can be pre-configured with the association or the DHCP server can inform it with the necessary information (DDNS). In this case, both the network:dhcp, and hostname:linux1, parameters are required.
Finally, there is the case where the DHCP server does not return the host name or domain name to be used, and/or the DNS server does not contain the IP to name association or is not informed by the DHCP server. In this case you will need to supply all three parameters, network:dhcp,hostname:linux1,domain:eastcott.net.
The Stage 1 installer passes what ever information it is provided (from the parameters supplied, from the DHCP server or the DNS server) to the stage 2 installer to set up the final configuration for your computer. Your actual DHCP / DNS environment will have an impact on two possible aspects of an automated install. For NFS installs, if the IP that you are assigned does not have an associated host name that the NFS server can obtain from a DNS server, you will have to ensure that the NFS server is set for IP authentication rather than name authentication (see the section Setting up a Simple NFS Server, Step 5). Also, the DHCP server can be configured to supply the name and location of the auto_inst.cfg file (see the section DHCP Server) in the Advanced Features section of this document.
Regardless of how you think every things is supposed to work, you are advised to discuss things with your network administrator and experiment a bit to determine the best approach(s) for your actual environment.
The problem of the 256 character line length can be mitigated somewhat by the use of aliases for some of the parameters as follows:
|
Full Name |
Alias |
|
adslpass |
adslp |
|
adsluser |
adslu |
|
directory |
dir |
|
disk |
dis |
|
domain |
dom |
|
gateway |
gat |
|
hostname |
hos |
|
interface |
int |
|
method |
met |
|
netmask |
netm |
|
network |
netw |
|
password |
pass |
|
partition |
par |
|
proxy_host |
proxh |
|
proxy_port |
proxp |
|
server |
ser |
|
user |
use |
By rewriting one of the fragments from the beginning of this section using the aliases, you get the following:
|
default linux |
|
prompt 1 |
|
timeout 50 |
|
display boot.msg |
|
F1 help.msg |
|
F2 advanced.msg |
|
F3 boot.msg |
|
label linux |
|
kernel vmlinuz |
|
append kickstart=floppy automatic=met:nfs, |
|
ser:fileserver,dir:/Mandrake/10.0, |
|
netw:static,ip:192.168.5.202,netm:255.255.255.0, |
|
gat:192.168.5.253,dns:192.168.5.253 ramdisk_size=128000 |
|
initrd=network.rdz root=/dev/ram3 acpi=ht vga=788 |
|
|
All the text starting with append through 788 are on ONE line. |
For those of you who noticed, this example is now passed through to the Stage 1 installer intact (which, by the way, the original fragment is not).
The automated installation feature of DrakX is controlled by the contents of a file named 'auto_inst.cfg'. This file is generally located on the boot floppy diskette that you create manually, at the end of the initial installation process, or using the Mandrake Control Center (drakconf) or drakautoinst from an installed system. However, it can also be located in a sub-directory of the method installation source media (see the section The 'auto_inst.cfg' File Location).
The contents of the auto_inst.cfg file are comprised of a Perl Scalar Structure declaration (o). The declaration $o = {...}; is used by the DrakX program to preset various options and selections. Within the opening/closing braces are a series of simple and/or compound declarations (representing your selections).
During a manual install, the various declarations are created and the appropriate fields filled in as you made choices from the various screens. Then when you created the Automated or Replay diskette, selected portions of this structure were simply dumped to a file that will control the actions of DrakX when an Automated or Replay install is done.
An Automated Install requires that all the choices be pre-selected using either the file generated by the install program or, manually by you. Me, I am a bit lazy so I generate an initial diskette at the end of the install or using drakautoinst, then modify it to suit my requirements.
The remainder of this section describes the options available for the o$ declaration.
As always, if you want the gory details regarding how and what, look on the CD-ROM (or installation source media) in the directory Mandrake/mdkinst/usr/bin/perl-install for the actual perl modules. MandrakeSoft has made the DrakX installer code available for public inspection via their CVS repository (see http://www.linux-mandrake.com/cgi-bin/cvsweb.cgi/). In addition to the source code, there are a variety of documents and text files that contain things you may be interested in.
There are a substantial number of options (choices) that are available to you and the following is a brief summary of the ones that you can preset (just to wet your appetite). You will find detailed descriptions for each, along with examples, on the subsequent pages.
|
|
|
||
|
|
M |
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
M |
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
M |
||
|
|
|
||
|
|
|
||
|
M |
|
||
|
M |
M |
||
|
|
|
||
|
|
|
|
|
There have been some additions and a number changes to the various options since the previous release of Mandrakelinux™. I have added an indicator: N (new), C (important changes to content) or M (modified, added or deleted capability) to the left of each affected option listed above.
Additional notes: wacom is now defined in the 'mouse' option.
This option is used to specify how user logins are authenticated.
|
'authentication' => { |
|
|
|
'shadow' => 1, |
|
'md5' => 1, |
|
'NIS' => undef, |
|
'LDAP' => undef, |
|
'winbind' => undef, |
|
}, |
Descriptions:
|
'shadow' |
Indicates if shadow passwords are used. |
|
|
0 - disables |
|
|
1 - enables |
|
'md5' |
Used to specify if md5 encryption is to be used for passwords. |
|
|
0 - disables, (use default crypt) |
|
|
1 - enables |
|
'NIS' |
Indicates if a NIS server is to be used for authentication |
|
|
'' - if NIS is not being used. Also, if this line is not present, it means no NIS too. |
|
|
'broadcast' - if the NIS server is accessed via a broadcast message |
|
|
'<nisserver>' - name of the machine containing the NIS server. |
|
'LDAP' |
Indicates if a LDAP server is to be used for authentication. |
|
|
'' - if LDAP is not being used. Also, if this line is not preset, it means no LDAP too. |
|
|
'<ldapserver>' - name of the machine containing the LDAP server. |
|
'windbind' |
Indicates if a Windows PDC (primary domain controller) is being used for authentication. |
|
|
'' - if the PDC is not being used. Also, if this line is not preset, it means no PDC too. |
|
|
'<AdminUser>' - user name to be used to join the domain. |
|
'winpass' |
used only with 'windbind'. |
|
|
'' - no pass word. |
|
|
'<AdminPass>' - pass word to be used when joining the domain as '<AdminUser>'. |
|
|
For this to work for a W2K PDC, you will probably need to have the administrator run: |
|
|
C:\>net localgroup "Pre-Windows2000 Compatible Access" everyone /add |
|
and reboot the server. |
By default, Mandrakelinux™ installations enable md5 and shadow. Also, you will probably have noticed that the GUI based install no longer gives you the ability to select/de-select these two, rather the Local files selection is used to indicate them.
If you select NIS, LDAP or winbind, you will have to add NISDOMAIN, LDAPDOMAIN or WINDOMAIN to the option netc. If the appropriate one is not added, then the installer automatically sets them to the same value as DOMAINNAME.
Examples:
The following is used to illustrate the expected entries for a Windows PDC:
|
'authentication' => { |
|
|
|
'windbind' => 'Administrator', |
|
'winpass' => 'admin' |
|
}, |
Related Option Entries:
This option is used to direct the installation process to automatically exit and re-boot the computer when the installation is complete.
|
'autoExitInstall' => 1, |
Descriptions:
|
'autoExitInstall' |
what you want to do when installation is complete |
|
|
0 - prompt the installer to re-boot and wait |
|
|
1 - re-boot the computer automatically. |
|
|
When you do a manual install, the auto_inst.cfg.pl file created in /root/drakx has this value set to 1. If you generated an Automated or Replay diskette, the auto_inst.cfg file also has this value set to 1. CHANGE it to 0, otherwise the computer will re-boot and start the install all over again. |
Related Option Entries:
none.
This is used to have the system automatically login a specific user, rather than having the usual login prompt. This feature can be used with a single user only and, the user should be defined (see the option users).
If the auto-login feature is not desired, then do not include this in your file.
|
'autologin' => 'david', |
Descriptions:
|
'autologin' |
specifies the name of the user that the system is to automatically log in as. Change it as you desire, but to a valid user only. |
The installation process creates the file /etc/sysconfig/autologin and places USER=<your user name> along with a few other values in it.
Related Option Entries:
This option allows you specify the boot loader to be installed and the associated parameters that it requires. The general structure and relevant parameters for each loader are presented and explained in their own section, rather than trying to show you the whole thing and adding comments indicating which parameter is valid for which boot loader. Also, check the notes at the end of each section for tidbits.
A couple things worth noting:
|
|
The new graphic startup display (bootsplash) is activated when the 'default' kernel image loaded has the 'linux' label. |
|
The verbosity of both the kernel and the SysVinit scripts is controlled by the presence or absence of the keyword 'quiet' in the 'append' declaration. |
The following is specifically for the x86 architecture.
DrakX is capable of installing either the Lilo or Grub boot loaders for 'x86' type computers. The following causes DrakX to install the Lilo boot loader and create the file /etc/lilo.conf. You really want to look at 'man conflicting' for the correct explanation for some of the following.
|
'bootloader' => { |
|
|
|
'method' => 'lilo-text' |
|
'boot' => '/dev/hda', |
|
'default' => 'my_linux', |
|
'install' => '/boot/boot.b', |
|
'lba32' => 1, |
|
'map' => '/boot/map', |
|
'message' => "My text boot up\n", |
|
'timeout' => '5', |
|
|
|
'entries' => [ |
|
{ |
|
'type' => 'image', |
|
'kernel_or_dev' => '/boot/vmlinuz', |
|
'label' => 'my_linux', |
|
'root' => '/dev/hda6', |
|
'initrd' => '/boot/initrd.img', |
|
'append' => 'mem=128M', |
|
'read-write' => 0, |
|
or |
|
'type' => 'other', |
|
'kernel_or_dev' => '/dev/zip', |
|
'label' => 'zip', |
|
'unsafe' => 1, |
|
} |
|
] |
|
}, |
Descriptions:
|
'method' |
this entry defines the boot loader options; for x86 and IA64 computers this may be one of the following: |
|
|
'lilo-text' - the LILO boot loader is installed with a simple text based prompt. |
|
|
'lilo-menu' - the LILO boot loader is installed with a text based menu. |
|
|
'lilo-graphic' - the LILO boot loader is installed with a graphical menu. |
|
|
'grub' - the GRUB boot loader is installed. |
|
'append' |
if present, it is placed in the lilo.conf and used as lilo's default for any per image entry that does not contain an 'append'. It is used to specify parameters to be passed to the kernel. eg. 'mem=128M console=ttyS0,9600n8'. |
|
'boot' |
this allows you to specify the disk drive that it to be used as the boot device. Do not include the partition number. eg. '/dev/hda' or '/dev/hde'. |
|
'compact' => 1, |
if present, says to try and merge read requests for adjacent sectors. This is seldom used. |
|
'crushMbr' => 1, |
if this is present, it means replace (crush) the existing Master Boot Record and install the lilo equivalent. |
|
'default' |
this is used to specify the default kernel image to boot. The value here is the 'label' value for one of the defined 'entries'. eg. 'my_linux'. |
|
'install' |
this is used to
specify the file containing the new master boot record. |
|
'linear' => 1, |
if present, says to generate linear sector addresses instead of sector/head/cylinder. This is seldom used. Use only if the device does not support 'lba32'. |
|
'map' |
this is the name and location of the map file created by lilo. eg. '/boot/map'. |
|
'message' |
this allows you to create a customized boot message. It is optional and if included, causes the file /boot/message to be created containing your string (don't forget to include '\n' where appropriate. Also use double quotes (") ). If it is not included, then DrakX creates a default message for you. |
|
'password' |
if present, it specifies a pass word string (clear text) used to protect booting of all images. eg. 'dickie'. In addition, the permissions for lilo.conf will be set to 0600. |
|
'perImageAppend' => '', |
if this is present, then DrakX uses the values here as the append for each entry it automatically creates. Note, DrakX creates this if it detects that there are any IDE CD-RW or CD Burners installed, if the 'miscellaneous' => { 'HDPARM '} is set, if it detects that you used mem= at the boot prompt or, if the syslinux.cfg file contains either mem= or console= in the append directive. |
|
|
NOTE: If console=ttyS0,9600n8 is present somewhere in the value, then DrakX will automatically add serial=0,9600n8 to the lilo.conf file. You can set the parameters for the console= to what ever you require, the previous was just an example. However, if you do use the console= , you might want to consider adding it to the 'append' as well. |
|
'restricted' => 1, |
if present, reduces the boot up password enforcement so that the user must enter a pass word only if the user enters additional parameters. 'password' must be present if 'restricted' is present. |
|
'timeout' |
the time, in seconds,
to wait for the user to enter a desired image. |
|
'vga' |
if present, this is used to set the default video mode and can be: |
|
'ask' |
Ask at boot (kinda nice if you're just playing around) |
|
'normal' |
80 x 25 (default) |
|
'0x0f01' |
80 x 50 |
|
'0x0f02' |
80 x 43 |
|
'0x0f03' |
80 x 28 |
|
'0x0f05' |
80 x 30 |
|
'0x0f06' |
80 x 34 |
|
'0x0f07' |
80 x 60 |
|
'0x0122' |
100 x 30 |
|
'785' |
640 x 480 in 16 bits (Frame Buffer only) |
|
'788' |
800 x 600 in 16 bits (Frame Buffer only) |
|
'791' |
1024 x 768 in 16 bits (Frame Buffer only) |
|
'794' |
1280 x 1024 in 16 bits (Frame Buffer only) |
|
'entries' |
this is an array of 'per image' entries describing selectable boot images. Normally you should not need to add any since DrakX installs a number of default entries which represent your computer's equipment. However if you do add a new one and it has the same label as an internally defined one (linux, linux-2.2, linux-hack, failsafe, failsafe-2.2, failsafe-hack, floppy, default, linux-up, linux-2.2up, linux-hackup, linux-nonfb, linux-2.2nonfb, linux-hacknonfb, NT, dos, windows) DrakX will rename your new one to old_... when it adds yours. So be careful. |
Each entry has one of two forms:
|
'type' => 'image', |
specifies that this image describes a Linux kernel image to boot. |
|
'kernel_or_dev' |
specifies the location
and name of the kernel image to boot. |
|
'label' |
specifies the name associated with this image. eg. 'my_linux'. |
|
'root' |
specifies the partition to be mounted as 'root'. eg. '/dev/hda6'. |
|
'initrd' |
if present, specifies
the location and name of the initial ram disk to be loaded. |
|
'append' |
if present, specifies
the kernel parameters for this image. |
|
'vga' |
if present, specifies the video mode to be used with this image. ( See 'vga' above.). |
|
'read-write' => 1, |
if present, indicates the root file system is to be mounted read-write. If it is NOT present, then the root file system is mounted read-only. |
or,
|
'type' => 'other', |
specifies that this image describes an arbitrary operating system to boot. |
|
'kernel_or_dev' |
specifies the device to boot. eg. '/dev/zip' or '/dev/hdb'. |
|
'label' |
specifies the name associated with this image. eg. 'my_linux'. |
|
'unsafe' => 1, |
see man lilo.conf. |
|
'table' |
see man lilo.conf. |
|
'map-drive' |
see man lilo.conf. |
This loader is used on PowerPC computers. The following causes DrakX to create the file /etc/yaboot.conf. You really want to look at 'man yaboot.conf' for the correct explanation for some of the following.
|
'bootloader' => { |
|
|
|
'method' => 'yaboot', |
|
|
|
'boot' => '/dev/hda', |
|
'delay' => 30, |
|
'default' => 'my_linux', |
|
'defaultos => 'linux', |
|
'enablecdboot' => 1, |
|
'enableofboot' => 1, |
|
'init-message' => "My init text\n", |
|
'message' => "My text boot up\n", |
|
'timeout' => 50, |
|
'xfsroot' => undef, |
|
|
|
'entries' => [ |
|
{ |
|
'type' => 'image', |
|
'kernel_or_dev' => '/boot/vmlinuz', |
|
'label' => 'my_linux', |
|
'root' => '/dev/hda6', |
|
'initrd' => '/boot/initrd.img', |
|
'append' => undef, |
|
'read-write' => 0, |
|
} |
|
] |
|
}, |
Descriptions:
|
'methods' |
this entry defines the boot loader options the PowerPC and must be 'yaboot'. |
|
'append' |
if present, it is placed in the yaboot.conf and used as yaboot's default for any per image entry that does not contain an 'append'. It is used to specify parameters to be passed to the kernel. eg. 'mem=128M serial=0,9600n8'. |
|
'boot' |
this allows you to specify the disk drive that it to be used as the boot device. Do not include the partition number. eg. '/dev/hda' or '/dev/hde'. |
|
'delay' |
the time, in seconds, for the Open Firmware Delay. |
|
'default' |
this is used to specify the default kernel image to boot. The value here is the 'label' value of one of the defined 'entries'. eg. 'my_linux'. |
|
'defaultos' |
is one of 'linux', 'macos', 'macosx' or 'darwin'. |
|
'enablecdboot' => 1, |
enables booting from CD. |
|
'enableofboot' => 1, |
enables booting using Open Firmware. |
|
'init-message' |
this allows you to create a customized boot message. It is optional and if included, will causes the file boot loader to display your string. Also use double quotes ("). |
|
'message' |
this allows you to create a customized boot message. It is optional and if included, causes the file /boot/message to be created containing your string (don't forget to include '\n' where appropriate. Also use double quotes (") ). If it is not included, then DrakX creates a default message for you. |
|
'perImageAppend' => '', |
if this is present, then DrakX uses the values here as the append for each entry it automatically creates. Note, DrakX creates this if it detects that there are any IDE CDRW or CD Burrners installed, if the 'miscellaneous' => { 'HDPARM '} is set, if it detects that you used mem= at the boot prompt or, if the syslinux.cfg file contains either mem= or console= in the append directive. |
|
'timeout' |
the time, in tenths (0.1) of seconds, to wait for the user to enter a desired image. eg. '10'. Also, this forces a prompt for the 'label' name to boot. |
|
'xfsroot' => 1, |
causes initrd-size=6144 to be added to every entry with a type of 'image'. |
|
'entries' |
this is an array of 'per image' entries describing selectable boot images. DrakX installs a number of default entries and normally you should not need to add any. However if you do add a new one and it has the same label as an internally defined one (linux, linux-2.2, linux-hack, failsafe, failsafe-2.2, failsafe-hack, default, linux-up, linux-2.2up, linux-hackup, linux-nonfb, linux-2.2nonfb, linux-hacknonfb, NT, dos, windows) DrakX will rename your new one to old_... when it adds yours. So be careful. |
Each entry has one of two forms:
|
'type' => 'image', |
specifies that this image describes a Linux kernel image to boot. |
|
'kernel_or_dev' |
specifies the location
and name of the kernel image to boot. |
|
'label' |
specifies the name associated with this image. eg. 'my_linux'. |
|
'root' |
specifies the partition to be mounted as 'root'. eg. '/dev/hda6'. |
|
'initrd' |
if present, specifies
the location and name of the initial ram disk to be loaded. |
|
'append' |
if present, specifies
the kernel parameters for this image. |
|
'read-write' => 1, |
if present, indicates the root file system is to be mounted read-write. If it is NOT present, then the root file system is mounted read-only. |
or
|
'type' => 'other', |
causes an entry to be added to yaboot.conf with the 'label=' set to the Open Firmware device. |
Examples (for x86):
This first one is the simplest and I use it on a server to obtain a simple text based boot prompt, rather than the default graphic one. This also lets DrakX fill in all the auto detected stuff for me.
|
'bootloader' => { |
|
|
|
'method' => 'lilo-text' |
|
'crushMbr' => 1 |
|
}, |
|
|
I use the 'crushMbr' here to make sure that whatever is on the disk is replaced with lilo's boot loader. This may not be suitable for everyone (such as dual boot or if you want to keep the existing MBR). Your installation needs may be different, so use with caution. |
This one adds an additional boot image that I use on my test machine to increase the size of the default ram disk.
|
'bootloader' => { |
|
|
|
'method' => 'lilo-text' |
|
|
|
'entries' => [ |
|
{ |
|
'type' => 'image', |
|
'kernel_or_dev' => '/boot/vmlinuz', |
|
'label' => 'bigdisk', |
|
'root' => '/dev/hda6', |
|
'initrd' => '/boot/initrd.img', |
|
'append' => 'ramdisk=8192k' |
|
} |
|
] |
|
}, |
If I had wanted to make this new image the one which is automatically booted, then I would have added 'default' => 'bigdisk', just before the 'entries'.
Related Option Entries:
This option is only to be used in conjunction with 'compssUsersChoice'. It allows you to install packages based on their relative importance and has the following is its general form:
|
'compssListLevel' => 5, |
Descriptions:
|
'compssListLevel' |
the desired rating value can be one of: |
|
|
5 - Must Have |
|
|
4 - Important |
|
|
3 - Very nice |
|
|
2 - Nice |
|
|
1 - Maybe |
Mandrake has taken most of the installable packages (*.rpms found in Mandrake/RPMS ...) and categorized them, hierarchically, into Groups (eg. Office, KDE) and then refined it a bit further into sub-groups (packages which should only be installed if the corresponding tag has been selected) and then finally applied a numerical rating (1 through 5) to each package. If you look in the file Mandrake/base/rpmsrate, you can see the group/sub-group tags, followed by the rating levels and each package assigned to that level.
When you use 'compssListLevel', DrakX will install every package which has a rating greater than or equal ( '>=' ) to the value you specify with this option, regardless of the group or sub-group they have been listed in.
|
|
Since the Mandrakelinux™ distribution comes on a varying number of CD's, you may find packages listed which are not found on the ones that you downloaded or bought - not to worry, DrakX knows this and will only attempt to install packages that you actually have. |
Examples:
See the section 'compssUsersChoice' for examples. Using this option without 'compssUsersChoice' will not produce the result that older versions (earlier than 8.1) did.
Related Option Entries:
compssUsersChoice, default_packages
This option is an alternate package selection method and if used, then 'compssListLevel' must be defined as well. These two options used together closely mimic the GUI based install where you selected which package groups to install. It has the following general form:
|
'compssUsersChoice' => { |
|
|
|
'<group_tag>' => 1, |
|
'<group_tag>' => 1 |
|
}, |
Descriptions:
'<group_tag>' - is one of the following:
|
ACCESSIBILITY ARCHIVING GNOME KDE AUDIO 3D GNOME KDE BOOKS BURNER DEVELOPMENT GNOME KDE COMMUNICATIONS KDE CONFIG DATABASES DATABASES_SERVER DEVELOPMENT DEVELOPMENT BOOKS GNOME KDE DEVELOPMENT_OTHER DOCS EDITORS GNOME KDE EMULATORS FILE_TOOLS GAMES 3D GNOME KDE GNOME GRAPHICAL_DESKTOP GRAPHICS GNOME KDE INSTALL NOCOPY KDE LSB
|
MONITORING GNOME KDE PCMCIA X NETWORKING_CHAT KDE NETWORKING_CHAT_SERVER NETWORKING_DNS NETWORKING_DNS_SERVER NETWORKING_FILE GNOME NETWORKING_FILE_SERVER BOOKS KDE NETWORKING_FILE_TRANSFER GNOME KDE NETWORKING_FILE_TRANSFER_SERVER NETWORKING_FIREWALLING_SERVER NETWORKING_GROUPWARE_SERVER NETWORKING_INSTANT_MESSAGING GNOME KDE NETWORKING_IRC KDE NETWORKING_LDAP_SERVER NETWORKING_MAIL GNOME KDE NETWORKING_MAIL_SERVER NETWORKING_NEWS GNOME KDE NETWORKING_NEWS_SERVER NETWORKING_OTHER KDE NETWORKING_OTHER_SERVER NETWORKING_REMOTE_ACCESS KDE NETWORKING_REMOTE_ACCESS_SERVER BOOKS NETWORKING_WWW GNOME KDE
|
NETWORKING_WWW_SERVER BOOKS NIS NIS_SERVER OFFICE GNOME KDE PHOTO PUBLISHING BOOKS CUPS SCANNER SCIENCES HDF KDE SHELLS BOOKS SPELLCHECK SOUND KDE SYSTEM BIGMEM BOOKS HIGH_SECURITY KDE NIS PCMCIA SMP USB TERMINALS GNOME KDE TEXT_TOOLS BOOKS TV VIDEO WEBMIN WIZARDS X GNOME HIGH_SECURITY KDE USB |
|
|
The indented tags indicate that there are packages in the corresponding Group which will only be installed if the indented tag is specified as well. If you look in the file Mandrake/base/rpmsrate, you can see the group/sub-group tags, followed by the rating levels and packages that are assigned to that level. |
Before you get too carried away, remember that DrakX is going to install what it considers an essential minimum set of packages, then it looks at your selections and adds any extras that you selected and, any additional packages that are needed for your choices to operate properly.
Examples:
How do you select things? Well, have you ever tried the game 'Rubics Cube'; its kinda like that but with a bigger block.
First pick the features you want, then select the desktop you want to use. Then create a list of tags. Or you can look at the file Mandrake/base/compssUsers to see how Mandrake grouped things for the GUI Group Package selection screen and go from there. Finally, you have to set the package rating level you want as the minimum using 'compssListLevel'.
The following are some simple examples:
This is what would be selected if you were using the GUI install and selected the icons for Game station, Multimedia Station, Console Tools and KDE:
|
'compssUsersChoice' => { |
|
|
|
'GAMES' => 1, 'AUDIO' => 1, 'VIDEO' => 1, 'GRAPHICS' => 1, 'EDITORS' => 1, 'TERMINALS' => 1, 'TEXT_TOOLS' => 1, |
|
'SHELLS' => 1, 'FILE_TOOLS' => 1, 'KDE' => 1 |
|
}, |
|
|
|
'compssListLevel' => 5, |
This example is basically the same, except the rating level includes almost everything possible for these groups. The 'default_packages' option lets me add package(s) which would have been excluded.
|
'compssUsersChoice' => { |
|
|
|
'GAMES' => 1, 'AUDIO' => 1, 'VIDEO' => 1, 'GRAPHICS' => 1, 'EDITORS' => 1, 'TERMINALS' => 1, 'TEXT_TOOLS' => 1, |
|
'SHELLS' => 1, 'FILE_TOOLS' => 1, 'KDE' => 1 |
|
}, |
|
|
|
'compssListLevel' => 2, |
|
'default_packages' => [ 'joe' ], |
Kinda like the individual package selection of the GUI install. Except that the rating level gives you a bit more control on the basic package set installed.
This example is a short way to install almost everything.
|
'compssUsersChoice' => { |
|
|
|
'ALL' => 1 |
|
}, |
|
|
|
'compssListLevel' => 0, |
Related Option Entries:
compssListLevel, default_packages, excludedocs
This option is used to explicitly specify which packages are to be installed. It is simply a list of package names. For an example, see the file 'auto_inst.cfg.pl' that was placed in your /root/drakx after a graphic install. The general form is as follows:
|
'default_packages' => [ |
|
|
|
'<package-name>', |
|
'<package-name>' |
|
], |
Descriptions:
|
'<package-name>', |
name of the package to be installed, not including the version, release, architecture and filename extension. eg. if the package file name is acon-1.0.4-5mdk.i586.rpm then use 'acon',. |
If you are not sure of the name for the package you want installed, then use the following:
rpm -qp --queryformat %{NAME} <filename of package>
This will give you the name that the install is expecting.
After viewing the contents of the auto_inst.cfg or auto_inst.cfg.pl files, you may have noticed that the list does not contain all the packages that are installed in a system (rpm -qa | sort). This because a new approach is being used in an attempt to reduce the size of the files on the diskette. Basically, this means that packages 'required' by the listed ones do not have to be explicitly included in the list.
|
|
All packages must be in either the RPMS, RPMS2 or, RPMS3 directories. If you have added one, then see the section Creating an Updated Installation CD Set. |
Examples:
The following is a simple example to illustrate the use of this option.
|
'default_packages' => [ |
|
|
|
'fonts-ttf-west_european', |
|
'strace', |
|
'gurpmi', |
|
'reiserfsprogs', |
|
'kudzu', |
|
'linux_logo', |
|
'bc', |
|
'fonts-ttf-decoratives', |
|
'at', |
|
'MAKEDEV', |
|
'iputils', |
|
'imwheel', |
|
'rpmdrake', |
|
'locales-en', |
|
'sndconfig', |
|
'rxvt', |
|
'numlock', |
|
'nfs-utils-clients', |
|
'man-pages', |
|
'open', |
|
'ldetect', |
|
'XFree86-server', |
|
'hexedit', |
|
'ftp', |
|
'anacron', |
|
'DrakConf', |
|
'XFree86-75dpi-fonts', |
|
'icewm-light' |
|
], |
Related Option Entries:
compssUsersChoice, compssListLevel, excludedocs
This option is used to preset the default Desktop (Window Manager) for users.
|
'desktop' => 'KDE', |
Descriptions:
|
'desktop' |
if this option is present, then it may be any one of the following, provided of course it was installed: |
|
|
KDE |
|
|
GNOME |
|
|
WindowMaker |
|
|
Enlightenment |
|
|
Blackbox |
|
|
XFce |
|
|
ICEWM |
|
|
default |
|
|
failsafe |
The DrakX installer places the specified value into the file /etc/sysconfig/desktop.
|
|
Default means that if you are at Run Level 3 and you type startx, then the window manager defined in the file is used. If you have a graphic Login Screen and you select default, rather than one of the indicated Window Managers, then the window manager defined in this file is used. |
Related Option Entries:
This option instructs DrakX to inhibit the installation of any documents associated with packages being installed. Associated documents usually appear in /usr/share/docs in a sub-directory with the same base name as the package installed.
|
'excludedocs' => 1, |
Descriptions:
|
'excludedocs' |
what you want to do |
|
|
0 - include the package documentation. |
|
|
1 - exclude the package documentation. |
DrakX normally installs all documentation that is available with each package.
|
|
If the 'excludedocs' option is used, DrakX automatically adjusts the file /etc/rpm/macros so that any subsequent package installed also includes or excludes documentation based on your selection. |
Related Option Entries:
compssUsersChoice, default_packages
This option is used when you are doing auto installs from CD-ROM and some of the packages to be installed are on the 2nd or 3rd CD. Or if you would simply like a graphic display showing the installation progress, rather than the simplistic text which is the default for an automated install.
|
'interactive' => 'newt', |
Descriptions:
|
'interactive' |
Selects the method of graphic presentation: |
|
|
'newt' - simple graphical interface (for the memory limited). |
|
|
'gtk' - full graphical presentation similar to the GUI based install. |
The default operation of DrakX for automated installs does not allow for any interaction with the installer: Insert boot floppy, press reset and go for coffee. This approach works very well when installing via a network, but is inconvenient when using CDs and, some of the needed packages are on the second or third CD (they are skipped and you have to manually install them).
The interactive option allows you to perform a CD based auto install and have DrakX prompt you when it needs a different CD.
Related Option Entries:
none.
This option is used when you are creating a Replay Install configuration.
|
'interactiveSteps' => [ |
|
|
|
'doPartitionDisks', |
|
'formatPartitions' |
|
], |
Descriptions:
DrakX has the capability, Replay Auto Install, which can be used to assist installation on multiple computers with slightly different hardware configurations. This replay ability allows you to select one or more specific steps where you want to manually re-enter configuration selections.
Generation of a Replay Auto Install Disk and can be accomplished:
|
at the end of a Manual install where you select Advanced, Generate an auto install floppy, then Reply or, |
|
on an installed system by running the drakconf program or, |
|
manually creating the disk and files on it. |
To change a standard Auto Install into a Replay Auto Install, just add this option. For a more detailed description and a summary of the available steps, please review the section Replay Install.
Related Option Entries:
See Replay Install – Steps vs Options.
This option is used to define the various network (ethernet or wireless) capable devices in your system.
The following is the general form for the structure:
|
'intf' => { |
|
|
|
'ethx' => {}, |
|
and / or |
|
'wireless_eth' => {}, |
|
}, |
|
'ethx' |
used to indicate an ethernet card interface definition. The 'x' is a sequence number, beginning with 0, for each ethernet card installed. Up to 10 cards can be defined with this version of the installer. |
|
'wireless_eth' |
used to indicate that there is a wireless ethernet interface installed. Currently only a single interface is supported. |
For an ethernet card, the following are valid:
|
'eth0' => { |
|
|
|
'DEVICE' => 'eth0', |
|
'BOOTPROTO' => 'static', |
|
'ONBOOT' => 'yes', |
|
'IPADDR' => '192.168.5.202', |
|
'NETMASK' => '255.255.255.0', |
|
'NETWORK' => '192.168.5.0', |
|
'BROADCAST' => '255.255.255.0', |
|
'HWADDR' => '00:01:02:03:04:05' |
|
}, |
For a wireless interface, the following are valid:
|
'wireless_eth' => { |
|
|
|
'DEVICE' => 'wireless_eth', |
|
'BOOTPROTO' => 'static', |
|
'ONBOOT' => 'yes', |
|
'IPADDR' => '192.168.5.202', |
|
'NETMASK' => '255.255.255.0', |
|
'NETWORK' => '192.168.5.0', |
|
'BROADCAST' => '255.255.255.0', |
|
'WIRELESS_MODE' => 'Auto', |
|
'WIRELESS_ESSID' => 'any', |
|
'WIRELESS_NWID' => '', |
|
'WIRELESS_FREQ' => '', |
|
'WIRELESS_SENS' => '', |
|
'WIRELESS_RATE' => '', |
|
'WIRELESS_ENC_KEY' => '', |
|
'WIRELESS_RTS' => '', |
|
'WIRELESS_FRAG' => ',' |
|
'WIRELESS_IWCONFIG' => '', |
|
'WIRELESS_IWSPY' => '', |
|
'WIRELESS_IWPRIV' => '', |
|
}, |
Descriptions:
|
'DEVICE' |
must be the same as the 'ethx' (or 'wireless_eth') you used to start this definition with. |
|
'BOOTPROTO' |
may be one of 'static', 'dhcp' or 'bootp'. |
|
'ONBOOT' |
normally set to 'yes', but can be set to 'no' if you do not want the interface automatically started at boot up. |
|
'IPADDR' |
IP address ('x.x.x.x') for this interface, not required if BOOTPROTO is dhcp or bootp. |
|
'NETMASK' |
Network Mask ('x.x.x.x') to be used with this interface, not required if BOOTPROTO is dhcp or bootp. |
|
'NETWORK' |
base IP address ('x.x.x.x') for this interface, not required if BOOTPROTO is dhcp or bootp. |
|
'BROADCAST' |
broadcast IP address ('x.x.x.x') for this interface, not required if BOOTPROTO is dhcp or bootp. |
|
'HWADDR' |
the ethernet hardware address for the associated ether net interface card. Only required if the system is tracking the networking id (see miscellaneous). |
|
'MII_NOT_SUPPORTED' |
specifies whether or not the associated interface is monitored by the ifplug daemon (usually used only on laptops where the interface card is removable). If set to 'yes' then the device is not monitored, if set to 'no' then it is monitored. |
|
'DHCP_HOSTNAME' |
used only if the interface acquires its information from a DHCP server and this computer must supply a host name. If may have two formats, depending on the requirements of the DHCP server, either '<hostname>' or '<hostname>.<domainname>'. eg. 'dave1' or 'dave1.eastcott.net'. NOTE: this value can be different from the 'netc' HOSTNAME (when supplying a specific name to an ISP) and is usually just the host name (no domain name part). |
|
'NEEDHOSTNAME' |
used only if the DHCP server supplies the host name. If set to 'yes', then the dhcp client will request, then use the host name from the DHCP server. If omitted, then any host name supplied by the DHCP server is ignored. |
|
'WIRELESS_MODE' |
may be one of Ad-hoc, Managed, Master, Repeater, Secondary or Auto. |
|
'WIRELESS_ESSID' |
Extended Service System ID, and is a string representing the desired ID or 'any'. |
|
'WIRELESS_NWID' |
Network ID or Channel Sequence number |
|
'WIRELESS_FREQ' |
Operating frequency of the wireless radio component. (eg. '2.46G') |
|
'WIRELESS_SENS' |
Receive sensitivity |
|
'WIRELESS_RATE' |
Data transfer rate (eg. '11M') |
|
'WIRELESS_ENC_KEY' |
Encryption or scrambling key |
|
'WIRELESS_RTS' |
??? |
|
'WIRELESS_FRAG' |
??? |
|
'WIRELESS_IWCONFIG' |
list of parameters to be given to the program iwconfig. |
|
'WIRELESS_IWSPY' |
list of parameters to be given to the program iwspy. |
|
'WIRELESS_IWPRIV' |
list of parameters to be given to the program iwpriv. |
The entries for each interface appear in a configuration file located in /etc/sysconfig/network-scripts/. The configuration file name for each interface is formed by adding the DEVICE string to the end of 'ifcfg-'. In the example below, you would expect to find the file: /etc/sysconfig/network-scripts/ifcfg-eth0.
|
'intf' => { |
|
|
|
'eth0' => { |
|
|
|
'DEVICE' => 'eth0', |
|
... |
|
} |
|
}, |
Examples:
See the section Network and Connection Examples for various examples.
For a computer which does not have an ethernet or wireless interface, then use the following:
|
'intf' => {}, |
If the target computer has multiple interfaces, then use the following:
|
'intf' => { |
|
'eth0' => { |
|
|
|
... |
|
|
|
}, |
|
|
|
'eth1' => { |
|
|
|
... |
|
|
|
} |
|
} |
If the computer has more than one interface defined, make sure the 'netc' option identifies which one is the GATEWAYDEV.
If the computer has an interface with BOOTPROTO set to 'dhcp', then see 'netc' for selecting a 'dhcp_client' to be installed.
For those of you using a Wireless interface, the following are recommended reading for additional information:
|
The Wireless-HOWTO at www.linuxdoc.org and, |
|
Linux Wireless Howto Collection at www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/ |
|
|
If you are trying to install ISA network cards
, DrakX does not auto detect them and as a result will not update
the /etc/modules.conf file
with the appropriate alias. However, the
|
There are a number of other variables that affect the operation of the dhcp clients and could be added to the appropriate interface configuration file using the 'postInstall' features including:
|
PEERDNS=yes |
causes the dhcp client to modify the /etc/resolv.conf file with values received from the DHCP server. |
|
PEERYP=yes |
casues the dhcp client to modify the /etc/yp.conf file with values received from the DHCP server. |
|
PEERNTPD=yes |
causes the dhcp client to modify the /etc/ntp.conf file with values it receives from the DHCP server. |
|
DHCP_TIMEOUT=15 |
changes the default time out of dhcp client to the number of seconds specified. |
See the file /etc/sysconfig/network-scripts/ifup to determine which variables are used with which dhcp client.
Related Option Entries:
netc, miscellaneous, postInstall
This option is used to tell DrakX to perform an upgrade instead of a full install.
|
'isUpgrade' => 0, |
Descriptions:
|
'isUpgrade' |
what you want to do |
|
|
0 - perform a full install |
|
|
1 - perform an upgrade |
An upgrade will examine the currently installed packages on the computer and upgrade only those packages necessary. It will add additional new packages that are 'required' by the new packages which are replacing older ones.
|
|
The 'isUpgrade' => 1, option does not always work properly for everyone, so use at your own risk. |
Related Option Entries:
none.
This option allows you to specify the type of keyboard you are using by specifying one of the country codes.
See file Mandrake/mdkinst/usr/bin/perl-install/keyboard.pm declaration for %keyboards which may contain a more up to date list.
|
'keyboard' => { |
|
|
|
'GRP_TOGGLE' => '', |
|
'KBCHARSET' => 'C', |
|
'KEYBOARD' => 'us' |
|
}, |
Descriptions:
|
'GRP_TOGGLE' |
specifies the key sequence used to switch keyboard layouts if you installed more than one. The value can be set to one of the following: |
|
'toggle' |
Right Alt key |
|
'shift_toggle' |
Both Shift keys simultaneously |
|
'ctrl_shift_toggle' |
Control and Shift keys simultaneously |
|
'caps_toggle' |
Capslock key |
|
'ctrl_alt_toggle' |
Control and Alt keys simultaneously |
|
'alt_shift_toggle' |
Alt and Shift keys simultaneously |
|
'menu_toggle' |
"Menu" key |
|
'lwin_toggle' |
Left "Windows" key |
|
'rwin_toggle' |
Right "Windows" key |
|
'ctrls_toggle' |
Both Control keys simultaneously |
|
'alts_toggle' |
Both Alt keys simultaneously |
|
'lshift_toggle' |
Left Shift key |
|
'rshift_toggle' |
Right Shift key |
|
'lalt_toggle' |
Left Alt key |
|
'lctrl_toggle' |
Left Control key |
|
'rctrl_toggle' |
Right Control key |
|
'' |
No toggle |
|
'KBCHARSET' |
specifies the keyboard character set to be used. The value here is obtained from the third (3rd) column of the table listed in the locale section for the language that you choose. |
|
'KEYBOARD' |
specifies the keyboard type used, possible values are: |
|
'al' |
Albanian |
|
'am_old' |
Armenian (old) |
|
'am' |
Armenian (typewriter) |
|
'am_phonetic' |
Armenian (phonetic) |
|
'ar' |
Arabic |
|
'az' |
Azerbaidjani (latin) |
|
'be' |
Belgian |
|
'ben' |
Bengali |
|
'bg' |
Bulgarian |
|
'bg_phonetic' |
Bulgarian (phonetic) |
|
'br' |
Brazilian (ABNT-2) |
|
'bs' |
Croat |
|
'by' |
Belarusian |
|
'ch_de' |
Swiss (German layout) |
|
'ch_fr' |
Swiss (French layout) |
|
'cz' |
Czech (QWERTZ) |
|
'cz_qwerty' |
Czech (QWERTY) |
|
'de' |
German |
|
'de_nodeadkeys' |
German (no dead keys) |
|
'dev' |
Devanagai |
|
'dk' |
Danish |
|
'dvorak' |
Dvorak |
|
'dvorak_no' |
Dvorak (Norwegian) |
|
'dvorak_se' |
Dvorak (Swedish) |
|
'ee' |
Estonian |
|
'es' |
Spanish |
|
'fi' |
Finnish |
|
'fr' |
French |
|
'ge_ru' |
Georgian (Russian layout) |
|
'ge_la' |
Georgian (Latin layout) |
|
'gr' |
Greek |
|
'gr_pl' |
Greek (polytonic) |
|
'guj |
Gujarati |
|
'gur' |
Gurmukhi |
|
'hu' |
Hungarian |
|
'hr' |
Croatian |
|
'ie' |
Irish |
|
'il' |
Israeli |
|
'il_phonetic' |
Israeli (Phonetic) |
|
'ir' |
Iranian |
|
'is' |
Icelandic |
|
'it' |
Italian |
|
'iu' |
Inuktitut |
|
'jp' |
Japanese 106 keys |
|
'kan' |
Kannada |
|
'kr' |
Korean |
|
'la' |
Latin American |
|
'lao' |
Laotian |
|
'lt' |
Lithuanian AZERTY (old) |
|
'lt_new' |
Lithuanian AZERTY (new) |
|
'lt_b' |
Lithuanian number row QWERTY |
|
'lt_p' |
Lithuanian phonetic QWERTY |
|
'lv' |
Latvian |
|
'mal' |
Malayam |
|
'mk' |
Macedonian |
|
'mm' |
Myanmar |
|
'mng' |
Mongolian (cryillic) |
|
'mt' |
Maltese (UK) |
|
'mt_us' |
Maltese (US) |
|
'nl' |
Dutch |
|
'no' |
Norwegian |
|
'ori' |
Oriya |
|
'pl' |
Polish (qwerty layout) |
|
'pl2' |
Polish (qwertz layout) |
|
'pt' |
Portuguese |
|
'qc' |
Canadian (Quebec) |
|
'ro2' |
Romanian (QWERTZ) |
|
'ro' |
Romanian (QWERTY) |
|
'ru' |
Russian |
|
'ru_yawerty' |
Russian (Yawerty) |
|
'sapmi' |
Saami (norwegian) |
|
'sapmi_sef' |
Saami (swedish/finnish) |
|
'se' |
Swedish |
|
'si' |
Slovenian |
|
'sk' |
Slovakian (QWERTZ) |
|
'sk_qwerty' |
Slovakian (QWERTY) |
|
'sr' |
Serbian |
|
'syr' |
Syriac |
|
'syr_p' |
Syriac (phonetic) |
|
'tel' |
Telugu |
|
'th' |
Thai keyboard |
|
'tj' |
Tajik keyboard |
|
'tml' |
Tamil |
|
'tscii' |
Tamil (Typewriter-layout) |
|
'tr_f' |
Turkish (traditional F model) |
|
'tr_q' |
Turkish (modern Q model) |
|
'ua' |
Ukrainian |
|
'uk' |
UK keyboard |
|
'us' |
US keyboard |
|
'us_intl' |
US keyboard (international) |
|
'uz' |
Uzbek (cryillic) |
|
'vn' |
Vietnamese numeric row QWERTY |
|
'yu' |
Yugoslavian (latin) |
Related Option Entries:
This option allows you to select the locale used for text presentations. The default is English US ('en_US').
See file Mandrake/mdkinst/usr/bin/perl-install/lang.pm declaration for %languages which may contain a more up to date list.
|
'locale' => { |
|
|
|
'lang' => 'en_US', |
|
'langs' => { |
|
|
|
'en_US' => 1, |
|
}, |
|
'country' => 'CA', |
|
'utf8' => '' |
|
} |
Descriptions:
|
'lang' |
specifies the default
language (see table below), not a locale. For example, all
locales speaking French (fr_FR fr_CH fr_BE fr_CA) it's 'fr',
for all locales speaking American English it's 'en_US'.
This parameter will be used to set the language-oriented locales
environment variables (LANG, LC_CTYPE, LC_MESSAGES, etc.). See
file Mandrake/mdkinst/usr/bin/perl-install/lang.pm
declaration for |
|
'langs' |
contains a list of one or more languages used to select the 'locales-*' packages for installation. |
|
'country' |
specifies the 2 letter
acronym for your country. For example, France will be 'FR',
USA will be 'US'. This
parameter will be used to set the country-oriented locales
environment variables (LC_NUMERIC, LC_MONETARY, etc). See file
Mandrake/mdkinst/usr/bin/perl-install/lang.pm
declaration for |
|
'utf8' => 1, |
used to force UTF-8
locales. However, it is normally left unset |
|
'af' |
Afrikaans |
iso-8859-1 |
|
'am' |
Amharic |
utf_am |
|
'ar' |
Arabic |
utf_ar |
|
'as' |
Assamse |
utf_bn |
|
'az' |
Azeri (latin) |
utf_az |
|
'be' |
Belarussian |
cp1251 |
|
'bg' |
Bulgarian |
cp1251 |
|
'bn' |
Bengali |
utf_bn |
|
'br' |
Brezhoneg |
iso-8859-15 |
|
'bs' |
Bosnian |
iso-8859-2 |
|
'ca' |
Catalan |
iso-8859-15 |
|
'cs' |
Czech |
iso-8859-2 |
|
'cy' |
Welsh |
utf_lat8 |
|
'da' |
Danish |
iso-8859-15 |
|
'de' |
German |
iso-8859-15 |
|
'el' |
Greek |
iso-8859-7 |
|
'en_US' |
English (US) |
C |
|
'en_GB' |
English (UK) |
iso-8859-15 |
|
'en_IE' |
English (Ireland) |
iso-8859-15 |
|
'eo' |
Esperanto |
unicode |
|
'es' |
Spanish (Spain, modern sorting) |
iso-8859-15 |
|
'et' |
Estonian |
iso-8859-15 |
|
'eu' |
Euskara (Basque) |
iso-8859-15 |
|
'fa' |
Farsi (Iranian) |
utf_ar |
|
'fi' |
Finnish (Suomi) |
iso-8859-15 |
|
'fo' |
Faroese |
iso-8859-15 |
|
'fr' |
French |
iso-8859-15 |
|
'ga' |
Gaelic (Irish) |
iso-8859-15 |
|
'gl' |
Galician |
iso-8859-15 |
|
'gu' |
Gujarati |
unicode |
|
'he' |
Hebrew |
utf_he |
|
'hi' |
Hindi |
unicode |
|
'hr' |
Croatian |
iso-8859-2 |
|
'hu' |
Hungarian |
iso-8859-2 |
|
'hy' |
Armenian |
utf_hy |
|
'id' |
Indonesian |
iso-8859-1 |
|
'is' |
Icelandic |
iso-8859-1 |
|
'it' |
Italian |
iso-8859-15 |
|
'ja' |
Japanese |
jisx0208 |
|
'ka' |
Georgian |
utf_ka |
|
'kn' |
Kannada |
utf_kn |
|
'ko' |
Korean |
ksc5601 |
|
'ku' |
Kurdish |
iso-8859-9 |
|
'li' |
Limbourgish |
iso-8859-15 |
|
'lo |
Laotian |
utf_lo |
|
'lt' |
Lithuanian |
iso-8859-13 |
|
'lv' |
Latvian |
iso-8859-13 |
|
'mi' |
Maori |
unicode |
|
'mk' |
Macedonian |
utf_cyr1 |
|
'ml' |
Malayalam |
unicode |
|
'mn' |
Mongolian |
utf_cyr2 |
|
'mr' |
Marathi |
unicode |
|
'ms' |
Malay |
iso-8859-1 |
|
'mt' |
Maltese |
unicode |
|
'nb' |
Norwegian Bokmaal |
iso-8859-1 |
|
'ne' |
Nepali |
unicode |
|
'nl' |
Dutch (Netherlands) |
iso-8859-15 |
|
'nn' |
Norwegian Nynorsk |
iso-8859-1 |
|
'oc' |
Occitan |
iso-8859-1 |
|
'pl' |
Polish |
iso-8859-2 |
|
'pt_BR' |
Portuguese (Brazil) |
iso-8859-1 |
|
'pt' |
Portuguese |
iso-8859-15 |
|
'ro' |
Romanian |
iso-8859-2 |
|
'ru' |
Russian |
koi8-u |
|
'se' |
Saami |
unicode |
|
'sk' |
Slovak |
iso-8859-2 |
|
'sl' |
Slovenian |
iso-8859-2 |
|
'sq' |
Albanian |
iso-8859-1 |
|
'sr' |
Serbian (Cyrillic) |
iso-8859-5 |
|
'sr@Latn' |
Serbian (Latin) |
iso-8859-2 |
|
'ss' |
Swati |
iso-8859-1 |
|
'st' |
Sotho |
iso-8859-1 |
|
'sv' |
Swedish |
iso-8859-1 |
|
'ta' |
Tamil |
utf_ta |
|
'te' |
Telugu |
unicode |
|
'tg' |
Tajik |
utf_cyr2 |
|
'th' |
Thai |
tis620 |
|
'tr' |
Turkish |
iso-8859-9 |
|
'uk' |
Ukrainian |
koi8-u |
|
'uz@Latn' |
Uzbek (Latin) |
utf_cyr2 |
|
'uz' |
Uzbek (Cyrillic) |
utf_cyr2 |
|
've' |
Venda |
iso-8859-1 |
|
'vi' |
Vietnamese |
utf_vi |
|
'wa' |
Walon |
iso-8859-15 |
|
'xh' |
Xhosa |
iso-8859-1 |
|
'yi' |
Yiddish |
utf_he |
|
'zh_TW' |
Chinese (Traditional) |
Big5 |
|
'zh_CN' |
Chinese (Simplified) |
gb2312 |
|
'zu' |
Zulu |
iso-8859-1 |
|
|
Not all languages are supported by all applications. The third column, above, is the character set for the language. |
Related Option Entries:
This option allows you to add additional entries to the /etc/fstab file on the target computer. The most notable include adding NFS mounts and Windows shares (smbfs). Possibilities include other devices which are not detected by the install program, partitions or devices which already exist on the target computer and have not been specified in the 'partitioning' option.
|
'manualFstab' => [ |
|
{ |
|
'device' => 'linux1:/nfscd/cdrom82', |
|
'mntpoint' => '/mnt/linux1', |
|
'type' => 'nfs', |
|
'options' => 'noauto,ro,nosuid,rsize=8192,wsize=8192' |
|
}, |
|
], |
Descriptions:
The fields for this option are identical to those you would see in the /etc/fstab file.
|
'device' |
a physical device (partition) such as 'hdd1' or, a nfs network device such as 'linux1:/nfscd/cdrom82' or, '//cherry/cherry-c' for smb file systems. |
|
'mntpoint' |
the file system mount point for the device. It is a good idea NOT to use a mount point that is created for the use of rpmdrake (eg. /mnt/nfs). |
|
'type' |
type of file system on the device ( eg. ext2, reiserfs, nfs,smbfs ). See man mount for a list of supported file types. You may also use numeric values for the type. |
|
'options' |
mount options for the device / file system being mounted and are very file system specific. See the appropriate man page for details about the options available. |
|
'passno' |
if present, the value specified is placed in the fifth (5) field (default value of 0 is used if this is omitted). See the man page for fstab (man fstab). |
|
'freq' |
if present, the value specified is placed in the sixth (6) field (default value of 0 is used if this is omitted). See the man page for fstab (man fstab). |
|
'toFormat' => 1, |
if present, causes the associated 'device' to be formatted. This selection is applicable to local devices only and is ONLY used when an EXISTING partition must be formatted prior to the actual installation (see the Note for the option 'partitioning'). |
|
'toFormatCheck' => 1, |
if present, causes the associated 'device' to be checked for Bad Blocks. This selection is applicable to local devices only and is ONLY valid if 'toFormat' is used. |
Examples:
The following is a simple example to illustrate specifying a Windows Share:.
|
'manualFstab' => [ |
|
{ |
|
'device' => '//cherry/cherry-c', |
|
'mntpoint' => '/mnt/cherry', |
|
'type' => 'smbfs', |
|
'options' => 'noauto,ro,username=david,password=hawker,workgroup=eastcott' |
|
'passno' => 0, |
|
'freq' => 0, |
|
}, |
|
], |
|
|
Because username
and password are present,
drakx will automatically create a file
|
The following is an example that re-uses existing partitions, including one that I did not want formatted (it contains a copy of the cooker files for testing the Grub auto install).
|
'partitioning' => { |
|
'eraseBadPartitions' => 0, |
|
'auto_allocate' => 0, |
|
'clearall' => 0, |
|
}, |
|
'manualFstab' => [ |
|
{ |
|
'device' => 'hde1', |
|
'mntpoint' => '/boot', |
|
'type' => 'ext3', |
|
'options' => 'defaults', |
|
'passno' => 1, |
|
'freq' => 2, |
|
'toFormat' => 1, |
|
}, |
|
{ |
|
'device' => 'hde5', |
|
'mntpoint' => 'swap', |
|
'type' => 'swap', |
|
'options' => 'defaults', |
|
}, |
|
{ |
|
'device' => 'hde6', |
|
'mntpoint' => '/', |
|
'type' => 'ext3', |
|
'options' => 'defaults', |
|
'passno' => 1, |
|
'freq' => 1, |
|
'toFormat' => 1, |
|
}, |
|
{ |
|
'device' => 'hde7', |
|
'mntpoint' => '/mnt/hd', |
|
'type' => 'ext2', |
|
'options' => 'defaults', |
|
'passno' => 1, |
|
'freq' => 2, |
|
'toFormat' => 0, |
|
}, |
|
], |
Related Option Entries:
This is where stuff goes that does not fit anywhere else.
|
'miscellaneous' => { |
|
|
|
'numlock' => 1, |
|
'HDPARM' => 1, |
|
'http_proxy' => undef, |
|
'ftp_proxy' => undef, |
|
'track_network_id' => undef |
|
}, |
Descriptions:
|
'numlock' |
if present, causes the numlock package to be installed. Whether it is set to 1 or 0 does not matter, the numlock service will be started with the result that keyboards' NumLock will be turned on after boot up. If you want it off after boot up, then you will have to create a services list which specifically excludes numlock (see the 'services' option ). |
|
'HDPARM' |
if present, then forces the 'perImageAppend', used by the bootloader, to have ALL IDE controllers set for auto tune (eg. ide0=autotune ide1=autotune). |
|
'http_proxy' |
if used, then it is set to the URL and port for the http proxy server. |
|
'ftp_proxy' |
if used, then it is set to the URL and port for the ftp proxy server. If you have specified
entries for the 'http_proxy'
or 'ftp_proxy' options,
DrakX places them in two files: /etc/profile.d/proxy.sh
and |
|
'track_network_id' |
if used, then it allows you to enable (1) or disable (0) the ethernet interface hardware address (ethernet hardware address) tracking. It is useful for Laptops where the interface card can be removed/replaced under varying circumstances. |
|
|
The option 'CLEAN_TMP'
has been removed, but you can still have the startup scripts clean
the |
Related Option Entries:
default_packages, bootloader, intf, services.
This option allows you to create a boot disk during the install process. Probably not something you want to do while doing an auto installation.
|
'mkbootdisk' => '', |
Descriptions:
|
'mkbootdisk' |
used to specify the floppy device that is to be used: |
|
|
'0' or '' - no boot disk |
|
|
'1' - if there is only 1 floppy drive in the system, then this will create the boot disk on it. |
|
|
'fd0' - if you have more than one floppy device, then you can specify the one to be used. It is the device name without the '/dev/' part. For IDE floppies it is typically 'fd0' or 'fd1', LS120 devices are 'pf0' and for scsi floppies, it is dependent on its LUN (eg. 'sdb'). |
Related Option Entries:
none.
This option is used to define the Mouse that is attached to the target computer. Use this option ONLY if you know the required information. By using this option, DrakX is inhibited from performing a 'Mouse Probe' in an attempt to automatically identify the type of mouse available. See 'nomouseprobe' for additional information.
|
'mouse' => { |
|
|
|
'type' => 'serial', |
|
'device' => 'ttyS1', |
|
'name' => 'Generic 2 Button Mouse', |
|
'nbuttons' => 2, |
|
'XEMU3' => 'yes', |
|
'MOUSETYPE' => 'Microsoft', |
|
'XMOUSETYPE' => 'Microsoft', |
|
'FULLNAME' => 'serial|Generic 2 Button Mouse', |
|
'WHEEL' => 'no', |
|
'wacom' => [], |
|
}, |
Descriptions:
|
'type' |
one of 'PS/2', 'USB', 'serial', 'busmouse', 'Universal' or 'none'. See table for mice for each type. |
|
'device' |
device file to use: |
|
|
'psaux', for PS/2 |
|
|
'ttySx', where x is a serial port number (0, 1, 2 or 3), |
|
|
'atibm', 'inportbm', or 'logibm', (depends on card installed), if a PPC use 'adbmouse', for bus mice. |
|
|
'usbmouse', for USB mice. |
|
|
'input/mice', for Universal mice. |
|
|
'none', for no mouse. |
|
'name' |
see table. |
|
'nbuttons' |
2 or 3 for mice without a wheel, 5 for mice with a wheel (see table). |
|
'XEMU3' |
'yes' if 2 button mouse and you want 3 button emulation, else should be set to 'no'. |
|
'EMULATEWHEEL' |
'yes' if 2 button mouse and you want wheel emulation, else should be set to 'undef'. |
|
'MOUSETYPE' |
see table. |
|
'XMOUSETYPE' |
see table. |
|
'FULLNAME' |
is '<type> | <name>'. eg. 'PS/2|Standard' |
|
'WHEEL' |
'yes' if mouse has a wheel, 'no' if the mouse does not. |
|
'wacom' |
use this to define one or more (total of 4) Wacom Tablet devices as follows: |
A tablet attached to a serial port:
|
'wacom' => [ |
|
|
|
'ttyS1' |
|
], |
A tablet attached via USB:
|
'wacom' => [ |
|
|
|
'input/event0' |
|
], |
|
'nbuttons' |
'MOUSETYPE' |
'XMOUSETYPE' |
'name' |
|
'PS/2' |
|
|
|
|
|
|
|
|
|
2 |
ps/2 |
PS/2 |
Standard |
|
5 |
ps/2 |
MouseManPlusPS/2 |
Logitech MouseMan+ |
|
5 |
imps2 |
IMPS/2 |
Generic PS2 Wheel Mouse |
|
5 |
ps/2 |
GlidePointPS/2 |
GlidePoint |
|
5 |
ps/2 |
ThinkingMousePS/2 |
Kensington Thinking Mouse |
|
5 |
netmouse |
NetMousePS/2 |
Genius NetMouse |
|
5 |
netmouse |
NetScrollPS/2 |
Genius NetScroll |
|
7 |
ps/2 |
ExplorerPS/2 |
Microsoft Explorer |
|
|
|
|
|
|
'USB' |
|
|
|
|
|
|
|
|
|
1 |
ps/2 |
IMPS/2 |
1 button |
|
2 |
ps/2 |
IMPS/2 |
Generic 2 Button Mouse |
|
3 |
ps/2 |
IMPS/2 |
Generic |
|
3 |
ps/2 |
IMPS/2 |
Generic 3 Button Mouse with Wheel Emulation |
|
5 |
ps/2 |
IMPS/2 |
Wheel |
|
7 |
ps/2 |
ExplorerPS/2 |
Microsoft Explorer |
|
|
|
|
|
|
'serial' |
|
|
|
|
|
|
|
|
|
2 |
Microsoft |
Microsoft |
Generic 2 Button Mouse |
|
3 |
Microsoft |
Microsoft |
Generic 3 Button Mouse |
|
3 |
Microsoft |
Microsoft |
Generic 3 Button Mouse with Wheel emulation |
|
5 |
ms3 |
IntelliMouse |
Microsoft IntelliMouse |
|
3 |
MouseMan |
MouseMan |
Logitech MouseMan |
|
3 |
MouseMan |
MouseMan |
Logitech Mouse Man with Wheel emulation |
|
2 |
MouseSystems |
MouseSystems |
Mouse Systems |
|
3 |
logim |
MouseMan |
Logitech CC Series |
|
3 |
logim |
MouseMan |
Logitech CC Series with Wheel emulation |
|
5 |
pnp |
IntelliMouse |
Logitech MouseMan+/FirstMouse+ |
|
5 |
ms3 |
IntelliMouse |
Genius NetMouse |
|
2 |
MMSeries |
MMSeries |
MM Series |
|
2 |
MMHitTab |
MMHittab |
MM HitTablet |
|
3 |
Logitech |
Logitech |
Logitech Mouse (serial, old C7 type) |
|
3 |
Logitech |
Logitech |
Logitech Mouse (serial, old C7 type) with Wheel emulation |
|
3 |
Microsoft |
ThinkingMouse |
Kensington Thinking Mouse |
|
3 |
Microsoft |
ThinkingMouse |
Kensington Thinking Mouse with Wheel emulation |
|
|
|
|
|
|
'busmouse' |
|
|
|
|
|
|
|
|
|
1 |
Busmouse |
BusMouse |
1 button (PPC only) |
|
2 |
Busmouse |
BusMouse |
2 buttons |
|
3 |
Busmouse |
BusMouse |
3 buttons |
|
3 |
Busmouse |
BusMouse |
3 buttons with Wheel emulation |
|
|
|
|
|
|
'Universal' |
|
|
|
|
|
|
|
|
|
7 |
ps/2 |
ExplorerPS/2 |
Any PS/2 & USB mice |
|
|
|
|
|
|
'none' |
|
|
|
|
|
|
|
|
|
0 |
None |
Microsoft |
No mouse |
Examples:
|
|
If you are using an old Microsoft Bus Mouse, you MUST use this option. |
|
'mouse' => { |
|
|
|
'type' => 'busmouse', |
|
'device' => 'inportbm', |
|
'name' => '2 buttons', |
|
'nbuttons' => 2, |
|
'XEMU3' => 'yes', |
|
'MOUSETYPE' => 'Busmouse', |
|
'XMOUSETYPE' => 'BusMouse', |
|
'FULLNAME' => 'busmouse|2 buttons', |
|
'WHEEL' => 'no' |
|
}, |
The following is an example for a PS/2 non wheel mouse:
|
'mouse' => { |
|
|
|
'type' => 'PS/2', |
|
'device' => 'psaux', |
|
'name' => 'Standard', |
|
'nbuttons' => 2, |
|
'XEMU3' => 'yes', |
|
'MOUSETYPE' => 'ps/2', |
|
'XMOUSETYPE' => 'PS/2', |
|
'FULLNAME' => 'PS/2|Standard', |
|
'WHEEL' => 'no' |
|
}, |
The following is an example for a serial mouse:
|
'mouse' => { |
|
|
|
'type' => 'serial', |
|
'device' => 'ttyS1', |
|
'name' => 'Generic 2 Button Mouse', |
|
'nbuttons' => 2, |
|
'XEMU3' => 'yes', |
|
'MOUSETYPE' => 'Microsoft', |
|
'XMOUSETYPE' => 'Microsoft', |
|
'FULLNAME' => 'serial|Generic 2 Button Mouse', |
|
'WHEEL' => 'no' |
|
}, |
The following is an example for a Generic PS/2 Wheel mouse:
|
'mouse' => { |
|
|
|
'type' => 'PS/2', |
|
'device' => 'psaux', |
|
'name' => 'Generic PS2 Wheel Mouse', |
|
'nbuttons' => 5, |
|
'XEMU3' => 'no', |
|
'MOUSETYPE' => 'imps/2, |
|
'XMOUSETYPE' => 'IMPS/2', |
|
'FULLNAME' => 'PS/2|Generic PS2 Wheel Mouse', |
|
'WHEEL' => 'yes', |
|
}, |
|
|
Information from here is used to update the
files /etc/sysconfig/mouse
and |
Related Option Entries:
This option contains values used to configure the network parameters for the target computer. The general form is as follows:
|
'netc' => { |
|
|
|
'NETWORKING' => 'yes', |
|
'FORWARD_IPV4' => 'false', |
|
'HOSTNAME' => 'linux-dev.eastcott.net', |
|
'DOMAINNAME' => 'eastcott.net', |
|
'GATEWAY' => '192.168.5.254', |
|
'GATEWAYDEV' => 'eth0', |
|
'dnsServer' => '24.64.8.1', |
|
'dnsServer2' => '24.64.8.2', |
|
'dnsServer3' => undef, |
|
'NISDOMAIN' => undef, |
|
'LDAPDOMAIN' => undef, |
|
}, |
Descriptions:
|
'NETWORKING' |
set to 'yes' if this machine is network connected, otherwise it is set to 'no' and remove any other entries . |
|
'FORWARD_IPV4' |
set to 'true' if IP forwarding between interfaces is required, otherwise it should be set to 'false'. |
|
'HOSTNAME' |
fully qualified host name for the target computer. This is not required if supplied via a DHCP server. See 'intf' DHCP_HOSTNAME and NEEDHOSTNAME. |
|
'DOMAINNAME' |
domain name for the target computer. This is not required if supplied via a DHCP server. |
|
|
Since this variable is NOT placed in the /etc/sysconfig/network file, there are a few things you should be aware of: |
|
|
if your interfaces are set for static addresses, then the domainname command returns a NULL value. |
|
|
if you have an internal static network or your internal network has a unique (personal domain name) and you are using DHCP on one or more interfaces, the DHCP client will set the domain name to the value it receives from the DHCP server. |
|
'GATEWAY' |
IP address for the machine that processes all non-local IP messages. This is not required if supplied via a DHCP server. |
|
'GATEWAYDEV' |
device name for the interface that is to be used to access the gateway machine. This is not required if supplied via a DHCP server. eg. 'eth0' |
|
'dnsServer' |
IP addresses for DNS server, up to three may be specified. This is not required if supplied via a DHCP server. See 'intf' PEERDNS. |
|
'dnsServer2' |
if available, then the second DNS server's IP address. This is not required if supplied via a DHCP server. See 'intf' PEERDNS. |
|
'dnsServer3' |
if available, then the third DNS server's IP address. This is not required if supplied via a DHCP server. See 'intf' PEERDNS. |
|
'NISDOMAIN' |
if NIS authentication is used, then this contains the NIS domain name, otherwise it is not required. |
|
'LDAPDOMAIN' |
if LDAP authentication is being used, then this contains the Base Distinguished Name, otherwise it is not required. eg. 'LDAPDOMAIN' => 'dc=eastcott,dc=net' |
|
'WINDOMAIN' |
if Windows PDC
authentication is
being used, then this contains the Windows Domain Name, otherwise
it is not required. |
|
'DHCP' => 1, |
use if one or more interfaces have 'BOOTPROTO' => 'dhcp' and you want the default dhcp client installed and used. The ISC dhcp-client package is the current default. |
|
'dhcp_client' |
use if you want to select a specific dhcp client to be installed and used, then set it to one of: 'dhcp-client', 'dhcpcd', 'dhcpxd' or 'pump'. If this parameter is not specified, then the dhcp-client package is installed by default. If more than one dhcp client package is installed, you should add DHCP_CLIENT=<your client> to the associated ifcfg-ethx file. |
|
|
You might want to seriously consider installing the package zcip when using a dhcp client. |
|
'ZEROCONF_HOSTNAME' |
use if your computer is used in a standalone environment and you are not normally connected to a network or the internet. It specifies the hostname that the package tmdns will manage. |
Examples:
See the section Network and Connection Examples for various examples.
There are a number of things that you can change to control or fix the operation of your computer (especially if you are using DHCP), some are referenced in 'intf' and other's you will have to locate by examining the network control scripts in /etc/sysconfig/network-scripts. These fine adjustments need to be done either manually or by using the 'postinstall' option. eg.
|
'postInstall' => ' |
|
# fix so that the dhcp client does NOT update the domain name |
|
# received fromt the DHCP server. |
|
echo "DOMAINNAME=eastcott.net" >> /etc/sysconfig/network |
|
' |
Related Option Entries:
intf, authentication, postInstall
This option is used to prevent the install program from doing a 'Mouse Probe' on serial ports, PS/2 mouse port, etc. You would ONLY use this when the target computer has no mouse attached and you have equipment connected to the computer (typically serial ports) that would be adversely affected by the mouse probe.
If you use the 'mouse' option to define your mouse, then the mouse probe is automatically disabled and this option is not necessary.
|
'nomouseprobe' => 1, |
Descriptions:
|
'nomouseprobe' |
what to do |
|
|
0 - enable probing for a mouse. |
|
|
1 - disable probing for a mouse. |
Normally if you want probing, then this statement is not included in the auto_inst.cfg file
Related Option Entries:
This option is used to control the partitioning of the target systems' hard disk drives.
|
'partitioning' => { |
|
|
|
'clearall' => 1, |
|
'clear' => undef, |
|
'eraseBadPartitions' => 0, |
|
'auto_allocate' => 1 |
|
}, |
Descriptions:
|
'clearall' |
set to 1 if all the existing partitions on ALL disks are to be cleared and replaced by new ones (internal defaults or the ones defined by 'partitions' are to be used). Set to 0 if the disks are to be left untouched or, you are going to use 'clear' instead. |
|
'clear' |
if present, this is a list of the disks that are to have their partitions cleared. If your system has more than one disk drive, any drive(s) you do not list are left untouched. |
|
|
eg. 'clear' => [ 'hda', 'hdc' ], clears the partitions on hda and hdc, but leaves hdb untouched. The partitions for hdb will have to be defined using the 'manualFstab' option. |
|
'eraseBadPartitions' |
this is no longer used and, if present it has no affect. |
|
'auto_allocate' |
set to 1 if disk partitions are to be defined by the option 'partitions', set to 0 if the installer is to leave the existing partitioning untouched. If you have cleared all or, one or more drive partitions, then you need to set this option to the value one (1) and, you have to define the new partition layout for the cleared drives using the 'partitions' option. |
|
|
If you want to re-use the existing partitions, then set clearall and auto_allocate to their zero (0) value AND specify all the mounting information in the 'manualFstab' (see the example). |
|
|
If you want the install program to auto-allocate the partitions, then set clearall and auto_allocate to their one (1) value, and remove the 'partitions' option. |
Related Option Entries:
This option is used to define the partitions that are to be created on your hard disks. It is used in conjunction with the 'partitioning' options entry for 'auto_allocate'. If 'auto_allocate' => 0, then this options' contents are ignored.
|
'partitions' => [ |
|
{ |
|
'mntpoint' => '/boot', |
|
'type' => 131, |
|
'size' => 64449, |
|
'hd' => 'hda' |
|
}, |
|
{ |
|
'mntpoint' => 'swap', |
|
'type' => 130, |
|
'size' => 524097, |
|
'hd' => 'hda' |
|
}, |
|
{ |
|
'mntpoint' => '/', |
|
'type' => 387, |
|
'size' => 573344, |
|
'ratio' => 100, |
|
'maxsize' => 5750000 |
|
'hd' => 'hda' |
|
} |
|
], |
Descriptions:
|
'mntpoint' |
normally, this is the directory where the partition will be mounted. However, it is also used to provide a unique name for a RAID volume or LVM physical volume (PV) that will be combined in a subsequent declaration using the 'parts' option. |
|
'type' |
file system type for the partition. |
|
|
131 (0x83) is ext2, 130 (0x82) is swap, 387 (0x183) is reiserfs, 1155 (0x483) is ext3. See Mandrake/mdkinst/usr/bin/perl-install/partition_table.pm for a complete listing. |
|
|
Use 142 (0x8e) for LVM PVs or 253 (0xfd) for RAID partitions |
|
'size' |
the number of sectors that the partition is to be created with. The partitioning of the disk is done to the nearest cylinder boundary less than or equal to the number you have specified. The number of sectors in a cylinder are found by (number of sectors per track) * (number of heads). Usually each sector is 512 bytes in size, so you can do the math... |
|
|
A quick short way is: 'size' => 32 << 11 should give you something just short of 32 megabytes. |
|
'ratio' |
is the percentage (1 -> 100) of the disk that the partition can grow to. |
|
'maxsize' |
is the maximum number of sectors that the partition can be. A limit on the 'ratio'. |
|
'hd' |
device label (without the /dev/ part) for the disk drive that this set of definitions applies to. eg. hda or sdb. This entry is not required if you only have one hard disk, but it may be a good habit to get into in case the next system has more than one drive and you forget. |
|
'level' |
this specifies the Software RAID level that is desired. Supported levels are: |
|
|
'linear', '0', '1', '4' or '5' |
|
'options' |
mount options for the device / file system being mounted and are very file system specific. See the appropriate man page for details about the options available. |
|
'parts' |
this is a space separated list of 'mntpoint' which are to be combined into either a RAID array or a LVM Volume Group (VG). |
|
'VG_name' |
is the name used to reference a Volume Group in a subsequent declaration. |
|
'passno' |
if present, the value specified is placed in the fifth (5) field (default value of 0 is used if this is omitted). See the man page for fstab (man fstab). |
|
'freq' |
if present, the value specified is placed in the sixth (6) field (default value of 0 is used if this is omitted). See the man page for fstab (man fstab). |
|
'toFormatCheck' => 1, |
if present, causes the associated 'device' to be checked for Bad Blocks. |
|
|
To make your life a bit simpler and be able to allocate all of the disk, change the last partitions 'size' to some small value and set the 'ratio' to 100. This has the effect of allocating all of the remainder of the disk to that partition. For 'passno', 'freq' and 'toFormatCheck' special information, see the Problems and Issues section. |
Examples:
LVM:
|
partitions => [ |
|
... |
|
|
|
{ 'mntpoint' => 'vg_a', 'size' => 400 << 11, 'type' => 0x8e, 'hd' => 'sda' }, |
|
{ 'mntpoint' => 'vg_b', 'size' => 400 << 11, 'type' => 0x8e, 'hd' => 'sdb', 'ratio' => 1 }, |
|
{ 'VG_name' => 'pixVG', 'parts' => 'vg_a vg_b' }, |
|
{ 'mntpoint' => '/home', 'size' => 500 << 11, 'type' => 0x183, 'hd' => 'pixVG' }, |
|
], |
|
|
If the 'parts' field is omitted, then any PV available will be used. |
Software RAID:
|
partitions => [ |
|
... |
|
|
|
{ 'mntpoint' => 'raid_a', 'size' => 400 << 11, 'type' => 0xfd, 'hd' => 'sda', 'ratio' => 1 }, |
|
{ 'mntpoint' => 'raid_b', 'size' => 400 << 11, 'type' => 0xfd, 'hd' => 'sdb', 'ratio' => 1 }, |
|
{ 'mntpoint' => 'raid_c', 'size' => 400 << 11, 'type' => 0xfd, 'hd' => 'sdc', 'ratio' => 1 }, |
|
{ 'mntpoint' => 'raid_d', 'size' => 400 << 11, 'type' => 0xfd, 'hd' => 'sdd', 'ratio' => 1 }, |
|
{ 'mntpoint' => '/home', 'type' => 0x483, 'hd' => 'md0', 'level' => 1, 'parts' => 'raid_a raid_b' }, |
|
], |
LVM on software raid:
|
partitions => [ |
|
... |
|
|
|
{ 'mntpoint' => 'raid_a', 'size' => 400 << 11, 'type' => 0xfd, 'hd' => 'sda', 'ratio' => 1 }, |
|
{ 'mntpoint' => 'raid_b', 'size' => 400 << 11, 'type' => 0xfd, 'hd' => 'sdb', 'ratio' => 1 }, |
|
{ 'mntpoint' => 'raid_c', 'size' => 400 << 11, 'type' => 0xfd, 'hd' => 'sdc', 'ratio' => 1 }, |
|
{ 'mntpoint' => 'raid_d', 'size' => 400 << 11, 'type' => 0xfd, 'hd' => 'sdd', 'ratio' => 1 }, |
|
{ 'mntpoint' => 'vg_a', 'type' => 0x8e, 'hd' => 'md0', 'level' => 1, 'parts' => 'raid_a raid_b' }, |
|
{ 'mntpoint' => 'vg_b', 'type' => 0x8e, 'hd' => 'md1', 'level' => 1, 'parts' => 'raid_c raid_d' }, |
|
{ 'VG_name' => 'pixVG', 'parts' => 'vg_a vg_b' }, |
|
{ 'mntpoint' => '/home', 'size' => 500 << 11, 'type' => 0x183, 'hd' => 'pixVG' }, |
|
], |
|
|
If the 'parts' field is omitted, then any PV available will be used. |
Related Option Entries:
This option provides the installer two simple methods for performing post installation activities on the installed system. You can use one or the other or both methods. If you want to use both, then the installer will execute the 'postInstallNonRooted' first, then the 'postInstall' last.
postInstall:
|
'postInstall' => " |
|
echo \"This is a test string\" > /root/test.log |
|
" |
For this option, the install script is executed as root on the target computer with the environment set to that of the target computer. In other words, any references to the file system are relative to the target computers / (root). In addition, DrakX executes the script that you define using the form: chroot /mnt bash -c <yourscript here> (/mnt is the directory, in the DrakX environment, under which the entire file system for the target computer is located).
postInstallNonRooted:
|
'postInstallNonRooted' => ' |
|
echo "This is a test string" > /mnt/root/test.log |
|
' |
For this option, the install script is executed within the current environment of the DrakX install program. In other words, any references to the file system are relative to DrakX's / (root). In addition, DrakX executes the script that you define using the form: bash -c <yourscript here>.
The above two examples produce the exact same result; the string, This is a test string is placed in a file called test.log located in the /root directory on the target computer. For the observant, there are a some other subtle differences. The use of a perl single-quote string literal (which allows only the \' and \\ escape-sequences) and the perl double-quote string literal (which allows backslash and variable interpolation). Either form can be used with either option, although the single-quote form is the easiest to follow and likely the most often used. In the double-quote form, the double-quote (") before and after the string This is a test string had to be 'escaped', otherwise the script would have terminated prematurely and as a consequence not be executed.
Examples:
The following are a simple set of examples which demonstrate the use of these options.
Change the default auto install run level from 5 to 3 (uses "" so that the sed parameter does not have to be 'escaped'):
|
'postInstall' => " |
|
# change run level from 5 to 3 |
|
cat /etc/inittab | sed 's/^id:5:init/id:3:init/' > /etc/inittab1 |
|
mv -f /etc/inittab1 /etc/inittab |
|
" |
Or using a simple perl one-liner:
|
'postInstall' => ' |
|
# change run level from 5 to 3 |
|
perl -p -i -e "s/^id:5:init/id:3:init/" /etc/inittab |
|
' |
Copy the auto install configuration file defined with the syslinux.cfg append parameter auto_install= to the target computers /root/drakx directory (this only works for NFS and CD-ROM source medias):
|
'postInstallNonRooted' => " |
|
# copy the file from the source media |
|
cp /tmp/image/$::auto_install /mnt/root/drakx/ |
|
" |
A little more complicated variation:
|
'postInstall' => ' |
|
# only if the NTP package is installed |
|
if [ -f /etc/ntp.conf ]; then |
|
cat <<EOF1 > /etc/ntp/step-tickers |
|
time-server.eastcott.net |
|
EOF1 |
|
fi |
|
|
|
# clean up bug for Netscape |
|
cat <<EOF2 >> /etc/skel/.bash_profile |
|
|
|
# clean up old cache files, since Netscape doesn't |
|
[ -d ~/.netscape ] && rm -rf ~/.netscape/cache/* |
|
|
|
EOF2 |
|
' |
|
|
The EOF (or what you used for <<EOF) MUST begin in column 1 and be on a line by itself. |
One final note, if you selected 'autoExitInstall' => 0, then these two options do NOT get executed until AFTER you press the ENTER key at the end of the installation process.
Related Option Entries:
Depends on what all you installed.
This option provides you with the ability to install and configure none, one, or more printers. DrakX provides installation support for four basic printing systems: CUPS, LPRng, LPD and PDQ. The following is an attempt to distill the auto install stuff down to a simple presentation.
If all else fails, use the following form to indicate that there is no printer to be installed and then after the install is done, use the printerdrake program to add your printing system and printers.
To have No Printing System installed, simply ensure that the 'printer' option is not in the file, or: