No, you don't need to create any directories. I don't have my Dingoo with me at the moment but if I recall removing "/sbin/" from the commands in the three shell scripts (*.sh) should do the trick, e.g.:
mkswap ../../.swap
swapon ../../.swap
swapoff ../../.swap
First, make sure your 'main' file (X:\local\sbin\main) contains something like this:
#!/bin/sh
export HOME=/usr/local/home
export SDL_NOMOUSE=1
export TZ=VST
export PATH=$PATH:/usr/local/sbin:/usr/local/bin
renice 20 `pidof mmcqd`
cd /usr/local/gmenu2x/scripts
./swapon.sh
cd /usr/local/gmenu2x
./gmenu2x
The 'export PATH' command is important because it will allow you to execute mkswap/swapon/swapoff from any directory. The 'renice' command reduces the priority of the mmcqd process since a previous poster mentioned it introduces an overhead in Dingux. You should also change the TZ environment variable to your local timezone (see
this page).
Assuming you placed the scripts in the default location, 'main' will also turn on your .swap whenever you boot Dingux (it appears /usr is symlinked to /boot ?). I think part of the confusion is that there are actually two sbin directories: /sbin (root) and /boot/local/sbin (memory card). The mkswap, swapon, and swapoff binaries are in root, not in the local pack that you copied to your memory card. Keep in mind that X:\local\ on your PC is actually /boot/local in Dingux, so the path to the .swap file should be /boot/local/.swap. This means that when you execute /boot/local/gmenu2x/scripts/swapon.sh, for example, and it includes the command 'swapon ../../.swap', Dingux will look for the .swap file relative to the directory in which the script is executed, so ../../.swap => two directories up => /boot/local/.swap (equivalent to X:\local\.swap)