2

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 <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?

1

Download the Android Debug Bridge from here, and extract the contents (to the same directory).

Connect your device to your computer using the USB cable and open up a command prompt (Windows logo key + R, type cmd and press Enter).

Once that is open, type the following commands:

cd <entire path to adb.exe file>
adb shell
su

mount -o remount,rw /system 
# if previous doesn't work try:
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system

exit
exit

adb push <path to original file> /system.etc/vold.fstab
adb reboot

That will grant root, mount the system as writeable and then push the original file and overwrite the modified one (and reboot your device).

  • Why isn't this working ?? $ su su # mount -o remount,rw /system mount -o remount,rw /system Usage: mount [-r] [-w] [-o options] [-t type] device directory – aks Jul 7 '13 at 20:05
  • You have an outdated mound command installed. See the edit which will be up in 2 minutes or so :) – Liam W Jul 8 '13 at 15:37
  • 1
    i think the path is /system/etc/vold.fstab not sysmtem.etc but system/etc – user48843 Dec 20 '13 at 6:20
  • I'd remove all windows specific info (where to get adb) - it's not related to the problem... – pevik May 7 '15 at 8:57
0

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.

  1. Move your vold.fstab to C:\Program Files\Android\android-sdk\platform-tools or C:\Program Files (x86)\Android\android-sdk\platform-tools
  2. Go to the android-sdk folder, shift+right click on platform-tools and choose "Open command prompt here"
  3. Next steps depends if you have a custom rom (a) or not (b) (see comments).
  4. We take root privilege:
    • a) If your device is 4.0 or above, type adb root
    • b) Type adb shell then su
  5. We make /system writeable:
    • a) adb remount
    • b) mount -o remount,rw /system then exit
  6. adb push vold.fstab /system
  7. adb reboot

This should do the trick.

  • adb root will only work if 1. the device is running a custom ROM and 2. root to adb is allowed. – Liam W Jul 7 '13 at 19:22

protected by Community May 13 '14 at 12:46

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.