You sir, are a very good man indeed. The frustration of writing and debugging a script in bash, only to find that busybox's ash just doesn't know what to do with it is considerable. This is a much better alternative than learning the bourne shell. Thank you

xueyou2: Do not touch the root filesystem if you don't know what you are doing.

Better stay in the document partition and install there. Just put the binaries somewhere and point the dynamic linker to where your libraries are (if the binary comes with any) via LD_LIBRARY_PATH environment setting.

xueyou2: Do not touch the root filesystem if you don't know what you are doing.

Better stay in the document partition and install there. Just put the binaries somewhere and point the dynamic linker to where your libraries are (if the binary comes with any) via LD_LIBRARY_PATH environment setting.

Even IF you know what you are doing, there are still some rules you need to follow:

You can "temporarily merge" things into the root fs using a "bind mount", which temporarily "replaces" a file on root with a file on mmc. See how I do that to replace /usr/lib/libc.so in my "tccmake" script used in my "simple tcc guide" thread.

Also, adding additional symlinks to root that point to files on /mnt/us is generally safe, but DO NOT link files into /etc/upstart until they are fully tested. An upstart script that returns error status can prevent OTHER critical scripts from loading during startup. And beware that symlinks are permanent, unlike bind mounts.

The IMPORTANT thing is to not use significant space on the root fs, which may be needed for firmware updates.

Unsafe changes to the root fs can brick your kindle (but we know how to fix that -- just rewrite the root fs partition).

Even IF you know what you are doing, there are still some rules you need to follow:

You can "temporarily merge" things into the root fs using a "bind mount", which temporarily "replaces" a file on root with a file on mmc. See how I do that to replace /usr/lib/libc.so in my "tccmake" script using in my "simple tcc guide" thread.

Also, adding additional symlinks to root that point to files on /mnt/us is generally safe, but DO NOT link files into /etc/upstart until they are fully tested. An upstart script that returns error status can prevent OTHER critical scripts from loading during startup. And beware that symlinks are permanent, unlike bind mounts.

The IMPORTANT thing is to not use significant space on the root fs, which may be needed for firmware updates.

Unsafe changes to the root fs can brick your kindle (but we know how to fix that -- just rewrite the root fs partition).

I feel powerful because of 'but we know how to fix that'.
But I find that I need to study linux first .Then ....
Thank you for help.

You do not replace anything. Just run bash and it opens up a bash shell inside the busybox ash shell, in the same terminal window. If you type "exit" you leave bash and are back in busybox.

What I want is to run my custom scripts with bash instead of busybox... What should I do for this? just make a symbolic link from this bash to /bin/bash (which already exists and is a symbolic link to busybox)?

Edit: I did the above thing and then ran this code just to check I'm actually using bash not busybox.