PB6 - Partition 02

From Pandora's Box Hacking
Jump to navigation Jump to search

This is the meat and potatoes of the Pandora's Box's Linux system here. It's rather tiny and empty.

Basic Information
Partition 02
Partition Label: /home/zhang/e9b67d36-6f3c-4803-ba09-b8ed16586805
Partition File System: EXT3

File System
The first thing to note about the file system is that it is pretty close to empty. There is actually very little of interest here by default. Let's go from directory to directory mapping out what we find.
Also, be aware that just because a name means something generally in Linux does not mean it will mean the same thing to Chinese bootleggers who seem to enjoy trying to hide things as much as possible.

A version of Busybox which is symlinked to all sorts of standard OS commands can be found here. Busybox is a standard among embedded Linux users as a way to provide as much functionality as possible for as little space/RAM as possible.

A curious executable called haup is also sitting in /bin. We're not sure what it is used for, however it does contain the following path embedded within it: /usr/sd/ha210updata99. Seems likely that it is an executable meant for updating the ha210, whatever that may be?

Multiple copies of mplayer are also found under /bin. We aren't sure why there are so many but it is likely because each may be set to a different resolution. mplayer, mplayer0, mplayer1, mplayer2, mplayer3 are all here, as well as an executable called vp which seems to be yet another copy of mplayer but 3MB larger than the others. Not sure why that is either.

Usually populated at runtime, the only thing here on the SD card is an empty console device file, which is expected. Nothing odd here.

We have a default fstab file which Linux uses for mounting partitions normally, however this particular fstab has nothing in it for mounting anything other than the default /proc, /sys and other temporary file systems. Not of any use for us, nor should it be touched.

The hostname file contains nothing but hhh but as this box has no networking available, it is useless.

The profile file has nothing but a simple setting for the command prompt, nothing to be bothered with.

Within the init.d folder is rcS which is executed after the Linux kernel is running. Within it are some default PATH declarations, a call to set the hostname and then the call to run /usr/myinit, which starts up the Pandora's Box 6 software.

Under the full path of /home/zhang/mylibs/qt3_th/lib/fonts/, you can find the only file in this directory, fontdir, which is meant to set up directories to read fonts from and is entirely useless to us.

This is where you would usually find shared object files that other applications are linked to or depend upon in normal Linux systems, similar to DLLs in Windows systems. That's still the case for the Pandora's Box 6, however there does also appear to be a file that is different here, /lib/libdata.so, which appears to be opened for writing at some point.

Typically a place where files that are recovered from potential disk errors are found, this directory will be empty and useless on the Pandora's Box 6 as there are no file recovery programs on the SD card whatsoever.

/proc, /sys, /tmp
These directories are empty as they are only populated at runtime once the virtual filesystem is mounted from /etc/fstab. When the machine is running, these directories are populated with information about the currently running Linux system after myinit runs mount -a. Take a look at /proc populated at runtime.

This directory is meant for executables used in the administration of the Linux system. As we are using Busybox instead of the standard suite of Linux executables, there's nothing here except symlinks to Busybox. Nothing of importance here.

This is where you would normally find all the executables users would be running on a Linux system. Here on the Pandora's Box 6, you can find just a few files that are important for normal operation. Found at/usr/myinit is the second link in the bootup chain, myinit, which handles a few setup tasks before then handing over control to /usr/emu/emulotar. Emulotar sets up everything the frontend and emulators need in /tmp, then loops endlessly, restarting the frontend if something goes wrong or crashes.

Also found in /usr/emu/music/bg.mp3 is the default background music played when you are in the Settings menu which you can listen to below: