#!/bin/bash # modify yours. OBJDUMP=powerpc-linux-objdump if [ -z $1 ]; then echo "usage: $0 zvmlinux_filename" exit 1; fi FILE=$1 OFFSET=`$OBJDUMP -h $FILE | grep initrd | grep -v zvmlinux| awk '{print $6}'` SIZE=`$OBJDUMP -h $FILE | grep initrd | grep -v zvmlinux| awk '{print $3}'` DECOFFSET=`printf "%d" "0x"$OFFSET` DECSIZE=`printf "%d" "0x"$SIZE` echo OFFSET $DECOFFSET echo SIZE $DECSIZE BOTTOM=`expr $DECOFFSET + $DECSIZE` echo BOTTOM $BOTTOM echo --- extract --- head -c $BOTTOM $FILE | tail -c $DECSIZE - > ramdisk.image.gz # dd bs=1 skip=$DECOFFSET count=$DECSIZE if=$FILE of=ramdisk.image.gz echo --- done ---