Below is a little script to mount and extract an image in a way that will
allow for editing and repackaging of the lrp modules.

It uses tmp files but eventually creates (replaces) a directory called
lrp-super, which contains a directory for each lrp module and the root
filesystem per the package below it. (see the second find output below)

I plan to borrow some code from lrcfg to repackage and add some new code 
to manage the other critical files and reconstruct the image.

I wanted to post this now for comments. Here is an example of the
(extend image) command line usage and the nature of the result.

$ extimg ../orig/Bering_1.0-rc3_img_bering_1680.bin
$ find lrp-super/ -type d -maxdepth 2 | sort
lrp-super/
lrp-super/bridge
lrp-super/bridge/etc
lrp-super/bridge/usr
lrp-super/bridge/var
lrp-super/dhcpd
lrp-super/dhcpd/etc
lrp-super/dhcpd/usr
lrp-super/dhcpd/var
lrp-super/dnscache
lrp-super/dnscache/etc
lrp-super/dnscache/usr
lrp-super/dnscache/var
lrp-super/etc
lrp-super/etc/etc
lrp-super/etc/var
lrp-super/keyboard
lrp-super/keyboard/etc
lrp-super/keyboard/usr
lrp-super/keyboard/var
lrp-super/local
lrp-super/local/usr
lrp-super/local/var
lrp-super/log
lrp-super/log/var
lrp-super/modules
lrp-super/modules/etc
lrp-super/modules/lib
lrp-super/modules/var
lrp-super/ppp
lrp-super/ppp/etc
lrp-super/pppoe
lrp-super/pppoe/etc
lrp-super/pppoe/usr
lrp-super/pppoe/var
lrp-super/ppp/usr
lrp-super/ppp/var
lrp-super/pump
lrp-super/pump/etc
lrp-super/pump/sbin
lrp-super/pump/var
lrp-super/root
lrp-super/root/bin
lrp-super/root/initrd
lrp-super/root/lib
lrp-super/root/root
lrp-super/root/sbin
lrp-super/root/usr
lrp-super/root/var
lrp-super/shorwall
lrp-super/shorwall/etc
lrp-super/shorwall/sbin
lrp-super/shorwall/var
lrp-super/tc
lrp-super/tc/sbin
lrp-super/tc/var
lrp-super/weblet
lrp-super/weblet/etc
lrp-super/weblet/usr
lrp-super/weblet/var


#!/bin/sh

[ -z $1 ] && echo 'Supply image file to mount and extract' && exit
[ -z '`du $1 | grep 1688`' ] && echo 'Supply image file to mount and extract' && exit

s=`date +%s`
mnt='lrp-mnt-'$s
mkdir $mnt

super='lrp-super-'$s
mkdir $super

mount -oloop $1 $mnt

cd $super
pkgs=`ls ../$mnt/*lrp | sed -e 's/^.*initrd.lrp//'`
for pkg in $pkgs ; do
        name=`echo $pkg | sed -e 's/^.*\///' -e 's/.lrp$//'`
        mkdir $name
        cd $name
        tar xzf ../$pkg
        cd ../
done
cd ..
rm -rf lrp-super
mv $super lrp-super
umount $mnt ; rm -rf $mnt
exit 0


// George

-- 
GEORGE GEORGALIS, System Admin/Architect    cell: 347-451-8229 
Security Services, Web, Mail,            mailto:[EMAIL PROTECTED] 
File, Print, DB and DNS Servers.       http://www.galis.org/george 



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf

_______________________________________________
Leaf-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/leaf-devel

Reply via email to