Find the answer to your Linux question:
Page 1 of 3 1 2 3 LastLast
Results 1 to 10 of 25
Update July 7, 2009: Though written fro CRUX 2.4, this "How-To" also works generally the same for CRUX 2.5 with a few obvious modifications. As always, refer to the CRUX ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Trusted Penguin Dapper Dan's Avatar
    Join Date
    Oct 2004
    Location
    The Sovereign State of South Carolina
    Posts
    4,630

    How to install CRUX


    Update July 7, 2009: Though written fro CRUX 2.4, this "How-To" also works generally the same for CRUX 2.5 with a few obvious modifications. As always, refer to the CRUX handbook when there is a question.
    CRUX describes itself as a...
    ...lightweight, i686-optimized Linux distribution targeted at experienced Linux users. The primary focus of this distribution is keep it simple, which is reflected in a straightforward tar.gz-based package system, BSD-style initscripts, and a relatively small collection of trimmed packages.
    Having run CRUX for a few years now (beginning with 2.2), I can attest that this statement is right on the mark, and pretty much sums up why it has become my distro of choice. I've been running 2.3 for a good while. It has performed so well for me that I've resisted the urge to upgrade. However, being the inveterate Linux tinkerer I am, I just couldn't put off installing 2.4 any longer!

    As has been the case since 2.2, the install of 2.4 went pretty much without a hitch. The CRUX website has very useful documentation you should keep close to hand while installing. I usually follow along with their directions and recommendations, but do stray slightly from the officially documented way. Since the install went easily enough for me, I thought I'd share my method if you are perhaps considering this blindingly fast and simple distro.

    Among other distros on my hard drive, Slackware 12 was at sda5 and sda6, and CRUX 2.3 at sda9 and sda10. Since Slackware 12 is rarely booted on this box, I elected to install CRUX 2.4 to those partitions, root directory to sda5 and /home to sda6. Your situation will of course depend on where you want to install. For this "How To" let's pretend you also want to use the same partitions.

    Normally, I format with ReiserFS or XFS. This time though, I wanted to try something different and used Gparted from CRUX 2.3 to reformat the target partitions with JFS which I've not used before. If it's to your liking, you can use fdisk from the install disk, directions being found in the 2.4 handbook.

    I downloaded the CRUX 2.4 .iso and burned it, then rebooted with the newly created live CD in the beverage tray. (The following includes install screenshots recreated by way of VirtualBox so you can get a visual of the process).

    The initial boot screen will appear. Press enter. After booting up you will get a login screen. Type in “root” and press enter.

    First thing to do at the command prompt is to mount your target root partition to /mnt:
    Code:
    mount /dev/sda5 /mnt
    I want to have my home directory on a seperate partition so to do that:
    Code:
    mkdir /mnt/home
    mount /dev/sda6 /mnt/home
    Turn on your swap partition if you still use one:
    Code:
    swapon /dev/sda?
    Type “setup” and press enter. You will be greeted with the intuitive and easy to follow CRUX install utility welcome screen. It will ask if you want to continue with the install. Choose yes if you want to proceed.

    The next screen will ask if you want to install or upgrade. Of course, choose number 1, “install.” You will then get a screen asking where to install. As you can see here, I chose /mnt/sda5.

    Next in line, you are given a choice of what to install. At minimum, you must at least choose the “core” packages. This alone will give you the extreme minimum. I also choose the “opt” and “xorg” ports packages. After making your group selections, you will be asked if you want to choose individual packages to install. I chose “no.” The following screen inquires if you really want to do the install. Choose yes and you're off!

    From booting the live CD to the end of installation takes about five to ten minutes depending on the abilities of your machine and your level of proficiency. Afterwards though, you'll still need to do some configuration to get a functional OS when rebooting.

    Now it's time to “chroot” into the new installation. CRUX has a neat little app to do this automatically for you:
    Code:
    setup-chroot
    Or you can setup chroot manually:
    Code:
    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
    Once "inside" your new installation, set the root password:
    Code:
    passwd
    Now, open your /etc/fstab and edit it. You can use either vim or nano for this. CRUX provides a template /etc/fstab that is easily customized for your situation. Here's mine as a reference. (My edits are un-commented):
    Code:
    # /etc/fstab: static file system information
    #
    # <file system>        <dir>     <type>    <options>           <dump> <pass>
    
    #/dev/#REISERFS_ROOT#  /         reiserfs  defaults               0      0
    #/dev/#EXT3FS_ROOT#    /         ext3      defaults               0      1
    /dev/sda5              /         jfs       defaults               1      1
    #/dev/#XFS_ROOT#       /         xfs       defaults               0      0
    #/dev/#SWAP#           swap      swap      defaults               0      0
    #/dev/#REISERFS_HOME#  /home     reiserfs  defaults               0      0
    #/dev/#EXT3FS_HOME#    /home     ext3      defaults               0      2
    /dev/sda6              /home     jfs       defaults               1      2
    #/dev/#XFS_HOME#       /home     xfs       defaults               0      0
    #/dev/cdrom            /cdrom    iso9660   ro,user,noauto,unhide  0      0
    /dev/dvd               /mnt/dvd  udf       ro,user,noauto,unhide  0      0
    #/dev/floppy/0         /floppy   vfat      user,noauto,unhide     0      0
    devpts                 /dev/pts  devpts    defaults               0      0
    none                   /sys      sysfs     defaults               0      0
    none                   /proc     proc      defaults               0      0
    tmp                    /tmp      tmpfs     defaults               0      0
    #shm                   /dev/shm  tmpfs     defaults               0      0
    usb                    /proc/bus/usb usbfs defaults               0      0
    
    # End of file
    At this time, you can also set up services and network connection. Consult the CRUX 2.4 handbook for instruction. You'll also need to compile the kernel. With CRUX, kernel compilation is a piece of cake.
    Code:
    cd /usr/src/linux-2.6.23.9
    make menuconfig
    Make sure to include whatever drivers you need for your hardware! CRUX's default .config file is very minimal. You shouldn't assume your hardware drivers are already enabled in the configuration as is the case with many mainstream distros.
    EDIT: In the months since this "How To" was written, it seems the above point is a particular stumbling block for many. This is understandable as most mainstream distros come standard with support for most all file systems and hard drive configurations already present in the kernel. This is not the case with CRUX. It is up to you to determine what kernel support is needed for your hardware and build it into the kernel when compiling.

    To elaborate: You must compile file system and hardware support in the kernel. This means making sure your chosen file system has a (*) beside it when doing "make menuconfig" and not as a module or (M). I make it a point to compile in kernel support for all the major file systems. You must also make sure your hard drive's configuration is also supported in the kernel and not as a module. Whether your drive is ATA, SATA, SCSI or what have you, make certain support is built into the kernel (*) and not as a module (M). If you do not ensure this, your fresh CRUX install simply will not boot unless you plan on initiating initramfs.

    How to install CRUX continued...

    Save your new configuration and exit menuconfig. Next do:
    Code:
    make all && make modules_install
    After the compile is done:
    Code:
    cp arch/i386/boot/bzImage /boot/vmlinuz
    cp System.map /boot
    I use GRUB from my Ubuntu install so I edited its grub/menu.lst:
    Code:
    title           CRUX 2.4
    root            (hd0,4)
    kernel          (hd0,4)/boot/vmlinuz
    If you need to install the GRUB boot loader, see this page for detailed instruction. For LILO, consult the handbook.

    If everything has gone according to plan, you'll now have a shiny new minimum CRUX install, a great foundation from which to custom build your OS from source packages! See the CRUX 2.4 handbook for how to set up your ports and install packages through ports, prt-get or yapo. Yapo, (Yet Another Ports Overview) is a friendly ncurses front end for prt-get. Prt-get does resolve dependencies in most cases but, as is the case with other source based distros, there will be times when "hands on" dependency solving will be necessary.

    This method works for me. You will likely have to change some things to accommodate your particular needs and situation. I cannot guarantee this "How To" will also work for you. As they say in the used car business, "If it breaks in half after you buy it, you get to keep both halves."

    Good luck!
    Last edited by Dapper Dan; 05-10-2010 at 03:47 AM. Reason: corrected info
    Linux Mint + IceWM Registered: #371367 New Members: click here

  2. #2
    Administrator jayd512's Avatar
    Join Date
    Feb 2008
    Location
    Kentucky
    Posts
    5,023
    This is a great looking walk-through, Dan! I been thinking about trying either Crux or Arch for a little while now, and after seeing this, I may be trying Crux after all!

    Now to get the new box that it'll go in...
    Jay

    New users, read this first.
    New Member FAQ
    Registered Linux User #463940
    I do not respond to private messages asking for Linux help. Please keep it on the public boards.

  3. #3
    Trusted Penguin Dapper Dan's Avatar
    Join Date
    Oct 2004
    Location
    The Sovereign State of South Carolina
    Posts
    4,630
    Hi jayd512!

    If you decide to install CRUX, let me know and I'll be happy to help in any way I can.
    Linux Mint + IceWM Registered: #371367 New Members: click here

  4. $spacer_open
    $spacer_close
  5. #4
    Linux Newbie Tutku's Avatar
    Join Date
    Jul 2007
    Location
    Izmir / Turkey
    Posts
    167
    I've been using ArchLinux for 3 years but nowadays i've been thinking to migrate Crux, thanks for this tutorial.

  6. #5
    Trusted Penguin Dapper Dan's Avatar
    Join Date
    Oct 2004
    Location
    The Sovereign State of South Carolina
    Posts
    4,630
    As a "public service announcement," CRUX 2.5 is now in RC 1. Final should be forthcoming pretty soon. If there are any major changes in installation between 2.4 and 2.5, I'll do my best to post them here.
    Linux Mint + IceWM Registered: #371367 New Members: click here

  7. #6
    Administrator jayd512's Avatar
    Join Date
    Feb 2008
    Location
    Kentucky
    Posts
    5,023
    I'll be doing the same, as I plan on trying out a Release Candidate for the First time ever! (Which should speak volumes about how I feel about CRUX!)
    Jay

    New users, read this first.
    New Member FAQ
    Registered Linux User #463940
    I do not respond to private messages asking for Linux help. Please keep it on the public boards.

  8. #7
    Trusted Penguin Dapper Dan's Avatar
    Join Date
    Oct 2004
    Location
    The Sovereign State of South Carolina
    Posts
    4,630
    Good deal Jay. I'm looking forward to hearing how it goes for you. Please post back your thoughts and suggestions and things to look out for.
    Linux Mint + IceWM Registered: #371367 New Members: click here

  9. #8
    Administrator jayd512's Avatar
    Join Date
    Feb 2008
    Location
    Kentucky
    Posts
    5,023

    Exclamation

    Tried to go ahead and install CRUX 2.5 RC1, ran into my first issue.
    During the installation and kernel compile, I ran make menuconfig.
    Code:
    scripts/basic/fixdep.c: In function 'is_defined_config':
    scripts/basic/fixdep.c:399: internal compiler error: Illegal instruction
    Please submit a full bug report,
    with preprocessed source if available
    See <http://gcc.gnu.org/bugs.html> for instructions.
    make[1]: *** [scripts/basic/fixdep] Error 1
    make: *** scripts_basic] Error 2
    There is a newer version of gcc included in 2.5, so I'm willing to give it another shot in a bit to determine if this was an error on my part, or with the installer.
    Jay

    New users, read this first.
    New Member FAQ
    Registered Linux User #463940
    I do not respond to private messages asking for Linux help. Please keep it on the public boards.

  10. #9
    Trusted Penguin Dapper Dan's Avatar
    Join Date
    Oct 2004
    Location
    The Sovereign State of South Carolina
    Posts
    4,630
    Is ncurses installed? Do you have Internet yet?
    Code:
    prt-get install ncurses
    Linux Mint + IceWM Registered: #371367 New Members: click here

  11. #10
    Administrator jayd512's Avatar
    Join Date
    Feb 2008
    Location
    Kentucky
    Posts
    5,023
    Can you do prt-get before compiling the kernel?

    *EDIT*

    It seems you can... I'm about to get the internet connection set-up. Let me get back...
    Jay

    New users, read this first.
    New Member FAQ
    Registered Linux User #463940
    I do not respond to private messages asking for Linux help. Please keep it on the public boards.

Page 1 of 3 1 2 3 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •