[Android Software/Hacking General [Developers Only]] stragulus:
I wonder if it's possible to repartition the partitions on the internal flash memory? When poking around in a root shell, I found that there's a partition "/local" that consumes 512MB. And all it contains is a single binary "aiding.bin" that's 4K big. It seems like such a waste of space, if it could be added to /data we'd have 512MB extra internal storage available.

I like poking around in the shell, having a unix/linux background myself. For those who like this too, it helps to create a set of symlinks to busybox so that most default unix commands are available. I took the output of the 'busybox' command and reformatted it into 3 for-loops that set all the symlinks. I executed the following:

# login
adb shell
# become root (you might have to accept permissions on tablet)
su
# start a more userfriendly shell
exec busybox ash
# mount /system RW
mount -w -o remount -t yaffs2 /dev/block/mtdblock3 /system
# create all the symlinks. Split up in multiple command lines, to work around a max cmdline length limit
cd /system/bin

for cmd in adjtimex ar arp arping ash awk beep blkid brctl bunzip2 bzcat bzip2 cal cat catv chat chattr chgrp chmod chown chpasswd chpst chrt chvt cksum clear cmp comm cp cpio crond crontab cryptpw cttyhack cut date dc dd deallocvt depmod devmem df diff dmesg dnsd dnsdomainname dos2unix du dumpkmap echo ed egrep eject env envdir envuidgid ether-wake expand expr fakeidentd false fbset fbsplash fdflush fdformat fdisk fgrep findfs fold free freeramdisk fsck fsck.minix fsync ftpd fuser getopt grep halt hd hdparm head hexdump hostid hostname hush hwclock id ifconfig ifdown ifenslave ifplugd ifup inetd init insmod install ionice ip ipcrm ; do test -f "$cmd" || ln -s busybox "$cmd" ; done

for cmd in ipcs kbd_mode klogd last length less linux32 linux64 linuxrc ln loadfont loadkmap logname logread losetup lpd lpq lpr ls lsattr lsmod lzmacat lzop lzopcat makedevs makemime man md5sum mdev mesg microcom mkdir mkdosfs mkfifo mkfs.minix mkfs.vfat mknod mkpasswd mkswap mktemp modprobe more mount mountpoint msh mt mv netstat nice nmeter nohup nslookup od openvt patch pgrep pidof ping pipe_progress pivot_root pkill popmaildir poweroff printenv printf ps pwd raidautorun rdate rdev readahead readlink readprofile realpath reboot reformime renice reset resize rm rmdir rmmod route rtcwake run-parts runlevel runsv runsvdir rx ; do test -f "$cmd" || ln -s busybox "$cmd" ; done

for cmd in script scriptreplay sed seq setarch setconsole setfont setkeycodes setlogcons setsid setuidgid sh sha1sum sha256sum sha512sum showkey sleep softlimit sort split stat strings stty sum sv svlogd swapoff swapon switch_root sync sysctl syslogd tac tail tar tcpsvd tee telnet telnetd test tftp tftpd time timeout touch tr true tty ttysize umount uname uncompress unexpand uniq unix2dos unlzma unlzop uptime usleep uudecode uuencode vi vlock volname watch watchdog wc wget which ; do test -f "$cmd" || ln -s busybox "$cmd" ; done

# remount /system RO
mount -r -o remount -t yaffs2 /dev/block/mtdblock3 /system

And now you can wget files, use tar, less, etc. It's almost a usable linux machine now :D

The dmesg log also shows some curious information, e.g. I see this message repeated quite often: