===================== Mandrakelinux Install - fdisk partitioning, booting GRUB, etc. ===================== -IAN! idallen@idallen.ca This file explains how to: - use Knoppix and "fdisk" to create Linux partitions on your caddy hard disk - set the system types of those partitions - use mke2fs to create Linux file systems in those partitions - put a bootable Mandrakelinux install kernel into the first partition - configure the GRUB bootloader to boot the install kernel - fetch a Mandrake 10.1 Linux Mini distribution into the third partition - boot the first partition and use it to install from the Mini iso file in the third partition to an empty fifth partition - reboot and use GRUB to select the fifth partition Preparing Knoppix for networking -------------------------------- This makes sure your system has Internet access: - boot Knoppix - become root via su - give the root account a password you can remember - make sure Knoppix recognized your Ethernet connection: # ifconfig - look for an eth0 or eth1 device with an IP address - use this Knoppix script to enable ssh into your Knoppix machine: # sshstart - it asks you for a knoppix account password - you should also give your root account a password Identifying your hardware ------------------------- - locate your caddy drive (/dev/hda or /dev/hdb or ...) # sfdisk -l - identify your caddy drive in the output - confirm the caddy drive location via a disk access test: # hdparm -t /dev/hdX # where X is correct for your caddy drive - make sure your caddy disk light comes on for the test - disk access speed should be 10MB/sec or greater (if not, get a better disk!) You may now want to take a copy of these instructions and globally change the string "hdX" to be correct for your computer and caddy. Reading the correct hd numbers in the directions will make the following lines easier to understand and type. Create new partitions --------------------- Start fdisk to create new partitions on the caddy drive: # fdisk /dev/hdX # where X is correct for your caddy drive - DANGER: if you have other hard drives in your machine, giving the wrong drive letter to fdisk will cause it to access the wrong drive! If you write out the partitions to the wrong drive, you lose data! - list the existing partitions on your caddy - delete all existing partitions on your caddy - create new primary partition #1 - use default start and size of +50M - create new primary partition #2 - use default start and size of +250M - create new primary partition #3 - use default start and size of +700M - create new *extended* partition #4 - use default start and the full (default) remaining disk space - create new logical partition (this will be #5 inside partition #4) - use default start and size of +1000M - change partition 2 system id (type) to Linux swap type - toggle the boot flag ON for partition 1 (an * will appear there) - write the new partition table to the disk - exit fdisk Confirm your work using sfdisk -l: # sfdisk -l /dev/hdX # where X is correct for your caddy drive Device Boot Start End #blocks Id System /dev/hdX1 * 1 98 49360+ 83 Linux /dev/hdX2 99 583 244440 82 Linux swap /dev/hdX3 584 1940 683928 83 Linux /dev/hdX4 1941 10647 4068328 5 Extended /dev/hdX5 1941 3971 1023592+ 83 Linux The exact start and end numbers will be different for your drive. - verify that you have: partition 1: approximately 50K blocks partition 2: approximately 250K blocks partition 3: approximately 700K blocks partition 5: approximately 1000K blocks - make sure the boot flag "*" is set for partition 1 - make sure the type "Linux swap" is set for partition 2 - make sure the all partitions have the shown System types Create Linux file systems ------------------------- Once you have created the empty partitions, you need to put Linux file systems into them so that Linux can use them. The swap area needs to be initialized as well. Create a Linux journalling file system on partition 1 # mke2fs -j /dev/hdX1 # where X is correct for your caddy drive Initialize the system swap area on partition 2 # mkswap /dev/hdX2 # where X is correct for your caddy drive Create a Linux journalling file system on partition 3 # mke2fs -j /dev/hdX3 # where X is correct for your caddy drive Nothing needs to be done for Linux to the "extended" partition 4 - it holds the remaining "logical" partitions 5 and above. Create a Linux journalling file system on partition 5 # mke2fs -j /dev/hdX5 # where X is correct for your caddy drive Mount the new file systems -------------------------- Having created the file systems, we use the "mount" command to connect the partitions to the Linux directory tree. We put the file systems under the /mnt/ directory. Create a directory and mount partition 1: # mkdir -p /mnt/hdX1 # where X is correct for your caddy drive # mount /dev/hdX1 /mnt/hdX1 # where X is correct for your caddy drive # df /mnt/hdX1 # where X is correct for your caddy drive - confirm that there is approximately 45MB+ of space available # cd /mnt/hdX1 # where X is correct for your caddy drive # touch disk-hdX1 # where X is correct for your caddy drive - this creates a file whose name contains the Linux name of the partition - this name will be useful later in identifying this partition in GRUB Create a directory and mount partition 3: # mkdir -p /mnt/hdX3 # where X is correct for your caddy drive # mount /dev/hdX3 /mnt/hdX3 # where X is correct for your caddy drive # df /mnt/hdX3 # where X is correct for your caddy drive - confirm that there is approximately 650MB+ of space available # cd /mnt/hdX3 # where X is correct for your caddy drive # touch disk-hdX3 # where X is correct for your caddy drive - this creates a file whose name contains the Linux name of the partition - this name will be useful later in identifying this partition in GRUB Create a directory and mount partition 5: # mkdir -p /mnt/hdX5 # where X is correct for your caddy drive # mount /dev/hdX5 /mnt/hdX5 # where X is correct for your caddy drive # df /mnt/hdX5 # where X is correct for your caddy drive - confirm that there is approximately 950MB+ of space available # cd /mnt/hdX5 # where X is correct for your caddy drive # touch disk-hdX5 # where X is correct for your caddy drive - this creates a file whose name contains the Linux name of the partition - this name will be useful later in identifying this partition in GRUB The contents of partition 5 will be re-formatted and overwritten when we start up the install process. Confirm that you have touched all the correct files: # ls -l /mnt/hdX1/disk-hdX1 # where X is correct for your caddy drive # ls -l /mnt/hdX3/disk-hdX3 # where X is correct for your caddy drive # ls -l /mnt/hdX5/disk-hdX5 # where X is correct for your caddy drive Fetch the 10.1 Mini Install iso image - Mandrakelinux-10.1-Official-Mini ------------------------------------- We must fetch this iso (CDROM) image into the third partition (hdX3) for use by the installer. The installer (run from the first partition hdX1) will read this iso file and install the system into the empty fifth partition (hdX5). (The Mandrake installer can also read this iso file over the network; but, having it on the local hard drive is fastest and allows you to re-install without any network access.) You can fetch this iso file with wget or using bittorrent. If you use wget, you need to find a mirror site hosting the image. (Downloading from my home machine will be slow - I only have 80KB/sec upload speed to the Internet.) Choose a mirror in a "night" time zone for good download speeds. (For example, choose a West Coast mirror in the early morning, and choose a Europe server in the evening.) Choose method A or method B belwow: A. Fetch Mandrakelinux-10.1-Official-Mini using wget: Some mirrors (Google for "Mandrakelinux-10.1-Official-Mini" to find others): http://www.klid.dk/homeftp/mandrakelinux/official/iso/10.1/i586/ http://ftp.unicamp.br/pub/linux/iso/Mandrakelinux/official/10.1/i586/ http://mirror.hamakor.org.il/pub/mirrors/mandrake/official/iso/10.1/i586/ http://mandrake.lcpe.uni-sofia.bg/official/iso/10.1/i586/ http://search.belnet.be/packages/mandrakelinux/official/iso/i586/10.1/ http://gd.tuwien.ac.at/opsys/linux/Mandrake-iso/i586/10.1/ http://sunsite.mff.cuni.cz/MIRRORS/ftp.sunet.se/pub/Linux/distributions/mandrake/official/iso/10.1/i586/ http://bender.ecap.it/dwl/iso/mandrake/ http://ftp.ale.org/pub/mirrors/mandrake/official/iso/10.1/i586/ http://mirrors.sunsite.dk/mandrake/official/iso/10.1/i586/ http://ftp.riken.jp/Linux/mandrake/devel/iso/10.1/i586/official/ Locate a mirror containing the 10.1 Mini iso image (choose one that isn't busy - do not use my home example site below since it will be very slow), use wget to fetch it, and verify the signature using md5sum: # cd /mnt/hdX3 # where X is correct for your caddy drive # mkdir Mandrakelinux-10.1-Official-Mini # cd Mandrakelinux-10.1-Official-Mini # wget http://ian3.idallen.ca/distributions/Mandrake/10.1/Mandrakelinux-10.1-Official-Mini/Mandrakelinux-10.1-Official-Mini.i586.iso # wget http://ian3.idallen.ca/distributions/Mandrake/10.1/Mandrakelinux-10.1-Official-Mini/Mandrakelinux-10.1-Official-Mini.md5 # cat Mandrakelinux-10.1-Official-Mini.md5 # md5sum Mandrakelinux-10.1-Official-Mini.i586.iso - make sure md5sum agrees with Mandrakelinux-10.1-Official-Mini.md5 B. Fetch Mandrakelinux-10.1-Official-Mini using bittorrent: BitTorrent is a co-operative file download system. You upload parts of the file that you have to others while others are downloading parts to you. This system works best if you are not hidden behind a firewall or NAT router (which means its use at Algonquin College does not work well). This works well if your machine is directly on the public Internet. You need to fetch a "torrent" file that coordinates the download: Fetch my index file of Linux bittorrent files, look for (grep) the bittorrent file for the Mandrake 10.1 Mini Install, fetch the torrent file, run the torrent file using bittorrent to download the 10.1 Mini iso image: # cd /mnt/hdX3 # where X is correct for your caddy drive # wget http://ian3.idallen.ca/distributions/listtorrent.cgi # grep 10.1-Official-Mini.torrent listtorrent.cgi - look for the 10.1-Official-Mini.torrent URL in my listing # wget http://ian3.idallen.ca/distributions/Mandrake/10.1/Mandrakelinux-10.1-Official-Mini.torrent # btlaunchmanycurses . - wait until it finishes the downloading phase Verify the Mandrakelinux-10.1-Official-Mini ------------------------------------------- Create a short symlink to the Mini iso file (makes typing easier), make a mount directory, mount the iso image, check the contents: # cd /mnt/hdX3 # where X is correct for your caddy drive # ls -l Mandrakelinux-10.1-Official-Mini - make sure you can see the Mandrakelinux-10.1-Official-Mini.i586.iso # ln -s Mandrakelinux-10.1-Official-Mini/*.iso mini.iso - this makes "mini.iso" a short name for the Mini iso file in the subdir # ls -l -L mini.iso - the "-L" option means "follow the symlink to where it points" - confirm that the symlink points to the correct Mini iso file # cd Mandrakelinux-10.1-Official-Mini # mkdir -p /mnt/iso # mount -o loop Mandrakelinux-10.1-Official-Mini.i586.iso /mnt/iso # ls -l /mnt/iso/ - list files to check that the image is mounted correctly Leave the iso image mounted; we need to copy the install kernel from it in the next step. Set up the GRUB bootloader in your caddy ---------------------------------------- We will install the GRUB bootloader into the Master Boot Record (MBR) of your caddy. GRUB will let us boot any one of several different kernels. Initially, we want to boot the installer kernel from the first partition and also the kernel that the installer installs in the fifth partition. Use Knoppix to install the GRUB bootloader into the MBR and first partition of drive X (replace X with your caddy drive letter) and copy over some basic Mandrake installer kernel boot images from the mounted Mini iso file to the boot directory in the first partition: # grub-install --root-directory=/mnt/hdX1 /dev/hdX # replace X with letter # ls -l /mnt/hdX1/boot/grub/ # replace X with letter - make sure you see a list of the grub boot files # cp -p /mnt/iso/isolinux/alt0/* /mnt/hdX1/boot/ # replace X with letter Make sure you have both the installer kernel and the installer initial ram disk boot files copied to the first partition: # ls -l /mnt/hdX1/boot/vmlinuz # ls -l /mnt/hdX1/boot/all.rdz You already know what Linux drive name applies to your caddy (e.g. perhaps /dev/hda or /dev/hdb). GRUB doesn't use Linux names, since GRUB can boot all kinds of operating systems, not just Linux. We must find out which GRUB drive name applies to your caddy. GRUB names hard disk drives in order: (hd0), (hd1), (hd2), etc. Partitions within those disk drives are (hd0,0) (hd0,1) (hd0,2), etc. [Note that Linux partition numbers start at 1, e.g. /dev/hda1; GRUB partition numbers start at 0, e.g. (hd0,0). Sorry.] We have touched file names (such as disk-hdX1) in each of our three Linux partitions to make identifying the partitions in GRUB easier. Start GRUB: # grub At the GRUB prompt, type "cat (hd" and then push ; GRUB will show you the known hard disk drives by number, starting at zero: grub> cat (hd Possible disks are: hd0 hd1 hd2 For a list of partitions on disk hd0, do "cat (hd0," (push the TAB key): grub> cat (hd0, Possible partitions are: Partition num: 0, Filesystem type is ext2fs, partition type 0x83 Partition num: 1, Filesystem type unknown, partition type 0x82 Partition num: 2, Filesystem type is ext2fs, partition type 0x83 Partition num: 4, Filesystem type is ext2fs, partition type 0x83 Note that the extended partition (#3) doesn't show up in this list. For a list of pathnames on partition (hd0,0), try "cat (hd0,0)/": grub> cat (hd0,0)/ Possible files are: lost+found disk-hdX1 boot You can complete a pathname and actually use GRUB to see the file: grub> cat (hd0,0)/disk-hda1 (That file is the empty file we created earlier.) Try each of the (hdX,0) disk partitions, looking for file names you recognize: (hd0,0)/, (hd1,0)/, (hd2,0)/ until you find the right (hdN,0)/ that shows you the partition 1 disk-hdX1 file you created earlier. Now you know the GRUB (hdN,0) name for the first partition on your caddy drive *on this hardware*. The GRUB hdN number will change if you add/move hard drives. Remember this hdN number. Note that Linux partition /dev/hda1 is usually GRUB partition (hd0,0). (Linux numbers partitions from 1; GRUB numbers from zero. Sorry.) We need to tell GRUB how to boot from the first partition (GRUB partition number 0) and from the fifth partition (GRUB partition number 4). Create (using vi or even just "cat") a /mnt/hdX1/boot/grub/menu.lst file. # vi /mnt/hdX1/boot/grub/menu.lst # replace X with your caddy letter When copying and creating the menu.lst file below, replace hdN with the correct GRUB hdN number of your caddy drive, e.g. hd0, hd1, etc.: #----- menu.lst file starts after this line ----- title install kernel (hdN,0)/boot/vmlinuz root=/dev/ram3 ramdisk_size=64000 vga=791 initrd (hdN,0)/boot/all.rdz title Mandrake10.1Mini kernel (hdN,4)/boot/vmlinuz root=/dev/hdX5 vga=791 initrd (hdN,4)/boot/initrd.img title extra-6 kernel (hdN,5)/boot/vmlinuz root=/dev/hdX6 vga=791 initrd (hdN,5)/boot/initrd.img #----- menu.lst file ends before this line ----- The above menu.lst file will be read by GRUB when your machine boots. It tells GRUB that there are three bootable kernels available (replace hdN with the actual GRUB hard disk number of your caddy): 1. title: "install" - boots from first partition (hdN,0) 2. title: "Mandrake10.1Mini" - boots from fifth partition (hdN,4) 3. title: "extra-6" - boots from sixth partition (hdN,5) [not yet defined] 1. The first kernel is the "install" kernel that sets up a ramdisk and runs entirely in memory. This kernel allows you to choose from where to fetch the "real" kernel for installation onto your hard disk caddy. This first install kernel and its initial ramdisk "all.rdz" are stored under the /boot/ directory in the first partition [Linux name /dev/hdX1, GRUB name (hdN,0)]. Putting the installation kernel in the first partition means you can erase some or all the other partitions on the disk and still have a bootable installation kernel that lets you re-install. 2. The second kernel isn't available yet; but, we will define it here now rather than have to come back and add it to this file later. After you do the "install" using the first kernel, this second system will be installed in the indicated fifth partition (hdN,4) and will be bootable. This second kernel is the on-disk kernel for the Mandrake 10.1 Mini system that we will install. It will be installed in the fifth partition [Linux name /dev/hdX5, GRUB name (hdN,4)] by the installer that we boot from the first partition, reading the Mini iso file from the third partition. 3. The third kernel isn't available yet, either. We haven't even created a sixth partition; so, this "extra-6" entry will not work unless you create the partition and install something into it. (The installer can do this for you.) This "extra-6" entry is simply a spare GRUB entry that you might find useful later. You could also define "extra-7", etc. Create the above menu.lst file. Save the contents of menu.lst and exit vim. Your system is ready to boot the "install" kernel that will let you install a Mandrake 10.1 Mini system from the Mini iso file you put in the third partition. You will be using the kernel in the first partition to install from the iso file in the third partition, creating a new system on the fifth partition. If anything goes wrong, you can erase the fifth partition and start over. (Or, if you have disk space, you can ask the installer to create a sixth or seventh or eighth partition and install into that. Edit the GRUB menu.lst file to add GRUB boot entries for the new partition, and reboot into it.) Rebooting into GRUB ------------------- After you have created the menu.lst file with the three boot entries in it, GRUB is ready to take control of your system when you reboot it. Change to the root directory on Knoppix and unmount all mounted disks: # cd / # umount -a Remove your Knoppix CD from the CDROM drive and reboot. If your caddy drive is the only hard disk when you boot, it should be selected as the boot device. If you have multiple hard drives in your machine when you reboot, you need to go into the BIOS and arrange that it is your caddy that boots, not your existing hard disk. (Perhaps you can choose the boot device in the BIOS; or, perhaps you can disable all the other hard disks.) (You can also prepare and use a GRUB boot floppy that lets you choose which MBR to use.) If you have done everything correctly, you'll boot from the MBR on your caddy drive, into GRUB, and have the three menu items from menu.lst available as choices. The arrow keys move among choices. The RETURN key will boot a given selection. Choose the "install" selection (the first line). Push RETURN to have GRUB boot the the Mandrake install kernel from the first partition. Doing a basic Mandrake 10.1 Mini Install - answering questions ---------------------------------------- Assuming your system correctly boots the installer kernel from the first partition, you should see some boot information fly by, stopping with a screen that says: Please choose the installation method: This install kernel lets you install from NFS, FTP, HTTP, CDROM, or your hard disk. The arrow keys move the highlighted selection to choose the method. The TAB key selects the OK and CANCEL buttons. Highlight "hard disk" and push TAB to highlight the OK button, then hit RETURN to continue. You may next have to hit RETURN to say "OK" to some driver installation and configuration messages. Eventually you will see a screen that says: Please select the disk containing the copy of the Mandrakelinux Distribution install source. Since you are booting Linux, the disks are listed with their Linux names (hda, hdb, etc.). Use the arrow keys to choose the disk that is your hard drive caddy, TAB to the OK button, and push RETURN to continue. Next, you see: Please select the partition containing the copy of the Mandrakelinux Distribution install source. You downloaded the Mini iso file to the third partition (Linux name /hdev/hdX3). Use the arrow keys to select the third partition, TAB to the OK button, push RETURN. Next, you see: Please enter the directory (or ISO image file) containing the Mandrakelinux Distribution install source. You created a symlink "mini.iso" that points to the Mini iso file in its subdirectory. You can use this short name in response to the above question. Enter "mini.iso" as the name, TAB to OK, push RETURN. (If this fails, you got the symlink wrong. You can specify the directory name in the third partition that contains the Mini iso instead: enter "Mandrakelinux-10.1-Official-Mini", TAB to OK, push RETURN. On the next screen, select the iso file, TAB to OK, press RETURN.) If you get the iso file name correct, it will say "Loading program into memory (please wait)". The screen will switch to graphical X11 mode and you will have your mouse available. The install kernel is fetching the installation system out of the Mini iso file. Select your desired Language, click NEXT with the mouse. Read and Accept the License Agreement, click NEXT. "Is this an install or an upgrade?" If you are asked what type of installation you want, select "Install" and not "Upgrade". You want to install into the new fifth partition. Keep the "Standard" security level - just click NEXT on this screen. "The DrakX Partitioning wizard found the following solutions:" Choose "Use existing partitions" - you want to install into the existing empty fifth partition that we created earlier using Knoppix and fdisk. (If on a subsequent run of the installer you want to create a new partition and install a system into it, select "Custom" and create a new partition.) "Choose the mount points" You will see a list of disk partitions that the installer found and the suggested places that the installer would like to mount these partitions in your new system. If your caddy drive is not the only drive in your system, you may see partitions from all your other drives (even Windows drives, since Linux can read most Windows format file systems). Later, you might experiment with leaving some of these partitions enabled in your new system. For now, blank out (erase) all the mount points except the third partition (/dev/hdX3) and the fifth partition (/dev/hdX5). Set these names: The mount point for #3 /dev/hdX3 should be: /mnt/hd The mount point for #5 /dev/hdX5 should be: / You are saying that the ROOT directory "/" will be on the fifth partition. You will recall that your GRUB menu.lst file had the kernel option "root=/dev/hdX5" to tell this to the kernel being booted. Click NEXT once you have set the two mount points. (Erase all the others.) When asked which partitions you want to format, leave hdX5 (the root) selected, and click NEXT. This erases everything in the partition and recreates it with an empty Linux file system. "Do you have supplementary installation media to configure" Select "None" and click OK. We will add supplementary media later. In the Package Group Selection menu, select everything in the left column. (Later, for another install, you might experiment by selecting nothing extra and noting just how small a Linux system you can run. You can always add back the missing packages later.) Leave "Individual package selection" turned off (unselected). Click NEXT. "Do you really want to install these servers?" You will see a warning screen notifying you of the servers that your new system will be stating by default. If your system is on the Internet, you must keep the servers mentioned patched with security updates to prevent your system from being exploited by bugs in old software. Leave the selection as YES and click NEXT. The installer will now extract packages from the Mini iso file on partition 3 and install the packages into partition 5. You will see a progress bar showing this as it happens. While you are waiting, note that CTRL-ALT-F2 switches you to a console with a mini-root shell (not bash, but similar) running. See the heading below on "Using the installer mini-root" for details. To switch back to the graphical install screen, use ALT-F7. After a few minutes, all the packages from the Mini iso will have been installed in the fifth partition. You will be asked to set the root password for your new system. Set a good password (one that you can remember) and click NEXT. (If you forget the root password, you can reboot the installer, load the install kernel, switch to the mini-root shell on console 2, mount the fifth partition, and edit /etc/passwd to erase root's password.) You will be asked to "Enter a user". You should create an "ordinary" unprivileged user of your system. Enter your full name and a preferred userid (no blanks or funny characters in the userid). Click on the icon to change the user's graphical login icon (not used for a text login). You can create other users now, if you like. (You can always add more users later.) Click "Accept User". When you are finished adding users, click on NEXT. "I can set up your computer to automatically log in on one user" Do *NOT* select "automatically log in one user". Turn it off! That isn't secure for a network machine. Disable this feature. Click NEXT. "Where do you want to install the bootloader" On the "LILO/grub Intallation" screen where it asks about the bootloader, say "SKIP". You already have GRUB installed as a bootloader. When you created the menu.lst file for GRUB earlier, you already added a second entry titled "Mandrake10.1Mini" that points to the kernel in the fifth partition. Now that the installation into the fifth partition is complete, when you reboot, you can select this second GRUB entry to boot the new installation. Choose "SKIP" - do not install another bootloader. On the "Summary" screen, make the following changes: Change the Country/Region to Canada. If the network interface (LAN) is not working, configure it. In Algonquin Lab T111, eth0 is the "top" card, and eth1 is the "bottom" card on the back of each machine. The network cable is attached to one of the cards - make sure you select that card when you set up a DHCP configuration. You don't need to enter any host names. Configure the Graphical Interface: "Choose an X server" Normally, you would choose an X server that matches your video card; but, you are installing in a caddy drive that will be plugged into various kinds of hardware, video cards, and monitors. What do you choose? There is no easy answer. For now, accept the default X server that is offered to you. "Resolution" You might choose a conservative resolution that will work everywhere with most cards and monitors: 800x600 at 60Hz and 800x600 with 16bpp. If you are confident your hardware can support it (most modern hardware can), select the 1024x768 @ 70Hz and 1024x768 16bpp entries. Click "test" to try your selection. Click NEXT when done. "I can set up your computer to automatically start the graphical interface" No. Turn this off. A network server should not be running the windowing system all the time, only if/when needed. (Many network servers have the windowing system removed entirely for security.) By turning this off, you set the default run level in /etc/inittab to "3" instead of "5". (5 is the full X11 graphical run level.) "You have the opportunity to download updated packages" Bugs may have been found in packages since the CDROM was pressed. You have an opportunity now to download upgraded versions of packages. Since we can do this upgrade more easily later, say "NO" here. Don't forget to do your upgrades later! "Congratulations, installation is complete." The installer system, running in partition one, has read all the packages from the Mini iso, residing in partition three, and installed the packages into partition five. We have a menu.lst file for GRUB that contains an entry (the second entry, titled "Mandrake10.1Mini") that points to partition five, so we are free now to reboot into GRUB and use GRUB to select the Mandrake10.1Mini boot entry. Click on REBOOT. When GRUB comes up this time, move the highlight down to the second entry, titled Mandrake10.1Mini, and push RETURN. You will be booting the kernel in the fifth partition this time. As the system boots, make note of any "FAIL" messages that appear during the boot process. When the prompt for a login appears, enter your account userid and password. Type "startx" at the shell to bring up the X11 graphical window system. The "df" command will show you that you are using about 300MB out of 950MB on the fifth partition. Configuring the Mini System - getting updates and more packages --------------------------- The Mandrake 10.1 Mini system contains only a basic small set of packages. It doesn't have a web browser installed, or ssh, or telnet. You can use the Mandrake "urpmi" tool to fetch more packages from the Internet, once you have told urpmi where the site mirrors are using "urpmi.addmedia". See file "mandrake_config.txt" for details. Resources --------- mandrake hard disk install http://qa.mandrakesoft.com/twiki/bin/view/Main/CookerHowTo grub http://kb.mandrakeclub.com/index.php/InstallIboot2 http://qa.mandrakesoft.com/hd_grub.cgi --------------------------------------------------------------------------- Using the installer mini-root --------------------------------------------------------------------------- [OPTIONAL - used for emergency recovery] When running the installer kernel, CTRL-ALT-F2 gets you a console with a root prompt. In fact, this is not a traditional Unix shell. It is a Perl program reading lines and pretending to be a shell - many commands don't work, or work differently from the real commands of the same name. (For example, almost none of the options to ls are recognized!) If you look at the /bin/ directory of the installer, it has very few commands. This is called a "mini-root" installation - it small and has just enough commands to install a system or do some simple diagnostics. Even the bash shell is too big for the mini-root, which is why they have a Perl program pretending to be a shell for you. You can look around at the real system as it is being assembled under mount point /mnt/. The "df" command will show you that the install process has mounted your newly created Mandrake system using directory /mnt/ and a partition name of /dev/hdX5. ALT-F3 shows you the installer log messages; ALT-F4 shows the system logger messages (which are not written to a file in a mini-root system). Since the installer is installing a more complete system under the /mnt/ directory, you can often use commands installed under /mnt/ if they are missing from the installer mini-root /bin/ directory. A classic example of this is "vim", which is not in the installer mini-root anywhere. Once the installer has installed packages into the the /mnt/ directory, you can find a useful copy of vim at /mnt/bin/vim-minimal. If you are having problems booting an installed kernel, you can often boot the installer kernel, switch to the #2 console, and then mount the partition that is giving you problems and fix it, even using commands such as vim-minimal from the system you are mounting and fixing. If you wanted to edit the GRUB menu.lst file before rebooting your newly installed system, you would have to first make a mount point directory, mount the first partition, then use the vim-minimal editor located over in the system being built under the /mnt/ partition (since vim doesn't come with the installer kernel!). It would look like this: Use CTRL-ALT-F2 to switch to the mini-root #2 console. Then: # mkdir -p /mnt/hdX1 # where X is correct for your caddy drive # mount /dev/hdX1 /mnt/hdX1 # where X is correct for your caddy drive # cd /mnt/hdX1 # where X is correct for your caddy drive # ls - confirm that you can see your disk-hdX1 file, created earlier - if you don't see this file, you mounted the wrong partition! # cd boot/grub # ls -l menu.lst - make sure the menu.lst file is still there, from before # /mnt/bin/vim-minimal menu.lst - it will complain about your terminal type; but, it should work anyway - edit the file and save it # cd / # umount /mnt/hdX1 # where X is correct for your caddy drive You are ready to reboot.