I modified vold.fstab and lost access to my SD card Background:

I have Samsung Galaxy Ace GT-S5830, which has very low internal memory (181 MB).
I have an external micro SD card of 16 GB, but still couldn't install many apps due to insufficient internal memory.

I read on the Internet that if I modify vold.fstab and replace the word "sdcard" with "sdcard2" then my external SD card will act as internal memory.

So I rooted my phone and installed Superuser, but I haven't installed ClockworkMod recovery or any other custom ROM yet.

Problem Description:

I installed ES File explorer on my SD card and allowed root access to it via Superuser.
I then went to /system/etc/ from ES file explorer, edited vold.fstab and replaced the word sdcard with sdcard2.

When I restarted my phone the external SD was no longer accessible. ES File Explorer is also gone, so I cannot undo the change that i did. I tried installing ES again from my data connection, but the installation fails (and the phone reboots immediately). I am not able to install any new apps. 

I am unable to access my external SD card, so I can't put anything there via PC or via recovery. I tried pressing the power button + home button to go into system recovery mode. I see only these options


  Android system recovery &lt;3e>
  
  
  reboot system now    
  apply sdcard:update.zip    
  wipe data/factory reset
  wipe cache partition
  


When I try to select the second option, it says "installation aborted" as the SD card is not accessible. I tried to select the 3rd and 4th options, but that didn't help either - I think factory reset will not reset vold.fstab.

I only have the default apps and Superuser now. I somehow need to find a way to get write permission to /system/etc or to /system/etc/vold.fstab.

Luckily I found "Android Commander". I installed it on my Windows PC and I am able to connect my phone and access the root folder, but I am not able to push a modified vold.fstab to /system/etc because  Android Commander says "no Root Access" - It is seeing it as read only.

Can someone let me know how I can edit this file again? I have an original vold.fstab on my PC, but I am not able to push it to my phone via Android Commander as Android Commander is seeing it as read only

Is there a way to give root access (aka read-write access) to Android Commander via the Superuser app?

Is there any other way to get write permission to /system/etc/vold.fstab so that I can modify it or replace it?
I don't know about Android Commander, but a simpler way (in my opinion) would be to use ADB. You may have already installed the Android SDK (if not, go here). I assume that you don't have modified your System Path.


Move your vold.fstab to C:\Program Files\Android\android-sdk\platform-tools or C:\Program Files (x86)\Android\android-sdk\platform-tools
Go to the android-sdk folder, shift+right click on platform-tools and choose "Open command prompt here"
Next steps depends if you have a custom rom (a) or not (b) (see comments).
We take root privilege:

a) If your device is 4.0 or above, type adb root
b) Type adb shell then su

We make /system writeable:

a) adb remount
b) mount -o remount,rw /system then exit

adb push vold.fstab /system
adb reboot


This should do the trick.