Charles Steinkuehler's LEAF/LRP Website

Home ] Up ] Contents ] Links ] Search ] Contribute ] Mirrors ] c0wz mirrror ] Support ]

bind-8 ] dhclient ] dhcpd ] dnscache ] Extended Scripts ] Hard Disk Addon ] ifconfig ] IPSec 1.91 ] LaBrea ] LCDProc ] [ LRP-CD ] mawk ] nmap ] RAID ] ramdisk ] sniffit ] thttpd ] Utilities ] webalizer ] weblet/sh-httpd ]



Experts ONLY!  LRP-CD is a slightly re-configured LRP system that allows package files to be loaded from a large read-only memory (like a CD-ROM), while configuration information is stored on a small writable media (floppy disk, flash disk, or similar).  This method will work with almost all standard LRP packages, as long as they store their configuraion information in the /etc directory.

WARNING - See the Dachstein-CD release for a much improved and updated version.


LRP-CD V1.1 20001109
File Protocol Speed Site
CD-IPSec-Img-V1.1.iso http Fast

LEAF Sourceforge site

CD-IPSec-Img-V1.1.iso http Slow Local download


Root.lrp with updated LRP-CD scripts

File Protocol Speed Site
root.lrp http Fast

LEAF Sourceforge site

root.lrp http Slow Local download


  1. Create an LRP boot disk using the kernel of your choice and the root.lrp package above.  You will probably need a kernel with IDE support to talk to your CD-ROM drive.  You can also load drivers needed to boot at run-time, without needing to compile them into the kernel (see the next step).  If you are lazy and don't want to customize your boot image, you can use the bootdisk.ima file above, which has an 8 meg ramdisk, uses /dev/fd0 for local config files, and expects to load packages off an IDE CD-ROM at /dev/hda (configurable for other devices with the pkgpath.cfg file on your floppy disk).
  2. Add any modules required to boot the system to /lib/bootmodules (for an IDE CD-ROM, you need cdrom.o, ide-cd.o, and isofs.o, which are already installed).
  3. Edit /lib/bootmodules/modules as required (the format is the same as /etc/modules) and backup root if you have made any changes.
  4. Edit syslinux.cfg as required for ramdisk size, boot device, and package path.  The boot device should be set to where your LOCAL configuration is stored, NOT the CD-ROM.  Set PKGPATH to point to the device(s) which contain your LRP files.
  5. Create an image file of your boot disk using rawread, winimage, dd, or similar.
  6. Create a bootable CD, using the image file you just created as the boot image.  Add whatever LRP files you want to load.  Don't forget to add the 'core' LRP files (etc, local, log, modules) so you can initially boot without a local configuration disk.  I used nero, and have also used cdrwin.  I have not been able to get Adaptec's EZ-CD to make bootable LRP CD's (at least on NT...it might work on 95/98).
  7. The file pkgpath.cfg can be added to your local configuration disk to override the PKGPATH= setting burned onto the CD.
  8. The file lrpkg.cfg can be added to your local configuration disk to override the lrp= setting burned onto the CD. 



  1. See the readme file for current information, although I think everything listed here is still correct.  The readme file covers the somewhat easier option of using the CD image file (assuming you have Nero).  NOTE:  An ISO image is now available for folks who don't run nero.
  2. Do not attempt this if you are not already very familiar with LRP...this setup is not recommended for beginners (yet).  I hope to change some things to make CD-booting easier and more flexable (and fix any bugs that may show up).  If I get this done, I will try to provide documentation so anyone can boot LRP from a CD.
  3. You do not need special LRP packages to run them from CD-ROM, just use the same LRP files you would put on a floppy or any other device.  As long as the package saves all it's important configuration data in /etc, the new backup scripts will archive just the configuration data on your floppy.  If a package puts config data outside /etc, you will either need to modify the package so all config files are in /etc  or rework the LPR packaging scripts.  NOTE: You can move config files to /etc and use symbolic links in their original location, but remember to add the new /etc files to the <package>.list file in /var/lib/lrpkg
  4. The pkgpath.cfg and lrpkg.cfg files should be a single line, containing only the arguments you would normally put on the kernel command line (ie: do not put PKGPATH= or LRP= into the file, just a list of values seperated by commas).
  5. The boot= kernel parameter specifies where LRP loads local configuration information
  6. The PKGPATH= kernel parameter specifies where to find packages (in addition to the boot device).  You can now specify a filesystem (<device>:<filesystem>), as well as a device.  If no filesystems are specified, all filesystems are tried.  Multiple devices can be specified separated by commas.  The kernel command line argument is overridden by the contents of the file 'pkgpath.cfg' if it exists on the boot device.  The entries in PKGPATH should be from 'most authoritative' to 'least authoritative'.  For example, if you had a Company wide CD you were pulling packages from, and a hard-disk that has some packages you made for your department (including modified versions of some of the packages on the CD-ROM), you would put the hard-drive first, and the CD second: PKGPATH=/dev/hda:ext2,/dev/hdb:iso9660
  7. Extended PKGPATH format to specify filesystem type:
  8. The LRP= kernel parameter works as usual to specify which packages to load, but it can be overridden by the contents of the file 'lrpkg.cfg' if it exists on the boot device.
  9. To see what has changed, take a look at the following commands (and probably a few other things I'm forgetting right now):
  10. I suggest you start off using CD-RW disks, until you verify you can create a working system.


  1. Modify backup system to use <package>.conf file for a list of files to archive
  2. Make scripts compatible with standard LRP
  3. Merge in updated POSIXness scripts (esp mail script)
  4. Move boot modules to /lib/modules/boot/ or /lib/modules/<version>-boot/


12/13/00  14:22         <DIR>    LRP-CD-20001109/CD-Contents

-r-xr-xr-x   1 cstein   users     1474560 Dec 13 14:02 bootdisk.ima
-r-xr-xr-x   1 cstein   users       48404 Dec 13 14:02 bwidth22.lrp
-r-xr-xr-x   1 cstein   users       44228 Dec 13 14:02 dhcpd.lrp
-r-xr-xr-x   1 cstein   users       46118 Dec 13 14:00 etc.lrp
-r-xr-xr-x   1 cstein   users      322844 Dec 13 14:00 ipsec.lrp
-r-xr-xr-x   1 cstein   users         493 Dec 13 14:02 local.lrp
-r-xr-xr-x   1 cstein   users         628 Dec 13 14:02 log.lrp
-r-xr-xr-x   1 cstein   users       94610 Dec 13 14:02 modules.lrp
-r-xr-xr-x   1 cstein   users      208300 Dec 13 14:03 nmbd-207.lrp
-r-xr-xr-x   1 cstein   users        8222 Dec 13 14:03 ramdisk.lrp
-r-xr-xr-x   1 cstein   users      762394 Dec 13 14:04 root.lrp
-r-xr-xr-x   1 cstein   users      114207 Dec 13 14:04 snmp.lrp
-r-xr-xr-x   1 cstein   users      353020 Dec 13 14:04 socks5-c.lrp
-r-xr-xr-x   1 cstein   users       55491 Dec 13 14:04 socks5.lrp
-r-xr-xr-x   1 cstein   users      193055 Dec 13 14:05 ssh-1.lrp
-r-xr-xr-x   1 cstein   users       98017 Dec 13 14:05 ssh1-key.lrp
-r-xr-xr-x   1 cstein   users      102628 Dec 13 14:05 sshd-1.lrp
-r-xr-xr-x   1 cstein   users        7300 Dec 13 14:05 update.lrp


Added ISO image for folks who don't run nero.
Version 1.1 and some documentation available.


  • The modified shell scripts are their own source code...

Local Web Statistics
Send feedback about this web site.
Last modified: December 04, 2001