CRUX : Home

Home :: Documentation :: Download :: Development :: Community :: Wiki :: Ports :: Bugs :: Links :: About

Main.Handbook2-3-Install History

Hide minor edits - Show changes to output

2007-03-14 20:05 by SimoneRota -
Changed lines 92-94 from:
* Go to %fn%/usr/src/linux-2.6.20.1%%, configure and compile a new kernel.

 $ cd /usr/src/linux-2.6.20.1
to:
* Go to %fn%/usr/src/linux-2.6.20.3%%, configure and compile a new kernel.

 $ cd /usr/src/linux-2.6.20.3
Changed line 148 from:
* Go to %fn%/usr/src/linux-2.6.20.1%%, configure and compile a new kernel.
to:
* Go to %fn%/usr/src/linux-2.6.20.3%%, configure and compile a new kernel.
2007-03-14 20:04 by SimoneRota -
Added lines 144-147:
->%lfloat%http://crux.nu/doc/images/note.png
'''Note'''[[<<]]
->''There is a short-cut command for creating the chroot environment: %fn%setup-chroot%%. This will execute all these steps at once.''

2007-02-26 23:49 by SimoneRota -
Changed lines 92-94 from:
* Go to %fn%/usr/src/linux-2.6.19%%, configure and compile a new kernel.

 $ cd /usr/src/linux-2.6.19
to:
* Go to %fn%/usr/src/linux-2.6.20.1%%, configure and compile a new kernel.

 $ cd /usr/src/linux-2.6.20.1
Changed line 144 from:
* Go to %fn%/usr/src/linux-2.6.18.3%%, configure and compile a new kernel.
to:
* Go to %fn%/usr/src/linux-2.6.20.1%%, configure and compile a new kernel.
2007-02-26 20:07 by TillBiedermann - added a note for the setup-chroot command
Added lines 79-82:
->%lfloat%http://crux.nu/doc/images/note.png
'''Note'''[[<<]]
->''There is a short-cut command for creating the chroot environment: %fn%setup-chroot%%. This will execute all these steps at once.''

2006-12-09 18:38 by JuergenDaubert -
Changed lines 67-68 from:
->''There is no package dependency checking. This means that it is up to you to figure out that if you for example install the %fn%sendmail%% package you also need to install the %fn%db%% package.''
to:
->''There is no package dependency checking. This means that it is up to you to figure out that if you for example install the %fn%exim%% package you also need to install the %fn%db%% package.''
Changed line 83 from:
* Edit %fn%/etc/fstab%% to configure your filesystem(s). Editors '''vim''' and '''pico''' are available.
to:
* Edit %fn%/etc/fstab%% to configure your filesystem(s). Editors '''vim''' and '''nano''' are available.
Changed lines 88-90 from:
* Go to %fn%/usr/src/linux-2.6.18.3%%, configure and compile a new kernel.

 $ cd /usr/src/linux-2.6.18.3
to:
* Go to %fn%/usr/src/linux-2.6.19%%, configure and compile a new kernel.

 $ cd /usr/src/linux-2.6.19
Changed lines 94-96 from:
 $ cp arch/i386/boot/bzImage /vmlinuz
 $ cp System.map /
to:
 $ cp arch/i386/boot/bzImage /boot/vmlinuz
 $ cp System.map /boot
Changed lines 145-146 from:
-> ''If you upgrade your system from CRUX 2.1 to CRUX 2.2 you have to change all disk/cdrom/floppy device names in your'' %fn%/etc/fstab%% ''file. Starting with 2.2 CRUX does no longer use the '''devfs''' name scheme (''%fn%/dev/discs/discX/partY%%''). Two (new) examples: ''%fn%/dev/hda1%%'' would specify the first partition at your primary-master harddisk (standard IDE ATA bus). ''%fn%/dev/sda2%%'' specifies the second partition at your first SCSI or SATA harddisk. [[http://www.linux.com/guides/Linux-Filesystem-Hierarchy/dev.shtml|More information]]''
to:
-> ''If you upgrade your system from CRUX 2.1 to CRUX 2.3 you have to change all disk/cdrom/floppy device names in your'' %fn%/etc/fstab%% ''file. Starting with 2.2 CRUX does no longer use the '''devfs''' name scheme (''%fn%/dev/discs/discX/partY%%''). Two (new) examples: ''%fn%/dev/hda1%%'' would specify the first partition at your primary-master harddisk (standard IDE ATA bus). ''%fn%/dev/sda2%%'' specifies the second partition at your first SCSI or SATA harddisk. [[http://www.linux.com/guides/Linux-Filesystem-Hierarchy/dev.shtml|More information]]''
2006-11-28 19:28 by SimoneRota - References to kernel 2.6.18.3
Changed lines 88-90 from:
* Go to %fn%/usr/src/linux-2.6.15.6%%, configure and compile a new kernel.

 $ cd /usr/src/linux-2.6.15.6
to:
* Go to %fn%/usr/src/linux-2.6.18.3%%, configure and compile a new kernel.

 $ cd /usr/src/linux-2.6.18.3
Changed line 140 from:
* Go to %fn%/usr/src/linux-2.6.15.6%%, configure and compile a new kernel.
to:
* Go to %fn%/usr/src/linux-2.6.18.3%%, configure and compile a new kernel.
2006-11-28 19:27 by SimoneRota - Updated with 2.3 references
Changed lines 20-25 from:
* Download the CRUX ISO image (%fn%crux-2.2.iso%%). To ensure that the download was successful you should examine its checksum using md5sum.

 $ md5sum crux-2.2.iso

Compare the output with the file %fn%crux-2.2.md5sum%%, which can be found in the same directory as the ISO image on the download site. If the checksums match the download was successful and you can continue by burning the ISO image on a CD.
to:
* Download the CRUX ISO image (%fn%crux-2.3.iso%%). To ensure that the download was successful you should examine its checksum using md5sum.

 $ md5sum crux-2.3.iso

Compare the output with the file %fn%crux-2.3.md5sum%%, which can be found in the same directory as the ISO image on the download site. If the checksums match the download was successful and you can continue by burning the ISO image on a CD.
Changed lines 104-109 from:
* Download the CRUX ISO image (%fn%crux-2.2.iso%%). To ensure that the download was successful you should examine its checksum using '''md5sum'''.

 $ md5sum crux-2.2.iso

Compare the output with the file %fn%crux-2.2.md5sum%%, which can be found in the same directory as the ISO image on the download site. If the checksums match the download was successful and you can continue with burning the ISO image on a CD.
to:
* Download the CRUX ISO image (%fn%crux-2.3.iso%%). To ensure that the download was successful you should examine its checksum using '''md5sum'''.

 $ md5sum crux-2.3.iso

Compare the output with the file %fn%crux-2.3.md5sum%%, which can be found in the same directory as the ISO image on the download site. If the checksums match the download was successful and you can continue with burning the ISO image on a CD.
Changed line 167 from:
* Build a new kernel with support for your hardware. Use the kernel configuration used by the existing bootkernel as a starting point (you can find it [[http://crux.nu/svnweb/CRUX/browse/crux-2.2/kernel/ | here]]) and add the hardware support you need. If the kernel gets too big it is safe to remove SCSI and USB drivers (unless you need them of course), but do not remove any filesystem related options.
to:
* Build a new kernel with support for your hardware. Use the kernel configuration used by the existing bootkernel as a starting point (you can find it [[http://crux.nu/gitweb/?p=system/iso.git;a=tree;f=kernel;h=f915e219aaf27a3542e7c07c8675fc5ceaa92bb5;hb=2.3 | here]]) and add the hardware support you need. If the kernel gets too big it is safe to remove SCSI and USB drivers (unless you need them of course), but do not remove any filesystem related options.
2006-11-27 08:16 by JuergenDaubert -
Changed lines 160-161 from:
If you plan to use GRUB (which is included in the ISO) make sure you read the [[Handbook2-3-Appendix#grubinstall | installation notes]] in the appendix of this document.
to:
If you plan to use GRUB (which is included in the ISO) make sure you read the [[#grubinstall | installation notes]] in the appendix of this document.
2006-11-27 08:11 by JuergenDaubert -
2006-11-27 08:08 by JuergenDaubert -
Changed lines 160-161 from:
If you plan to use GRUB (which is included in the ISO) make sure you read the [[#grubinstall | installation notes]] in the appendix of this document.
to:
If you plan to use GRUB (which is included in the ISO) make sure you read the [[Handbook2-3-Appendix#grubinstall | installation notes]] in the appendix of this document.
2006-11-27 07:40 by JuergenDaubert -
Added lines 1-188:
! Installing CRUX
!! Supported Hardware

Packages on the official CRUX ISO image are compiled with optimization for i686 (Pentium-Pro/Celeron/Pentium-II or better) processors. Do not try to install it on an i586 (Pentium, AMD K6/K6-II/K6-III) or lower processor, since it simply will not work. To install CRUX on an i586 system you need to [[Download | download]] the i586 version of the CRUX ISO image.

The kernel used during installation, i.e. when booting from the CRUX ISO image (El Torito), is compiled with the following disk controllers and USB support:

||cellpadding="3" rules="all" frame="box"
||! Subsystem ||! Driver(s) included in bootkernel ||
||IDE ||Generic PCI IDE chipset ||
||SATA ||ServerWorks Frodo/Apple K2, Intel PIIX/ICH, Promise, Silicon Image, VIA, VITESSE VSC-7174
||SCSI ||7000FASST, ACARD, Adaptec AACRAID, Adaptec AIC7xxx, Adaptec AIC79xx U320, AdvanSys, Always IN2000, AMI MegaRAID, BusLogic, Compaq Fibre Channel, NCR5380/53c400, IBM ServeRAID, SYM53C8XX, Tekram DC390(T) and Am53/79C974
||USB ||USB device filesystem, EHCI HCD (USB 2.0) support, UHCI (Intel PIIX4, VIA, ...) support, OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support, USB Mass Storage support, USB Human Interface Device (full HID) support, HID input layer support

In order to install CRUX, your disk controller must be present in the list above. If your hardware is not supported or you have other problems installing CRUX you might find a solution in Section [[#AlternativeInstallationMethods | "Alternative Installation Methods"]].


!! [[#InstallingFromCD-ROM]] Installing From CD-ROM

* Download the CRUX ISO image (%fn%crux-2.2.iso%%). To ensure that the download was successful you should examine its checksum using md5sum.

 $ md5sum crux-2.2.iso

Compare the output with the file %fn%crux-2.2.md5sum%%, which can be found in the same directory as the ISO image on the download site. If the checksums match the download was successful and you can continue by burning the ISO image on a CD.

* The ISO image is bootable, just insert the newly burned CD and reboot your computer. Press @@Enter@@ at the boot prompt (you might have to adjust the @@root=@@ parameter, depending on your hardware configuration).
* Login as '''root''' (no password required).
* Create (if necessary) and format the partition(s) you want CRUX to be installed on.

 $ fdisk /dev/hd?
 $ mkreiserfs /dev/hd??
 $ mkswap /dev/hd??

->%lfloat% http://crux.nu/doc/images/note.png
'''Note'''[[<<]]
->''Please keep in mind that SATA harddisks are usually detected as SCSI devices. The first SATA disk is called ''%fn%/dev/sda%%'' instead of ''%fn%/dev/hda%%''. For more information about harddisk naming conventions please checkout this [[http://www.tldp.org/HOWTO/Partition/devices.html | HOWTO]].''

The amount of disk space you need depends on how many packages you choose to install. I recommend having at least a 1G root partition (CRUX will use about 200MB-500MB depending on your configuration).

Using ReiserFS is recommended, but there is support for Ext2fs/Ext3fs, XFS and JFS as well. Further, I highly recommend separating system data from user data, i.e. use a separate partition for %fn%/home%% (and possibly %fn%/var%%) since that will make your life a lot easier the day you want to upgrade/reinstall/remove your system.

->%lfloat% http://crux.nu/doc/images/note.png
'''Note'''[[<<]]
->''Make sure that any BIOS Virus Protection option is DISABLED as this option may prevent '''fdisk''' from writing new partitions correctly.''

* Mount the partition on which you want to install this distribution.

 $ mount /dev/hd?? /mnt

If you want the installation to span more than one partition, mount those partitions as well. For example, if you want to have a different partition for %fn%/home%% or %fn%/var%%, then do:

 $ mkdir /mnt/var
 $ mount /dev/hd?? /mnt/var

* Activate your swap partition(s).

 $ swapon /dev/hd??

* Type '''setup''' to start the package installation script. The script will ask where you mounted your new root partition and which packages you want to install. Just select the packages you want and nothing else will be installed. However, I recommend at least installing all the packages marked %fn%core%%.

Once it has installed the selected packages, the '''setup''' script will display an installation log. Make sure the last line in the log says @@&#8220;0 error(s)&#8221;@@.

If you at a later stage find that you need some additional packages you can just mount the CRUX CD-ROM and use '''pkgadd''' to install them.

->%lfloat%http://crux.nu/doc/images/note.png
'''Note'''[[<<]]
->''There is no package dependency checking. This means that it is up to you to figure out that if you for example install the %fn%sendmail%% package you also need to install the %fn%db%% package.''

[[http://crux.nu/doc/screenshots.html | Screenshots of setup]]

* Now it's time to compile your kernel and do basic system configuration. The kernel compilation requires that you &#8220;chroot&#8221; into your new CRUX installation.

 $ mount --bind /dev /mnt/dev
 $ mount --bind /tmp /mnt/tmp
 $ mount -t proc proc /mnt/proc
 $ mount -t sysfs none /mnt/sys
 $ chroot /mnt /bin/bash

* Set the root password.

 $ passwd

* Edit %fn%/etc/fstab%% to configure your filesystem(s). Editors '''vim''' and '''pico''' are available.
* Edit %fn%/etc/rc.conf%% to configure font, keyboard, timezone, hostname and services. See Section [[#ConfigurationVariables | "Configuration Variables in /etc/rc.conf"]] for details about %fn%/etc/rc.conf%%.

* Edit %fn%/etc/rc.d/net%%, %fn%/etc/hosts%% and %fn%/etc/resolv.conf%% to configure your network (ip-address/gateway/hostname/domain/dns).

* Go to %fn%/usr/src/linux-2.6.15.6%%, configure and compile a new kernel.

 $ cd /usr/src/linux-2.6.15.6
 $ make menuconfig
 $ make all
 $ make modules_install
 $ cp arch/i386/boot/bzImage /vmlinuz
 $ cp System.map /

* Edit %fn%/etc/lilo.conf%% to boot the kernel you just compiled and run '''lilo''' to make the new system bootable.
* Remove the CRUX CD-ROM from your drive and reboot from harddisk.

If you plan to use GRUB (which is included in the ISO) make sure you read the [[#grubinstall | installation notes]] in the appendix of this document.

!! Upgrading From CD-ROM

* Download the CRUX ISO image (%fn%crux-2.2.iso%%). To ensure that the download was successful you should examine its checksum using '''md5sum'''.

 $ md5sum crux-2.2.iso

Compare the output with the file %fn%crux-2.2.md5sum%%, which can be found in the same directory as the ISO image on the download site. If the checksums match the download was successful and you can continue with burning the ISO image on a CD.

* The ISO image is bootable, just insert the newly burned CD and reboot your computer. Press @@Enter@@ at the boot prompt (you might have to adjust the @@root=@@ parameter, depending on your hardware configuration).
* Login as '''root''' (no password required).
* Mount your CRUX root partition.

 $ mount /dev/hd?? /mnt

If your installation spans over more than one partition, then mount these partitions as well. For example, if you have a different partition for %fn%/var%%, then do:

 $ mount /dev/hd?? /mnt/var

* Activate your swap partition(s).

 $ swapon /dev/hd??

* Type '''setup''' to start the package installation script. The script will ask you where you mounted your root partition and which packages you want to upgrade. It is a good idea to upgrade all packages, else you might get into trouble later, e.g. in case a new version of some library isn't 100% backwards compatible.

->%lfloat%http://crux.nu/doc/images/note.png
'''Note'''[[<<]]
->''The '''setup''' script uses the %fn%/etc/pkgadd.conf%% of the target system to determine which files to upgrade and which files not to upgrade. The files that are not upgraded are put in %fn%/var/lib/pkg/rejected/%% (Section [[#UpgradingaPackage | "Upgrading a Package"]]).''

When the '''setup''' script has upgraded the selected packages an upgrade log will be displayed. Make sure the last line in the log says @@&#8220;0 error(s)&#8221;@@. If you at a later stage find that you need some additional packages you can just mount the CRUX CD-ROM and use '''pkgadd''' to install them (e.g. '''pkgadd /mnt/crux/opt/package#1.0-1.pkg.tar.gz''').

* Now it's time to compile your kernel. The kernel compilation requires that you &#8220;chroot&#8221; into your CRUX installation.

 $ mount --bind /dev /mnt/dev
 $ mount --bind /tmp /mnt/tmp
 $ mount -t proc proc /mnt/proc
 $ mount -t sysfs none /mnt/sys
 $ chroot /mnt /bin/bash

* Go to %fn%/usr/src/linux-2.6.15.6%%, configure and compile a new kernel.
* Adjust %fn%/etc/fstab%% if needed.

-> %lfloat% http://crux.nu/doc/images/important.png
'''Important''' [[<<]]
-> ''If you upgrade your system from CRUX 2.1 to CRUX 2.2 you have to change all disk/cdrom/floppy device names in your'' %fn%/etc/fstab%% ''file. Starting with 2.2 CRUX does no longer use the '''devfs''' name scheme (''%fn%/dev/discs/discX/partY%%''). Two (new) examples: ''%fn%/dev/hda1%%'' would specify the first partition at your primary-master harddisk (standard IDE ATA bus). ''%fn%/dev/sda2%%'' specifies the second partition at your first SCSI or SATA harddisk. [[http://www.linux.com/guides/Linux-Filesystem-Hierarchy/dev.shtml|More information]]''

-> '''udev''' ''reads files in'' %fn%/sys/*%% ''and'' %fn%/proc/*%%. ''Make sure that those pseudo filesystems are enabled in your kernel configuration and available during system-startup. Also note that unlike devfsd, udev doesn't automatically mount'' %fn%/dev/pts%%. ''Terminal applications such as'' '''xterm(1)''' ''will not work if you forget to mount it. If you want'' '''udev''' ''to detect your connected USB hardware you'll need the USB-Filesystem mounted on'' %fn%/proc/bus/usb%%. ''We highly recommend you check your %fn%fstab%% file:''

-> [@# <dev> <dir>        <type> <options> <dump> <pass>
[..]
devpts  /dev/pts      devpts defaults  0      0
sysfs  /sys          sysfs  defaults  0      0
proc    /proc        proc  defaults  0      0
usb    /proc/bus/usb usbfs  defaults  0      0
@]

* Edit %fn%/etc/lilo.conf%% to boot the kernel you just compiled and run '''lilo''' to make the new system bootable.
* Remove the CRUX CD-ROM from your drive and reboot from harddisk.

If you plan to use GRUB (which is included in the ISO) make sure you read the [[#grubinstall | installation notes]] in the appendix of this document.

!! [[#AlternativeInstallationMethods]] Alternative Installation Methods
!!! Building Your Own Bootkernel

If you are unable to install CRUX from CD-ROM because your hardware is not supported by the bootkernel you can build your own bootkernel and add whatever hardware support you need. To do this you need a 1.44Mb floppy disk, access to another Linux box and the CRUX ISO image burned on a CD. Basic knowledge about how to configure and compile the Linux kernel is of course also required.

* Build a new kernel with support for your hardware. Use the kernel configuration used by the existing bootkernel as a starting point (you can find it [[http://crux.nu/svnweb/CRUX/browse/crux-2.2/kernel/ | here]]) and add the hardware support you need. If the kernel gets too big it is safe to remove SCSI and USB drivers (unless you need them of course), but do not remove any filesystem related options.
* Download the [[http://crux.nu/files/mkbootfloppy.tar.gz | boot floppy creation kit]] and unpack it.
* Go into the %fn%mkbootfloppy%% directory and execute the '''mkbootfloppy''' script (as '''root'''). This script requires one argument, the kernel image you want to place on the floppy image. Before you do this, make sure you do not have anything mounted on %fn%/mnt%% since the '''mkbootfloppy''' script will use that as a mount point.

 $ cd mkbootfloppy
 $ ./mkbootfloppy /path/to/linux/kernel/arch/i386/boot/bzImage
 1440+0 records in
 1440+0 records out
 mke2fs 1.27 (8-Mar-2002)
 Added CRUX *

* Write the resulting %fn%boot.img%% file to a floppy disk.

 $ dd if=boot.img of=/dev/fd0
 
* Insert both the floppy disk and the CRUX CD into the system you want to install CRUX on and reboot.
* Install CRUX.

!!! Network Installation

If you do not have a CD burner, are unable to boot your machine using the CRUX CD-ROM or for any other reason are unable to install CRUX the normal way (Section [[#InstallingFromCD-ROM | "Installing From CD-ROM"]]) you might want to check out [[NFSInstall | HOWTO install CRUX via NFS]] by Jürgen Daubert.