yashsingh1/xdaforums huggingface dataset:
[Android Apps and Games] wm.puig:
That was exactly my situation, as documented earlier in this thread. The ROM in my tablet, while the best (IMO) available for the device, is a non-standard one w/o init.d support. I only explored using Autostart when it became clear that no other options were available on my device.

Totally agree. I use Link2SD with the Autostart workaround only to link non-essential apps - like games, or utilities that I use infrequently. System apps and widgets should NOT be linked using this approach.
[Android Apps and Games] scull11:
okay after reboot the apps will be lost,then we make only a quick reboot with Link2SD options and there apps comes back and visible ^^ thx all for help

I hope its comes a better solution for this problem to fix it
[Android Apps and Games] denzel09:
Hi,, i have now update my samsung galaxy MINI to gingerbread from samfirmware and now the second partition can not be mounted anymore to boot. Link2sd says always: What is file system of second partition and so on.. (Sorry for my English) instead before with froyo 2.2.1 link2sd worked always amazing.

Now anymore, always ask me the file system of second partition, then restart, then i open the program and again the same question..

I don't know what is the problem,, can it be fixed in some way??

Thank you so much ;)

Edit: this is the problem

http://xdaforums.com/showpost.php?p=14325011&postcount=249

How fix if install recovery is disable in init.rc?
[Android Apps and Games] bolaman42:
Error: mount: Invalid argument on Motorola Charm

Hi guys, so I've been waiting for my new 32G card to come in the mail for a week now, anxiously wanting to partition it and move some apps with Link2SD. I didn't even want to try it first on a smaller card because I didn't want to bother with partitioning my only other card. Turns out I should have, because now that I finally got my large card I can't get Link2Sd to work. UGH!

So, after reading as much of this long thread as I could, I believe that the issue may be with the phone itself, which I believe has a locked bootloader. I have a Motorola Charm running Android 2.1 Update 1. My research pre-rooting told me that the bootloader is locked. Is that the same as the /system file being read only? If this is the case, is there a workaround that a noob like me could try to follow to get link2sd to work? I would really love to use this app.

Let me know if you need the mount output or anything. It's too late in the night (early in the morning), for me to go to the trouble of copying text from my terminal app and putting it on my card and transferring it to my computer and posting it here, but if it would help I can do so tomorrow. If it helps I seem to remember that all of the files except for /system has a 'rw' next to them, which I assume means 'read/write'. Only the /system file had 'ro' (read-only?). Remember, I'm quite a noob at all this so if you want me to run any commands it's best to spell them out. So sorry that this post is rambling. It's getting late. Looking forward to figuring it all out. Thanks!
[Android Apps and Games] MongooseHelix:
What type of filesystem are you using for the second partition? The "invalid argument" error can occur for partitions formatted as one of the ext types if not supported by the ROM/kernel. So make sure to create your second partition as fat32 if it isn't already. Next, let me know what output you get from the following in a terminal emulator:

mount
ls /dev/block/vold
ls /dev/block

You can also see if you're able to mount the system partition as read/write manually. From the mount command above, notice what # of mtdblock# is associated with /system (from the little bit I looked, it might be mtdblock7 for the Charm). Now try to remount /system as read/write making sure to substitute the appropriate # in the following:

mount -o remount,rw -t yaffs2 /dev/block/mtdblock# /system
mount

Hopefully, /system will have changed from ro -> rw. In that case, try running Link2SD again to see if you get the same error or not. If a mount script still isn't able to be created, we'll see if we can successfully mount the second partition manually using the info from the output of the commands I had you run.
[Android Apps and Games] MongooseHelix:
Check out this post where both wm.puig and scull11 describe using the Autostart app as a workaround since they had no other way of mounting their second partition automatically.
[Android Apps and Games] denzel09:
I have installed autostart, but there is not icon and i don't know how open the program,, not less important, in market i don't found this application, i have take it from pc and so on.. something is wrong.

The application is installed but not compare, always... i don't know

Edit: nothing, doesn't work. not good for me, it was a great piece of software :(

Edit2: Works! But only with the same script make by link2sd in installrecovery, both fat32 and ext2 or ext3

Edit3: another problem, mount works good now but applications disappear. I have read in previous post that problem is because the "delay" of autostart in boot process than the rc scripts.

Also reinstalling the applications, also booting more and more times, also reinstalling applications after more boot, doesn't solve the problem. Nothing..

Is there or will there a fix next in future? I love this software...

thank you so much for help buddy ;)
[Android Apps and Games] fishears:
You don't lnow what this is.
[Android Apps and Games] bolaman42:
Thank you so much for the rapid response! I followed your response in my terminal (didn't know that I could email the results to myself, quite a time-saver!). Also, I then ran the mount command, with mtdblock7, as you correctly guessed. I believe that it worked, and my /system is now rw. I also noticed for the first time, as you'll see, that my rootfs folder is ro as well. So after I saw that /system was rw, I tried link2sd again, no luck. I restarted and again, no luck. Hopefully I can follow whatever step is next. Thanks again! Here's the code:

export PATH=/data/local/bin:$PATH

$ $ su

# mount

rootfs / rootfs ro 0 0

tmpfs /dev tmpfs rw,mode=755 0 0

devpts /dev/pts devpts rw,mode=600 0 0

proc /proc proc rw 0 0

sysfs /sys sysfs rw 0 0

tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0

/dev/block/mtdblock7 /system yaffs2 ro 0 0

/dev/block/mtdblock9 /data yaffs2 rw,nosuid,nodev 0 0

/dev/block/mtdblock8 /cache yaffs2 rw,nosuid,nodev 0 0

/dev/block/mtdblock6 /cdrom yaffs2 rw 0 0

tmpfs /tmp tmpfs rw,size=2048k 0 0

/dev/block/mtdblock0 /pds yaffs2 rw,nosuid,nodev 0 0

/sys/kernel/debug /sys/kernel/debug debugfs rw 0 0

/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0

# ls /dev/block/vold

179:2

179:1

179:0

# ls /dev/block

vold

mtdblock10

mtdblock9

mtdblock8

mtdblock7

mtdblock6

mtdblock5

mtdblock4

mtdblock3

mtdblock2

mtdblock1

mtdblock0

loop7

loop6

loop5

loop4

loop3

loop2

loop1

loop0

ram15

ram14

ram13

ram12

ram11

ram10

ram9

ram8

ram7

ram6

ram5

ram4

ram3

ram2

ram1

ram0

mmcblk0p2

mmcblk0p1

mmcblk0

# mount -o remount,rw -t yaffs2 /dev/block/mtdblock7 /system

# mount

rootfs / rootfs ro 0 0

tmpfs /dev tmpfs rw,mode=755 0 0

devpts /dev/pts devpts rw,mode=600 0 0

proc /proc proc rw 0 0

sysfs /sys sysfs rw 0 0

tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0

/dev/block/mtdblock7 /system yaffs2 rw 0 0

/dev/block/mtdblock9 /data yaffs2 rw,nosuid,nodev 0 0

/dev/block/mtdblock8 /cache yaffs2 rw,nosuid,nodev 0 0

/dev/block/mtdblock6 /cdrom yaffs2 rw 0 0

tmpfs /tmp tmpfs rw,size=2048k 0 0

/dev/block/mtdblock0 /pds yaffs2 rw,nosuid,nodev 0 0

/sys/kernel/debug /sys/kernel/debug debugfs rw 0 0

/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0

#

Oh sorry. Yes indeed, it is FAT32. I've tried multiple arrangements of both EXT2 and FAT32 and neither has worked so far. Thanks!

Edit 2: Also, after restarting, my /system was back to ro
[Android Apps and Games] MongooseHelix:
Maybe I'm misunderstanding, but both of the outputs from "mount" show rootfs as ro which is how I would expect it to be. Also, a reboot will revert the filesystem mounts back to their defaults unless a script is run at boot with a remount command to change it. The reason I had you remount /system as r/w was just to check if Link2SD was for some reason having trouble doing so itself so it could write to it. Since that doesn't seem to be the issue we can now see if you're able to mount your 2nd partition manually in a terminal using the info from the output you posted.

In the output of "ls /dev/block/vold" we see three entries where 179:0 represents the sd card as a whole, 179:1 represents the first partition of the sd card(accessed at /sdcard as shown in the output of "mount"), and 179:2 represents the second partition you made on the sd card. So /dev/block/vold/179:2 is what we want to get mounted. Vold stands for "volume daemon" and is for removable devices. Another representation of your sd card is shown in the output of "ls /dev/block" where we see mmcblk0p#. It follows the same structure as vold and each entry can be thought of as Partition # within the first identified MultiMedia Card(0). Anyways, let's have you make the directory where link2sd looks for the 2nd partition then try to mount yours there:

mkdir /data/sdext2

mount -t vfat /dev/block/vold/179:2 /data/sdext2

mount

It was successful if no errors and the output of "mount" shows an entry for it. In that case, Link2SD should recognize that it is mounted and allow you to link apps but since we haven't set it up to be mounted at boot, don't do so besides just testing because it will get lost at a reboot and you'll have to reinstall what you had linked. Now the issue will be figuring out the best way to have it automatically mounted. To help, reply with the output of these commands(the second command will create a .txt copy of init.rc on your sd card which you can attach to your reply post):

ls /etc/init.d

cp /init.rc /sdcard/init.rc.txt

The first might say it doesn't exist, which is fine because we just want to know whether it does or not.
[Android Apps and Games] csanmba:
I have

# enable init.d support

service run_parts /system/xbin/run-parts /system/etc/init.d

oneshot

In my init.rc file but I do not have an init.d folder in /ect can anyone explain to me how to use init.d folder to maybe mount my second partition please?
[Android Apps and Games] bolaman42:
Nope, you didn't misunderstand at all, that's exactly right. And I really appreciate you taking the time to get into the details of the representations of the card. All new info for me, helps me to really understand what I'm doing.

So I ran your first line of code. Turns out that I already had a /data/sdext2 folder. So I used root explorer to find it, nothing in it but it looks like it was created 3 days ago, just when I got the card and started using link2sd i think.

2nd line of code, however, did not work. It returned, "Mount: invalid command" Just wondering if the sdext2 folder should be so named, even though my second, primary partition is fat32?

So even though that command didn't work, I did run the rest of your code. I attached the init.rc.txt file, and here is the terminal hardcopy of everything I just said:

export PATH=/data/local/bin:$PATH
$ $su
[COLOR="Red"]# mkdir /data/sdext2
mkdir failed for /data/sdext2, File exists
# mount -t vfat /dev/block/vold/179:2 /data/sdext2
mount: Invalid argument
# mount[/COLOR]
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
/dev/block/mtdblock7 /system yaffs2 rw 0 0
/dev/block/mtdblock9 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock8 /cache yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock6 /cdrom yaffs2 rw 0 0
tmpfs /tmp tmpfs rw,size=2048k 0 0
/dev/block/mtdblock0 /pds yaffs2 rw,nosuid,nodev 0 0
/sys/kernel/debug /sys/kernel/debug debugfs rw 0 0
/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock7 /system
# mount
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
/dev/block/mtdblock7 /system yaffs2 rw 0 0
/dev/block/mtdblock9 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock8 /cache yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock6 /cdrom yaffs2 rw 0 0
tmpfs /tmp tmpfs rw,size=2048k 0 0
/dev/block/mtdblock0 /pds yaffs2 rw,nosuid,nodev 0 0
/sys/kernel/debug /sys/kernel/debug debugfs rw 0 0
/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
#mount -t vfat /dev/block/vold/179:2 /data/sdext2
mount: Invalid argument
[COLOR="Red"]#ls /etc/init.d
/etc/init.d: No such file or directory
# cp /init.rc /sdcard/init.rc.txt[/COLOR]
#
[Android Apps and Games] MongooseHelix:
Link2SD must have already made the /data/sdext2 folder when it was trying to mount the partition. Having ext in the directory name won't matter and actually needs to be called that or else Link2SD won't be able to find it. Since your attempt to manually mount gave the same error as when Link2SD tried, something must be up with the type of filesystem or not liking how we are declaring it for some reason. Is it possible that your 2nd part is actually formatted as ext2? Either way, see if any of these mount commands work:

mount -t ext2 /dev/block/vold/179:2 /data/sdext2
mount /dev/block/vold/179:2 /data/sdext2
mount -t vfat /dev/block/mmcblk0p2 /data/sdext2
mount -t ext2 /dev/block/mmcblk0p2 /data/sdext2
mount /dev/block/mmcblk0p2 /data/sdext2

If you get to one that works, you don't need to try any others. One of those should work...the ones without "-t type" options will try to automatically determine the filesystem of the partition. In the case that none of them work, I would try reformatting the sd card making extra sure both partitions are primary and fat32. What tool did you use to do the formatting? If on Windows, you could use minitool and follow this guide but in step 3, choose fat32 again.
[Android Apps and Games] MongooseHelix:
With init.d support enabled and ready to go you probably just need to remount /system as read/write, create the init.d directory, give it the correct permissions, and then add the script(s) you want run at boot:

su
mount -o remount,rw /dev/block/mtdblock# /system
mkdir /system/etc/init.d
chmod 755 /system/etc/init.d

The # your device uses for /system can be found in the output of "mount" and looking for the /dev/block/mtdblock# associated with /system.

Now whatever scripts you put in there should be run during the init process of a boot. Remember to have the scripts with permissions of rwxr-x---(chmod 750 /system/etc/init.d/SCRIPT_NAME) and owner:group set to root:shell(chown 0:2000 /system/etc/init.d/SCRIPT_NAME).

My ROM comes with a few included init.d scripts to perform various tasks. One example is 05mountsd which is used to automatically mount the second partition of my sd card to /sd-ext.
[Android Apps and Games] Mr eseman:
I have a little problem with Link2Sd. When i create a link to sdcard the app disappears from the appdrawer, so i have to create a shortcut on the homescreen to use the app.

Does anyone know how i can fix this?
[Android Apps and Games] bolaman42:
Gahh, none of the mount commands worked! The third one down in the hardcopy below is a typo, but I left it in just in case it's useful. Hopefully something about the different results can help us flush out where the issue is. And yes, I have windows, and used minitool to create the 2 primary FAT32 partitions that are currently on the card. I will sub this large card out for an older, 2gig one and try all these steps again. Let you know if anything is different.

export PATH=/data/local/bin:$PATH
$ $ su
# mount -t ext2 /dev/block/vold/179:2 /data/sdext2
mount: No such device
# mount /dev/block/vold/179:2 /data/sdext2
Usage: mount [-r] [-w] [-o options] [-t type] device directory
[COLOR="Red"]# mount -t vfat /dev/block/mmsblk0p2 /data/sd
option requires an argument -- tmount: invalid option -t[/COLOR]
# mount -t vfat /dev/block/mmcblk0p2 /data/sdext2
mount: Invalid argument
# mount -t ext2 /dev/block/mmcblk0p2 /data/sdext2
mount: No such device
# mount /dev/block/mmcblk0p2 /data/sdext2
Usage: mount [-r] [-w] [-o options] [-t type] device directory
#
[Android Apps and Games] Malherbe:
thank you very good applications
[Android Apps and Games] MongooseHelix:
I'm confused why the mount commands without using a "-t type" just output the command usage...it should attempt the mount using the default "-t auto". Maybe your version of the mount command doesn't do that. You could see what happens if you force auto mode:

mount -t auto /dev/block/vold/179:2 /data/sdext2
mount -t auto /dev/block/mmcblk0p2 /data/sdext2

It might also be good to see if you have busybox installed, where the mount command is located and if it's linked to busybox.

busybox
ls -l $(which mount)

If busybox isn't installed, I would consider using BusyBox Installer to install one of the versions. My system uses v1.16.2 but I would think the more recent ones would work as well or better.

Let me know if you're able to get the other card mounted.
[Android Apps and Games] Riley600:
I'm getting a forceclose for com.android.vending after running the Market Fix. Is this related to the database, perhaps? Is there a way to diagnose this issue?
[Android Apps and Games] ozonbg:
Thanks for the worderful app! It's working just fine on stock rooted Hero 2.1. I installed so many apps and move them on the SD and I got one question.

So the apps are moved but still they keep some little space on the ROM is that correct? Because my space there is still shrinking with every new app and game installed and linked, and there is a point when you not able to install more. Is that true or just me? Thanks again!
[Android Apps and Games] timpoldo:
I've to notice the same problem reported by ozonbg: I've finished the free space in ROM, after installing and the linking them in SD.

Does link2SD move the entire apk or not?

Why free space decrease, also if use link2SD after install an app?
[Android Apps and Games] bakpinar:
Link2SD does not move data and dalvik-cache, it only moves the apk file.

APKs are actually on the card; the dex files (dalvik-cache), private data directories, and native shared libraries remain in internal storage.
[Android Apps and Games] MegaBubbletea:
Lol...first post.

v1.0.7 -> 1.2.0.

What happened in between? :eek:
[Android Apps and Games] ozonbg:
Can we do something to free up space occupied by data and delvik cache of the apps? Thanks!
[Android Apps and Games] surya77:
If i want to install link2es in my sony X8, do i need to root the phone first? Thanks in advance.
[Android Apps and Games] CaptainZap:
Ofcourse, rooting is a must when dealing with modding stuff.
[Android Apps and Games] SrMoure:
Finally v1.2 works for me after doing a factory reset. Now I cannot root permanetly the device as before, but this is not an issue. Very happy with this app!! Where is the donation link ???:)
[Android Apps and Games] bakpinar:
Try to remove everything in /data/dalvik-cache then reboot immediately. Do not launch any app before reboot.

DEX files that have been removed will be regenerated automatically by the package manager if you restart the phone. They don't get regenerated on app launch because the system doesn't expect files to disappear out from under it.

This way, may be, you can free up some space of old unnecessary .dex files.
[Android Apps and Games] bakpinar:
If you update a linked application new apk file will be placed in the internal memory (/data/app directory), old apk remains in ext2 (/data/sdext2 directory).

Therefore application apk file is not linked after update and you need to create link again.
[Android Apps and Games] ozonbg:
Just one more question out of the topic. Does cleaning of dalvik cache remove the saves of games and user configurations of apps? Thanks!
[Android Apps and Games] MegaBubbletea:
Nope. I did a wipe of the dalvik-cache when installing a theme using ClockWork Mod and my saves and settings are still there.
[Android Apps and Games] ozonbg:
Out of topic: But where are stored these settings? In case something goes wrong.
[Android Apps and Games] MegaBubbletea:
Well...if you click backup in ClockWork Mod..everything is backed up to your SD card. Includes the boot, system and data.
[Android Apps and Games] bakpinar:
UPDATE:

1.2.1

- added info message to show which applications have been repaired after "Market Fix"
[Android Apps and Games] minuteman_x:
Xperia-mini,updated,rooted,8gb ram

superuser, 750mb partition ext2 created

first: absolutely graet work - respect and thanks!!

tried last version - still same problem:

ext2 partition can not be mounted.

Help - do I something wrong?
[Android Apps and Games] e82136:
The same problem on my phone

I have 800MB partition ext2 created , and rooted
[Android Apps and Games] minuteman_x:
SORRY- as a neebie in this case, I don`t know how to do that.

If you would tell me step by step - I´ll try it!!

Excuse me.
[Android Apps and Games] marlouiegene18:
Acer Liquid E S100

It keeps screwing up my phone. Sometime it'll work. Sometime It'll not. When i reboot, sometimes it wipeout my menu like bringing all back to default settings.
[Android Apps and Games] Dimak451:
Can I resize a primary ext2 partition without losing data?

I need to resize from 600mb to 1gb and I was wondering if I could do it with MiniTool or other program
[Android Apps and Games] AfroLoots:
Try partition manager. There are rules to follow, like you may have to resize primary then join the left over to ext or maybe it's automatic. Just be careful and backup your sdcard.

Sent from my X10a running EW Jet SPBex tweak v9.3
[Android Apps and Games] mmceorange:
I love this app. Using it on an HTC Desire.. Much needed breathing room :)

Fully support Dev.

1 thing I've noticed.. "App Backup Restore" doesn't play well with Link2SD haha

I've posted this on their page, hoping they can figure out a fix because I'm fairly certain it is not Link2sd's fault.

For those wondering, basically App Backup Restore cannot "see" any apps that are linked.. and doesnt know that they are installed. Also, when trying to view backups, the app FCs every time (at least on my phone)

I like having App Backup Restore (in addition to Titanium) because it saves the backup as an apk, which I can then send to a friend and they can install easily.
[Android Apps and Games] leo5111:
ok im confused do i make 2 partitons on my external sd? and how do i set it up i have a 32 gig sd cardi made 2 fat 32 partitions and put android secure and all those folders it stuck on it on partition 1 and my music on partition 2 and my music and videos wer not seen on the second partition so im totaly confused how to set it up:confused:
[Android Apps and Games] marlboroazrag:
Nice ¡!!!!!
[Android Apps and Games] kretos:
I have a question. How Link2SD searches for libriaries? I've installed CoPilot and libs are in /data/data/com.alk.copilot/files (3 libs - almost 10MB). Link2SD does not see those libs (reports 0) and does not link them to SD card. Can you make changes so Link2SD search for *.so files in whole subfolder and link all libraries?