On Wed, Sep 13, 2006 at 10:51:11PM +0100, Kevin Annies wrote: > What I know: > I have created several LFS partitions, amd am currently working through > selected sections of BLFS to create my desired LFS. In my mind the picture I > have is that if I can create a basic bootable LFS CD using the hint, perhaps > if I also try and slip an aditional folder containing some of my 'Desired > LFS' although I would think not all would fit so thats why I would at least > need a second CD containing the rest. I would then use the Basic LFS to > initiate the copying and configuration of the 'Desired LFS' to a selected > partition I wish to install to. The task of copying and configuring I get a > little foggy. I would assume that this is done on a fancy installer like > 'Anaconda'. However, I wish to create a setup program myself. Would this be > possible using a bash script or would I need to use something higher level > like C++? > Why on earth would you need a higher-level language ? Unless you have a very unusual requirement, a script should be ideal for this. Even if you do need a higher level program, restrict it to doing one thing and only use it when necessary. You probably need to minimise the assumed memory of your target machines, and you won't have any swap available, at least until the disk is partitioned.
> In Sumary: > I have a bootable CD containing a 'Basic LFS' & part of a 'Desired LFS' for > installation. > I wish to initiate the installation of the 'Desired LFS' using the terminal > of the 'Basic LFS' > I want to to create a program that will accept a user input (Selecting a > destination drive/partition), update /etc/fstab based on the option. > FYI I do not want any fancy options to select optional software, this is > going to be standard for my university and what is on the distro is what the > students get. > I just want to create a simple setup program which will copy the nessacery > files. The tricky bit is after I am done with one CD, How can I get the > program to prompt the user to enter the next CD? > One of the main differences between a regular LFS system and distro installers is space - usually, an install or rescue disk will run from an initrd, which obviously limits how much space is available - this is why installers use 'funny' shells (ash, nash, ...) and have very limited versions of the commands (busybox). If you run from the initrd and _don't_ switch to a 'main' system, you can umount the CD after reading it, so that another can be installed. If you need more programs, you could, for example, put them on the first CD and mount this at /usr [ obviously, you have to _find_ which drive has the CD ] - space is the big problem, I've only ever done this with uclibc because I'm not well up on using intrds on x86. It seems to me that you are limited to 2.88MB including kernel plus initrd - you can, of course, put some kernel stuff in modules then symlink /lib/modules to /usr/lib/modules to read them from the CD - might not work with udev, I dunno). Probably, there is some other way around this. Generally, you ought to look at the LiveCD project if you haven't already done so. The real fun will come in identifying which drivers to use on a particular target machine - knoppix seems to be good at identifying nics and perhaps vga chips, but if this is a desktop distro the real fun will come when you try to set up X, or if you need to pass any boot arguments to some of the machines. Also, you need to think about machine-specific kernels - in LFS we expect you to know what chipsets you have, and to build them in (particularly for IDE and SATA) - building them all in might take too much space. But, your biggest problem in working from BLFS will be licenses - you are ok to build what is in BLFS, but some things may not be distributable (e.g. debian's recent decision to fork cdrecord because they think the two licenses on different parts of it are incompatible). Ken -- das eine Mal als Tragödie, das andere Mal als Farce -- http://linuxfromscratch.org/mailman/listinfo/blfs-support FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page
