How do I create symlink to a directory on external SD-card? Do I have to edit /etc/passwd and add user or root to the sdcard_r group--since, I see that the /storage/ location is owned by sdcard_r? Do I have to change the partition type, ie filesystem of the external sd-card?

I've searched through the previously-asked questions, as well as google-search about the ln function in busybox; however, I'm not able to figure out why I keep getting an error creating link failed File already exists when I try to run ln -s /storage/sdcard1/original_dir/ /storage/sdcard0/DCIM/sym_dir .

I have root privileges and, as far as I can tell, /storage/& sdcard1 are not symlinks themselves. I appreciate any and all helpful comments. Thanks.

  • If the source directory is on a FAT filesystem then that may be the cause of the error (although I would expect a different message); FAT16/32 do not support symlinking. Apr 27, 2013 at 22:46
  • thanks for the response, eldar; what would you recommend for the partition fs of the external-sd card? ext2, ext3, ext4? Just wondering how the kernel on jelly-bean, or android in general, handles these other types of filesystems--do u have any personal experience/observations with this? Thanks again :)
    – ILMostro_7
    Apr 28, 2013 at 4:23
  • What device do you have? Some of the more modern devices will still have the internal and external sdcards formatted as either FAT32 or ExFAT. This is what allows you to use USB Mass Storage on most computers as those formats are relatively universal (FAT32 is, ExFAT is debatable). Formatting these to other formats may cause issues on the computer, and some phones would require you to change the fstab to properly mount these new partition types and that is usually part of the RAMdisk, which isn't easily editable. Also, are you rooted on a stock ROM or running a custom ROM and if so, which one? Apr 28, 2013 at 5:22
  • I have a 9-inch Lenovo IdeaPad Tablet (A2109) with Android version 4.1.1 (jellybean); Kernel version 3.1.10. I have root privileges (superuser) as well as ClockWorkMod installed. The external card is a 32GB card that "was" partitioned as FAT32, though I'm in the process right now to shrink that initial partition down to ~10GB and creating a second parition as ext2--since I'm not sure that this Kernel version and/or Android System would fully support ext4. The only thing that resembles an "fstab" file is the /etc/vold.fstab file that seems to have similar/same contents that one would expect.
    – ILMostro_7
    Apr 28, 2013 at 8:44

1 Answer 1


The rootfs (/) as well as /system have to be mounted with rw permissions.

So, to check for that execute # mount |grep -i rootfs and # mount |grep -i '/system'

If you don't see rw for the permissions, do # mount -o remount,rw / and/or # mount -o remount,rw /system

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .