I want to
for the 2.6.30.5 kernel . Halelulia !
Just booted frugally and got me without problems intel_drv.so on Xorg while all later kernels give me Xorg vesa_drv.so only .
*
Only issue : ext4 !!
Code: Select all
# diff -up /initrd/mnt/dev_ro2/JUMP-2/NewDir/NeuesVerzeichnis/initrd.d/sbin/probepart_init /initrd/mnt/dev_ro2/JUMP-2/Macpup_F3-initrd-ext4.d/sbin/probepart_init
--- /initrd/mnt/dev_ro2/JUMP-2/NewDir/NeuesVerzeichnis/initrd.d/sbin/probepart_init 2012-08-13 01:23:30.293326202 +0800
+++ /initrd/mnt/dev_ro2/JUMP-2/Macpup_F3-initrd-ext4.d/sbin/probepart_init 2012-09-21 01:52:00.382723705 +0800
@@ -41,10 +41,12 @@ do
DEVICE="$ONEDEV"
case $DEVICE in
hd*)
- [ "`cat /proc/ide/$DEVICE/media`" = "cdrom" ] && FSTYPE="iso9660"
+ [ "`cat /proc/ide/$DEVICE/media`" = "cdrom" ] && FSTYPE="`guess_fstype /dev/$DEVICE 2>/dev/null`"
+ #FSTYPE="iso9660"
;;
scd*|sr*) #usb,sata,scsi cd/dvd drive.
- FSTYPE="iso9660"
+ FSTYPE="`guess_fstype /dev/$DEVICE 2>/dev/null`"
+ #FSTYPE="iso9660"
;;
esac
#for hd* or sd* superfloppy, determine size...
@@ -61,8 +63,11 @@ do
if [ "$FSTYPE" = "unknown" ];then
fsPATTERN='^/dev/'"$DEVICE"' '
xDEVICE="`echo -n "$DEVICE" | sed -e 's/[0-9]*$//'`" #"${DEVICE/[0-9]/}" #remove partition number.
- xFSTYPE="`fdisk -l /dev/$xDEVICE 2>/dev/null | grep "$fsPATTERN" | head -n 1 | grep -o -E 'FAT12$|FAT16$|FAT32$'`"
- [ "$xFSTYPE" != "" ] && FSTYPE='vfat'
+ xFSTYPE=`fdisk -l /dev/$xDEVICE 2>/dev/null | grep "$fsPATTERN" | head -n 1 | grep -o -E "FAT12$|FAT16$|FAT32$|swap|Ext'd|Extended"`
+ #[ "$xFSTYPE" != "" ] && FSTYPE='vfat'
+ [ "`echo "$xFSTYPE" | grep -i 'fat'`" != "" ] && FSTYPE='vfat'
+ [ "`echo "$xFSTYPE" | grep -i 'swap'`" != "" ] && FSTYPE='swap'
+ [ "`echo "$xFSTYPE" | grep -E "Extended|Ext'd"`" != "" ] && FSTYPE='extended' #'geany
fi
#for compatibility with old probepart from antonio gallo...
#
Code: Select all
# diff -up /initrd/mnt/dev_ro2/JUMP-2/NewDir/NeuesVerzeichnis/initrd.d/init /initrd/mnt/dev_ro2/JUMP-2/Macpup_F3-initrd-ext4.d/init
--- /initrd/mnt/dev_ro2/JUMP-2/NewDir/NeuesVerzeichnis/initrd.d/init 2012-08-13 01:23:30.309992872 +0800
+++ /initrd/mnt/dev_ro2/JUMP-2/Macpup_F3-initrd-ext4.d/init 2012-09-21 02:09:38.479307202 +0800
@@ -378,7 +378,7 @@ check_status 0 #END STEP ONE
echo -n "Searching for Puppy files in computer disk drives..." > /dev/console #STEP TWO
#locate all partitions (and superfloppy drives)...
PCPARTSALL="`probepart_init -k`"
-PCPARTS0="`echo "$PCPARTSALL" | grep '^/dev/' | cut -f 1-2 -d '|' | grep -E 'iso9660|ext2|ext3|reiserfs|msdos|vfat|minix|ntfs' | sed -e 's/\/dev\///g'`"
+PCPARTS0="`echo "$PCPARTSALL" | grep '^/dev/' | cut -f 1-2 -d '|' | grep -vE "none|unknown|swap|Ext'd|Extended" | sed -e 's/\/dev\///g'`" #'geany
PCPARTS="`echo "$PCPARTS0" | tr "\n" " "`" #note, will have a space char on end.
#want separate lists of all internal (fast) partitions, and slow (usb) partitions...
@@ -441,12 +441,12 @@ do
fi
[ -f /mnt/data/etc/puppyversion ] && FND_FULLINSTALL="/etc/puppyversion" #pre-w464 installations.
[ -f /mnt/data/etc/DISTRO_SPECS ] && FND_FULLINSTALL="/etc/DISTRO_SPECS"
- FND_INITRDGZ="`find /mnt/data -maxdepth 2 -xdev -type f -name initrd.gz | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`"
+ FND_INITRDGZ=`find /mnt/data -maxdepth 3 -xdev -type f \( -name initrd.gz -o -iname "*pup*initrd*.gz*" \) | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`
#v3.01 '*' means zero or more extra characters. this is for custom naming...
- FND_PUPXXXSFS="`find /mnt/data -maxdepth 2 -xdev -type f -name ${DISTRO_FILE_PREFIX}-${DISTRO_VERSION}.sfs | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`"
- FND_ZDRVSFS="`find /mnt/data -maxdepth 2 -xdev -type f -name ${ZDRVSFS} | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`"
- FND_PUPSAVE2FS="`find /mnt/data -maxdepth 2 -xdev -type f -name ${DISTRO_FILE_PREFIX}save*.[23]fs | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`"
- FND_SWAPFILEPUP="`find /mnt/data -maxdepth 2 -xdev -type f -name pupswap.swp | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`"
+ FND_PUPXXXSFS="`find /mnt/data -maxdepth 3 -xdev -type f -name ${DISTRO_FILE_PREFIX}-${DISTRO_VERSION}.sfs | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`"
+ FND_ZDRVSFS="`find /mnt/data -maxdepth 3 -xdev -type f -name ${ZDRVSFS} | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`"
+ FND_PUPSAVE2FS="`find /mnt/data -maxdepth 3 -xdev -type f -name ${DISTRO_FILE_PREFIX}save*.[23]fs | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`"
+ FND_SWAPFILEPUP="`find /mnt/data -maxdepth 3 -xdev -type f -name pupswap.swp | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`"
#v2.22 improved folder name search, avoid false hits...
FND_MULTIFOLDER="`find /mnt/data -maxdepth 1 -xdev -type d -name 20[0-9][0-9]-[0-9][0-9]-[0-9][0-9]-[0-9][0-9]-[0-9][0-9] | grep -v ' ' | sed -e 's%^/mnt/data%%g' | tr '\n' ' '`"
[ "$FND_MULTIFOLDER" != "" ] && echo "$ONEDEV $ONEFS $FND_MULTIFOLDER" >> /tmp/MULTIFOLDERS
#
Added search -maxdepth 3 and for -iname "*pup*initrd*.gz*" .
EDIT: rc.shutdown needs adjustments too :
Code: Select all
PARTSLIST=`probepart -m 2> /dev/null | grep '^/dev/' | grep --extended-regexp 'ext[0-9]|jfs|xfs|reiser|minix|msdos|vfat|ntfs' | cut -f 1-3 -d '|' | sed -e 's/msdos/vfat/g'`
#~
if [ "`echo -n "$xDEVFS" | grep --extended-regexp "ext[0-9]|xfs|jfs|reiser|minix"`" != "" ];then
dialog --extra-button --ok-label "SAVE TO A FILE"
BTW : have kernel 3.4.9 running with switch_root of old busybox-1.4.2 and find of busybox-1.18.3 cos find binary wont work anymore in initrd.gz but switch_root of newer BB complains about PID 1 being sh .
modprobe-FULL needs depmod-FULL files .
If configured with DEVTMPFS then in frugal/live mode the kernel's not able to maintain the /dev directory across until top layer and it needs to be mounted manually in rc.sysinit another time .
Have also configured aufs inside the kernel:
#[ "`modinfo aufs 2>/dev/null`" ] || LAYERFS=unionfs #precaution. in rc.sysinit and /init .