Quote from Puppy forum on repairing a disk partition-
Begin Linux Partition Repair
If it is a Linux partition, reboot from Lighthouse 5 CD entering safe <Enter> at the boot menu. (safe is the same as debug pfix=ram,fsck,nox,nocopy)
Type df -h to locate your boot partition (the partition where your Lighthouse files are.) Let's say it's /dev/sda2 and df -h indicates it has at least 800M available.
Type umount -l /mnt/sda2 (that's -l as in Lazy)
Type mount <Enter> to verify it unmounted (sda2 not listed by mount is what you want to see.)
Type e2fsck -vfy /dev/sda2 (if it's a reiserfs, type reiserfsck /dev/sda2)
Type e2fsck -vy /dev/sda2 " "
Repeat last step until output is clean.
Type resize2fs -pf /dev/sda2
At the boot menu enter puppy pfix=ram,fsck,nocopy
Once in X Find Menu | System | File System | Muppy Quickmount
Select a partition and click unmount
Select the same partition and click Repair
Repeat last two steps for all Linux partitions except the swap partition.
Reboot entering fn at the boot menu (same as pfix=fsck,nocopy)
If everything is normal, reboot normally.
(That was complicated by not being able to run X. If X starts, just the last section will usually suffice.)
End Linux Repair
forum discussion on repairing partitions