Related
DOES NOT WORK ON CUPCAKE 1.5. Try one of the other apps to sd card threads.
I decided to create a new thread for hacking a rooted g1 to allow applications to run from the sdcard. The original thread's instructions don't work without some modifications and the original poster doesn't seem to have the time to update it.
I'll try to keep the original post as up to date as possible as new information comes.
Prerequisites:
1. Rooted g1 with jesus freak version 1.30 or 1.31, 1.41 (rc30, rc33) Works with all rooted US, UK, international versions of the g1.
2. Have "adb" from the android sdk installed on your desktop machine.
Sdcard preparation:
Divide your sdcard into 2 partitions. The first partition should be FAT, the second partition should be EXT2. This can be most easily accomplished using a linux or mac machine. For windows, you can use "paragon partition manager 9" to do this. It will allow you to partition your sdcard and format the 2nd partition to ext2 fs. It is very important that the 2nd partition be formatted as EXT2 or the rest of the procedure will NOT work. The 2nd ext2 partition will be used to store your installed apps.
In the original thread, somebody mentioned a HP sdcard partition tool program, but I don't believe that will allow you to format the partition to EXT2 fs.
Procedure:
1. With the phone off, insert your newly partitioned sdcard into the g1.
2. Connect your g1 to your desktop via the usb cable and turn it on.
3. Backup your original mountd.conf and initrc.rc files from your g1 by running the following commands on your desktop from the cmd shell:
adb pull /system/etc/mountd.conf <dir on your desktop>
adb pull /system/init.rc <dir on your desktop>
4. Mount your g1's /system directory as writable via the desktop cmd shell:
adb remount
5. IMPORTANT! Create a /system/sd directory on your g1 via the desktop cmd shell:
adb shell mkdir /system/sd
adb shell ls /system and make sure that the directory has been created.
6. Download the attached modified mountd.conf and init.rc files to your PC.
7. Push the modified mountd.conf to your g1 via the desktop cmd shell:
adb push /<dir on your desktop of modified file>/mountd.conf /system/etc/mountd.conf
8. Push the modified init.rc to your g1 via the desktop cmd shell:
adb push /<dir on your desktop of modified file>/init.rc /system/init.rc
9. Reboot your g1
10. Connect to the g1 shell via the desktop cmd shell:
adb remount
adb shell
11. Check to see that the ext2 partition has been created and mounted:
busybox df -h
You should see a line that looks similar to this:
/dev/mmcblk0p2 1.2G 9.1M 1.1G 1% /system/sd
If you don't see this line, you didn't partition your sdcard correctly. STOP! Go back and do that.
12. From the G1 shell run the following cmds to copy your app and app-private directories from the internal g1 storage to the sdcard.
busybox cp -a /data/app /system/sd
rm -r /data/app
ln -s /system/sd/app /data/app
busybox cp -a /data/app-private /system/sd/app-private
rm -r /data/app-private
ln -s /system/sd/app-private /data/app-private
13. Reboot, enjoy all the extra storage!
Undo Procedure by heldc:
Dunno if this has been posted yet, but the undo process is simple. I just did it with no problems, and thought others might want it as well. (Note-if you're copy pasting this to do it, anything following # til the end of a line is just a comment, don't copy/paste it.)
adb remount #makes your file system writeable
adb push /<place you backed up mount.conf to>/filenameofbackeduporiginalmount.conf /system/etc/mountd.conf #restores the original mount.conf
adb push /<place you backed up init.rc to>/filenameofbackeduporiginalinit.rc /system/init.rc #restores the original init.rc
adb shell #opens the phone shell
rm -r /data/app #deleting the symbolic link to /system/sd
mkdir /data/app #recreating /data/app
rm -r /data/app-private #deleting the symbolic link to /system/sd
mkdir /data/app-private #recreating /data/app-private
reboot
Instructions without adb using terminal app by LucidREM
this is a form of the instructions from this thread .. but modified slightly to be used directly from the "Terminal" .. i did not use my USB on my phone to root or run apps .. everything i did was on the G1
$su
#mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
#mkdir /system/sd
6. Download the attached modified mountd.conf and init.rc files to your SD.
#busybox cp -a /sdcard/mountd.conf /system/etc/mountd.conf
#busybox cp -a /sdcard/init.rc /system/init.rc
9. Reboot your g1
$su
#mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
#busybox df -h
You should see a line that looks similar to this:
/dev/mmcblk0p2 1.2G 9.1M 1.1G 1% /system/sd
If you don't see this line, you didn't partition your sdcard correctly. STOP! Go back and do that.
12. From the G1 shell run the following cmds to copy your app and app-private directories from the internal g1 storage to the sdcard.
#busybox cp -a /data/app /system/sd
#rm -r /data/app
#ln -s /system/sd/app /data/app
#busybox cp -a /data/app-private /system/sd
#rm -r /data/app-private
#ln -s /system/sd/app-private /data/app-private
Reboot your g1
Update 1/19/2009:
Installing non-wipe custom themes shouldn't cause any issues. I just installed the BUUF theme and I didn't have to re-do the procedure.
Update 1/20/2009:
Added undo procedure by heldc
Update 1/27/2009:
Added procedure for moving data directory to the sdcard, without performance issues.
This is not stable so I've moved it to the bottom.
13. Copy /data/data directory from internal storage to sdcard. This is OPTIONAL as some people are still reporting issues.
mkdir /system/sd/data
cp -rp /data/data /system/sd
rm -r /data/data
ln -s /system/sd/data /data/data
Reversal procedure:
rm /data/data
cp -rp /system/sd/data /data
Update 2/7/2009:
Add instructions by lucidrem that doesn't require adb. Allows you to apply the hack from the g1 using terminal app
going to try this right now..i will tell you if it works on my G1
i followed all the steps and i was able to boot into my phone without any problems. I was also able to install apps from market BUT when i instaled them my STORAGE LEFT went down from 54 to 51MB.
**I can see all the apps i installed in /system/sd/apps
please help,
thanks
Running apps off the SD card show any signs off slowness or laggyness?
Hey I would like to know what software are u using to create the partition on the sd, I tried partition magic 8 and partition mananger but the softwares can't see the sd card.
I use Paragon Partition Manager 9
vtecpower said:
i followed all the steps and i was able to boot into my phone without any problems. I was also able to install apps from market BUT when i instaled them my STORAGE LEFT went down from 54 to 51MB.
**I can see all the apps i installed in /system/sd/apps
please help,
thanks
Click to expand...
Click to collapse
Only the apk files are moved to the sdcard. The apps database files are still on the internal storage and all the cache files are still on the internal storage. Its still a good idea to manually move them over to the sdcard.
So as you install more apps, the internal storage will still shrink, but not as much as before and will go down slowly.
You can try to also move the /data/data directory over to the sdcard, that will move all the database files from the internal storage to the sdcard, but I haven't tried that. If you have a class 6 sdcard, try it and see if that slows things down.
dwang said:
Only the apk files are moved to the sdcard. The apps database files are still on the internal storage and all the cache files are still on the internal storage. Its still a good idea to manually move them over to the sdcard.
So as you install more apps, the internal storage will still shrink, but not as much as before and will go down slowly.
You can try to also move the /data/data directory over to the sdcard, that will move all the database files from the internal storage to the sdcard, but I haven't tried that. If you have a class 6 sdcard, try it and see if that slows things down.
Click to expand...
Click to collapse
I have a class 5 4gb card and i want to try to move /data/data to sd
Can you please post guide how to move /data/data to sd..
thanks
Just did this and so far, so good!
vtecpower said:
I use Paragon Partition Manager 9
Click to expand...
Click to collapse
I'm downloading the program now thanks...
Now I have to figure out how to do the partition in Ubuntu Lol
hi,
i'm a total noob to this. I've managed to pull the mountd and init files to back them up. When I get to step 5: adb mkdir /system/sd when I press enter the cmd shell gives me the adb menu. How can I tell if the dir was created?
Thanks for any help you guys can give.
1) adb shell
2) mkdir /system/sd
thanks a lot.
For the person that asked how to partition your sd card in Ubuntu you can use partition editor under system-administration- partition editor
ashshlay said:
For the person that asked how to partition your sd card in Ubuntu you can use partition editor under system-administration- partition editor
Click to expand...
Click to collapse
Thanks for the info but I just find out tha paragon partition mananger can creat ext2 partitions too
everything went right with the software it create my fat32 partition and the ext/2. what I don't know is if the ext/2 is formated and my computer with linux does not see sd card at all so right now I don't now how to confirm this.
ps. I try to look for the option SYSTEM THEN ADMITNISTRATION and it does not have the partition editor installed.
vtecpower said:
I have a class 5 4gb card and i want to try to move /data/data to sd
Can you please post guide how to move /data/data to sd..
thanks
Click to expand...
Click to collapse
Try this and see if it works... I haven't tried it myself as I only have the stock sdcard and I know its going to be too slow.
adb shell
cp -a /data/data /system/sd
rm -r /data/data
ln -s /system/sd/data /data/data
reboot
If this doesn't work or its too slow, to reverse it do the following:
adb shell
busybox cp -a /system/sd/data /data/data
If this works well, I'll modify the original post...
dwang said:
Try this and see if it works... I haven't tried it myself as I only have the stock sdcard and I know its going to be too slow.
adb shell
cp -a /data/data /system/sd
rm -r /data/data
ln -s /system/sd/data /data/data
reboot
If this doesn't work or its too slow, to reverse it do the following:
adb shell
busybox cp -a /system/sd/data /data/data
If this works well, I'll modify the original post...
Click to expand...
Click to collapse
goingto try it now..i will tell you how it turnsout
It worked but its kinda slow because as it turned out my card is Rank 4 not 5...i installed couple of apps and phone didnt crash
My Internal memory remaining is 52mb.
tahnks
vtecpower said:
It worked but its kinda slow because as it turned out my card is Rank 4 not 5...i installed couple of apps and phone didnt crash
My Internal memory remaining is 52mb.
tahnks
Click to expand...
Click to collapse
ok.. strange that your internal storage is still at 52mb though.. something else must be eating it...
do this:
adb shell
busybox df -h
cd /data
ls -l
and post the results...
# busybox df -h
busybox df -h
Filesystem Size Used Available Use% Mounted on
tmpfs 48.4M 0 48.4M 0% /dev
tmpfs 4.0M 0 4.0M 0% /sqlite_stmt_journals
/dev/block/mtdblock3 67.5M 64.0M 3.5M 95% /system
/dev/block/loop0 1.4M 1.4M 0 100% /system/modules
/dev/block/loop1 3.1M 3.1M 0 100% /system/xbin
/dev/mmcblk0p2 1.2G 9.1M 1.1G 1% /system/sd
/dev/block/mtdblock5 74.8M 22.9M 51.9M 31% /data
/dev/block/mtdblock4 67.5M 1.6M 65.9M 2% /cache
/dev/block/mmcblk0p1 2.4G 39.8M 2.4G 2% /sdcard
# cd /data
cd /data
# ls -l
ls -l
drwxrwxrwx 1 1000 1000 2048 Jan 9 00:39 anr
lrwxrwxrwx 1 0 0 14 Jan 9 03:43 app -> /system/sd/app
lrwxrwxrwx 1 0 0 22 Jan 9 03:43 app-private -> /system/s
d/app-private
drwxrwx--x 1 1000 1000 2048 Jan 9 00:39 dalvik-cache
lrwxrwxrwx 1 0 0 15 Jan 9 04:08 data -> /system/sd/data
drwxrwx--x 1 2000 2000 2048 Jan 9 00:39 local
drwxrwx--- 1 0 0 2048 Jan 9 00:39 lost+found
drwxrwx--t 1 1000 9998 2048 Jan 9 00:39 misc
drwx------ 1 0 0 2048 Jan 9 00:39 property
drwxrwxr-x 1 1000 1000 2048 Jan 9 00:39 system
#
I seem to be frequently flashing or messing up my G1 so I decided to write some shell scripts to help out but they seem to only half work if at all. Actually I'm not sure what they did because they displayed no output.
This script is supposed to backup the default init.rc and mountd.conf files then replace the existing ones with the modified ones.
Though it does not work.
Code:
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
mkdir /system/sd
busybox cp -a /system/etc/mountd.conf /sdcard/recovery/mountd.conf.bak
busybox cp -a /system/init.rc /sdcard/recovery/init.rc.bak
busybox cp -a /sdcard/recovery/mountd.conf /system/etc/mountd.conf
busybox cp -a /sdcard/recovery/init.rc /system/init.rc
then this is the next set to move the apks and the program caches which doesn't work.
Code:
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
busybox cp -a /data/app /system/sd
rm -r /data/app
ln -s /system/sd/app /data/app
busybox cp -a /data/app-private /system/sd/app-private
rm -r /data/app-private
ln -s /system/sd/app-private /data/app-private
rm -R /data/data/com.android.browser/cache/webviewCache
ln -s /sdcard/cache/webviewCache /data/data/com.android.browser/cache/webviewCache
rm -R /data/data/com.android.vending/cache
ln -s /sdcard/cache/marketCache /data/data/com.android.vending/cache
rm -R /data/data/com.google.android.street/cache
ln -s /sdcard/cache/streetCache /data/data/com.google.android.street/cache
reboot
Plus both run and output no errors either. Who knows what problems I'll run into because I have no idea what they actually did.
Anyone see anything wrong here?
Well I'll help you.
1-) After you back up the mount and stuff and put the other back, you MUST reboot before keep going.
2-)After boot then you can copy the files or make the symlink. I suggest you dont copy the app to the sdcard on teh scrip since they should be there already. so do that manually once then the script just delete the folders and then crate the symlinmks.
I have a menu that does that and I have got some experience as why it works one day and not the other.
Rafase282 said:
Well I'll help you.
1-) After you back up the mount and stuff and put the other back, you MUST reboot before keep going.
Click to expand...
Click to collapse
I took the reboot out after the mountd.conf and init.rc did not appear to copy due to the lack of /dev/mmcblk0p2 hoping to see some sort of output why it did not run. Unfortunately it runs and backs up the files but does not replace them with the modded ones.
Rafase282 said:
2-)After boot then you can copy the files or make the symlink. I suggest you dont copy the app to the sdcard on teh scrip since they should be there already. so do that manually once then the script just delete the folders and then crate the symlinmks.
Click to expand...
Click to collapse
Not copying the apps is a good idea, modified the script to not do so.
Rafase282 said:
I have a menu that does that and I have got some experience as why it works one day and not the other.
Click to expand...
Click to collapse
Does Android require that you do a chmod on all shell scripts first?
On Debian I usually just use sudo sh ./ and it runs the script w/o changing anything on the file permissions so I figured Android would be similar if I just ran them as root. Still I see a lot of people requiring a chmod 777 on any guide referring to running shell scripts.
I will try that and report back with my findings. Thanks for replying.
Does Android require that you do a chmod on all shell scripts first? I just have to type m oon anywhere in the androud shell and my scripts run, for that i put it on /system/bin and do a chmod 4755 to the file. it is still needed to type su before you run the script.
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
mkdir /system/sd
cp /sdcard/media/Data/mountd.conf /system/etc/mountd.conf
cp /sdcard/media/Data/init.rc /system/init.rc
Thats my code for copying the modified files to the right place. So maybe you should try that.
Oh for androoid you dont unless you put it on /system/bin then you will have to use sude and sometiems it still wont run due to lack or permisions so is better to do a chmod 4755
Well I made the changes suggested and did a chmod on all the files prior to running but with no luck.
The odd thing is if I use the shell scripts as a guide list it works perfectly but if I try to launch them as a shell script all sorts of strange undesirable things happen to my phone.
The time consumed trying to use the scripts and recover from what happens from what they do out weight the effects of typing everything in.
joshtheitguy said:
Well I made the changes suggested and did a chmod on all the files prior to running but with no luck.
The odd thing is if I use the shell scripts as a guide list it works perfectly but if I try to launch them as a shell script all sorts of strange undesirable things happen to my phone.
The time consumed trying to use the scripts and recover from what happens from what they do out weight the effects of typing everything in.
Click to expand...
Click to collapse
you can only run the script once .. when the "ln -s" has already been done it has to be undone before trying to run the script again .. otherwise you would be copying the files onto themselves .. not sure if you've tried running it more than once
LucidREM said:
you can only run the script once .. when the "ln -s" has already been done it has to be undone before trying to run the script again .. otherwise you would be copying the files onto themselves .. not sure if you've tried running it more than once
Click to expand...
Click to collapse
These scripts were intended for my usage after a system restore from a update.zip file which wipes /system in the process.
My intentions were to:
1. remount the fs rw
2. copy the original init and mountd files to the sd then copy the modified to their respective places in the system folders then reboot
3. reboot then create the sym links appropriately then move my caches too
Well unfortunately the only thing that works is the backing up of the original init and mountd files.
joshtheitguy said:
These scripts were intended for my usage after a system restore from a update.zip file which wipes /system in the process.
My intentions were to:
1. remount the fs rw
2. copy the original init and mountd files to the sd then copy the modified to their respective places in the system folders then reboot
3. reboot then create the sym links appropriately then move my caches too
Well unfortunately the only thing that works is the backing up of the original init and mountd files.
Click to expand...
Click to collapse
yes .. but you can't create the sym links when they already exist .. running the update.zip only wipes the /system .. not /data .. if the links were there before the update.zip they will be there after
This is hack for the userinit.sh script that allows to override
system programs with different binaries or just add some new
executable programs to your rom as you can use your ext3 partition
as storage. One more advantage is that your customizations
will be persistent even after a update.
For this to work you have to add this lines to your /system/sd/userinit.sh script:
Code:
mount -o remount,rw /dev/rootfs /
mkdir /usr
chown root.root /usr
chmod 755 /usr
mkdir /system/sd/bin
chown root.shell /system/sd/bin
chmod 755 /system/sd/bin
ln -s /system/sd/bin /usr/bin
mount -o remount,ro /dev/rootfs /
After a reboot, you'll find a newly created bin
directory in /system/sd/ linked to /usr/bin.
/usr/bin is the first directory to be searched
in path in CM-mod ROMs so any program dropped
there will be found and executed before others with
same name in the system. So you can simply:
Code:
adb push new_program /usr/bin
adb shell
cd /usr/bin
chmod 755 new_program
chown root.shell new_program
This is experimental stuff and therefore USE IT AT YOUR OWN RISK.
Tested on CM-mod-3.6.7.2 and CM-mod-3.6.8 and works fine for me.
So if I were to use this method. I could 'truely' replace the home screen with one of the 3rd party ones. ie aHome or dxTop? As it is now, I've noticed that even setting aHome as default, Home still runs in the background. Using Advanced Task Manager to confirm this btw.
If this is the case, I'll be using this shortly. As I'm tired of just running 3rd party programs in addition to the programs they are suppose to replace.
Its like using windowblinds in windows, instead of just replacing the whole shell. lol
followinginsanity said:
So if I were to use this method. I could 'truely' replace the home screen with one of the 3rd party ones. ie aHome or dxTop? As it is now, I've noticed that even setting aHome as default, Home still runs in the background. Using Advanced Task Manager to confirm this btw.
If this is the case, I'll be using this shortly. As I'm tired of just running 3rd party programs in addition to the programs they are suppose to replace.
Its like using windowblinds in windows, instead of just replacing the whole shell. lol
Click to expand...
Click to collapse
This only lets your run cli programs. This is below the dalvik system so it won't help you change the launcher.apk for ahome or dxtop.
Ok I see what your saying now. Misunderstood the exact intent of the changes
Cool trick, thanks. I already had a /system/sd/bin, so I modified it a little to skip creating it and doing the chmod etc on it.
Slight mod to avoid the whole thing if /usr is already there.. .
Code:
if ! [ -d /usr ]
then
mount -o remount,rw /dev/rootfs /;
mkdir /usr;
chown root.root /usr;
chmod 755 /usr;
ln -s /system/sd/bin /usr/bin;
mount -o remount,ro /dev/rootfs /;
fi
This is useful to me as my userinit.sh is the new one from the compcache thread and can be run to get status info on compcache after boot. No need to remount the filesystem and all that when what we need is already there.
I don't think you can skip the creation of /usr as it is lost
after a reboot at least on cm-mod, you can skip the creation
of system/sd/bin if it already exists tough. OTOH running:
Code:
mkdir /usr
chown root.root /usr
chmod 755 /usr
mkdir /system/sd/bin
chown root.shell /system/sd/bin
chmod 755 /system/sd/bin
ln -s /system/sd/bin /usr/bin
will do no harm as mkdir and ln will fail if the targets already exist
and chown and chmod will just ensure that you can run your
programs.To be on the safe side i would suggest:
Code:
mount -o remount,rw /dev/rootfs /
mkdir /usr
chown root.root /usr
chmod 755 /usr
# we should check if /system/sd is mounted
if [ ! -d /system/sd/bin ] ; then
mkdir /system/sd/bin
chown root.root /system/sd/bin
chmod 755 /system/sd/bin
fi
ln -s /system/sd/bin /usr/bin
mount -o remount,ro /dev/rootfs /
This would be a great place to put a set of the GNU utilities like ls, ln, cp, mv, etc to go along with bash. Busybox is great and all, but there are some advanced options in the GNU versions that aren't available in Busybox. Has anyone compiled them for Android? I might try copying the Debian ones over and see if they work without the rest of the chroot. I'm thinking I'll need at least some of /lib from debian for them to work though.
ttabbal said:
This would be a great place to put a set of the GNU utilities like ls, ln, cp, mv, etc to go along with bash. Busybox is great and all, but there are some advanced options in the GNU versions that aren't available in Busybox. Has anyone compiled them for Android? I might try copying the Debian ones over and see if they work without the rest of the chroot. I'm thinking I'll need at least some of /lib from debian for them to work though.
Click to expand...
Click to collapse
Have you tried a fully configured busybox with desktop options enabled?
Attached just for reference my .config.
farmatito said:
Have you tried a fully configured busybox with desktop options enabled?
Attached just for reference my .config.
Click to expand...
Click to collapse
Nope. Is there a binary available? I don't have a cross compiler set up right now.
Try this, You can create all the symlinks with this command:
Code:
adb push busybox /usr/bin
adb shell
cd /usr/bin
./busybox --install .
For full functionality you should also add /etc/passwd, /etc/shadow, /etc/group, /etc/gshadow. I link them to /system/sd/etc/ to have them rw
Code:
mkdir /system/sd/etc
chmod 644 /system/sd/etc
/system/bin/chown root.root /system/sd/etc
/system/bin/chown root.root /system/sd/etc/passwd
/system/bin/chown root.root /system/sd/etc/group
/system/bin/chown root.root /system/sd/etc/shadow
/system/bin/chown root.root /system/sd/etc/gshadow
/system/bin/chown root.root /system/sd/etc/fstab
chmod 644 /system/sd/etc/passwd
chmod 644 /system/sd/etc/group
chmod 600 /system/sd/etc/shadow
chmod 600 /system/sd/etc/gshadow
ln -s /system/sd/etc/passwd /etc/passwd
ln -s /system/sd/etc/shadow /etc/shadow
ln -s /system/sd/etc/group /etc/group
ln -s /system/sd/etc/gshadow /etc/gshadow
Remove the su link to busybox for now as it interferes with
the superuser app (otoh you could set a root passwd and
use busybox's su BUT ONLY FROM A SHELL)
Code:
rm /usr/bin/su
You should also:
Code:
passwd root
addgroup -g 65534 nogroup
You can even use ash as your default shell by doing:
Code:
if [ -e /usr/bin/busybox ] ; then
mount --bind /usr/bin/sh /system/bin/sh
fi
# Fix scripts in /system/bin
for i in am ime input monkey pm svc
do
if [ `grep -c "#!/system/bin/sh" /system/bin/$i` -eq 0 ] ; then
echo "#!/system/bin/sh" > /system/bin/$i.tmp
cat /system/bin/$i >> /system/bin/$i.tmp
mv /system/bin/$i.tmp /system/bin/$i
chown root.shell /system/bin/$i
chmod 755 /system/bin/$i
fi
done
Thanks! That worked great.
farmatito said:
Try this, You can create all the symlinks with this command:Remove the su link to busybox for now as it interferes with
the superuser app (otoh you could set a root passwd and
use busybox's su BUT ONLY FROM A SHELL)
Click to expand...
Click to collapse
Hey farmatito - just stumbled onto this thread and am going to follow this but I am unclear on how to remove the su link to busybox? Any direction would be appreciated! Thanks.
Edit: I realize you mean to just rm it from /system/sd/bin - duh. thanks for this thread! I like having the full busybox bin.
cd /usr/bin
rm su
farmatito said:
cd /usr/bin
rm su
Click to expand...
Click to collapse
Yeah, I figured that out - thanks. I had edited my above post saying such.
another question for you - I was going through your busybox config file - and am wondering which directory you store it in so that it is used when installing busybox?
prscott1 said:
Yeah, I figured that out - thanks. I had edited my above post saying such.
another question for you - I was going through your busybox config file - and am wondering which directory you store it in so that it is used when installing busybox?
Click to expand...
Click to collapse
Download the source code from www.busybox.net
extract it
cd busybox
cp my_config .config
make oldconfig
make
You need a cross compiler to build it
you can download one at
http://www.codesourcery.com/sgpp/lite/arm/portal/release830
or
http://www.codesourcery.com/sgpp/lite/arm/portal/release827
Quick stupid question please... tried searching but haven't found much.
After doing the userinit.sh mod shown here and using the new busybox (thanks for that, btw!), I noticed that a lot of the commands (including 'ls' which is now using /usr/bin/ls) show ansi colors in a terminal that supports them (i.e. 'Terminal' or 'Better Terminal' app) which is awesome but 'adb shell' looks mostly horrible with escape sequences instead of colors, like this:
Code:
# cd /system/sd
cd /system/sd
# ls -l
ls -l
drwxrwx--x 2 system system 2048 Aug 19 16:04 ←[1;34mapp←[0m
drwxrwx--x 2 system system 1024 Aug 16 02:12 ←[1;34mapp-private←[0m
drwxr-xr-x 2 root root 4096 Aug 19 20:40 ←[1;34mbin←[0m
drwxrwx--x 2 system system 7168 Aug 19 16:04 ←[1;34mdalvik-cache←[0m
drw-r--r-- 2 root root 1024 Aug 19 20:39 ←[1;34metc←[0m
drwxr-xr-x 2 root root 12288 Jul 10 02:29 ←[1;34mlost+found←[0m
drwxrwxrwx 2 root root 1024 Jul 22 18:15 ←[1;34mmedia←[0m
-rwxr-xr-x 1 root root 331 Aug 19 20:28 ←[1;32muserinit.sh←[0m
Do you guys set your $TERM variable to something that makes the adb terminal more "sane" or is not possible because adb is limited and I should just ssh or telnet in, etc.?
I've tried setting $TERM to various standard things (ansi/vt100/xterm/etc.) but the dumb adb terminal remains.. well.. dumb.
rub1k said:
Quick stupid question please... tried searching but haven't found much.
After doing the userinit.sh mod shown here and using the new busybox (thanks for that, btw!), I noticed that a lot of the commands (including 'ls' which is now using /usr/bin/ls) show ansi colors in a terminal that supports them (i.e. 'Terminal' or 'Better Terminal' app) which is awesome but 'adb shell' looks mostly horrible with escape sequences instead of colors, like this:
Code:
# cd /system/sd
cd /system/sd
# ls -l
ls -l
drwxrwx--x 2 system system 2048 Aug 19 16:04 ←[1;34mapp←[0m
drwxrwx--x 2 system system 1024 Aug 16 02:12 ←[1;34mapp-private←[0m
drwxr-xr-x 2 root root 4096 Aug 19 20:40 ←[1;34mbin←[0m
drwxrwx--x 2 system system 7168 Aug 19 16:04 ←[1;34mdalvik-cache←[0m
drw-r--r-- 2 root root 1024 Aug 19 20:39 ←[1;34metc←[0m
drwxr-xr-x 2 root root 12288 Jul 10 02:29 ←[1;34mlost+found←[0m
drwxrwxrwx 2 root root 1024 Jul 22 18:15 ←[1;34mmedia←[0m
-rwxr-xr-x 1 root root 331 Aug 19 20:28 ←[1;32muserinit.sh←[0m
Do you guys set your $TERM variable to something that makes the adb terminal more "sane" or is not possible because adb is limited and I should just ssh or telnet in, etc.?
I've tried setting $TERM to various standard things (ansi/vt100/xterm/etc.) but the dumb adb terminal remains.. well.. dumb.
Click to expand...
Click to collapse
What terminal are you using?
I use konsole on linux and everything looks fine.
Cannot say if there is a suitable terminal for windows,
maybe the one that comes with the mingw compiler.
If nothing works you can just:
Code:
cd /usr/bin
rm ls
farmatito said:
Download the source code from www.busybox.net
extract it
cd busybox
cp my_config .config
make oldconfig
make
You need a cross compiler to build it
you can download one at
http://www.codesourcery.com/sgpp/lite/arm/portal/release830
or
http://www.codesourcery.com/sgpp/lite/arm/portal/release827
Click to expand...
Click to collapse
Many thanks!
Oh, sorry, I should have specified that.
This was using adb from my Vista x64 laptop (yeah, sorry, stuck with win32 for using adb so terminal choices rather limited).
So, basically, it was just running "adb[.exe] shell" from a Windows command prompt.
Tried bash under cygwin and even though it has full ansi coloring support, it looks like adb.exe isn't very terminal friendly because extended/escaped ansi still don't translate.
No big deal; I'll remove /usr/bin/ls for now or temporarily alias 'ls' to /system/xbin/bb/ls while I'm in an adb shell.
Wondering what else I could be using via the USB connection to get a shell prompt within my G1... easiest way is to turn on the wifi and telnet/ssh in, I guess?
EDIT: Duh, just started telnetd and forwarded the port using adb and problem solved (using putty to telnet in as described here and it works very nicely).
rub1k said:
Quick stupid question please... tried searching but haven't found much.
After doing the userinit.sh mod shown here and using the new busybox (thanks for that, btw!), I noticed that a lot of the commands (including 'ls' which is now using /usr/bin/ls) show ansi colors in a terminal that supports them (i.e. 'Terminal' or 'Better Terminal' app) which is awesome but 'adb shell' looks mostly horrible with escape sequences instead of colors, like this:
Code:
# cd /system/sd
cd /system/sd
# ls -l
ls -l
drwxrwx--x 2 system system 2048 Aug 19 16:04 ←[1;34mapp←[0m
drwxrwx--x 2 system system 1024 Aug 16 02:12 ←[1;34mapp-private←[0m
drwxr-xr-x 2 root root 4096 Aug 19 20:40 ←[1;34mbin←[0m
drwxrwx--x 2 system system 7168 Aug 19 16:04 ←[1;34mdalvik-cache←[0m
drw-r--r-- 2 root root 1024 Aug 19 20:39 ←[1;34metc←[0m
drwxr-xr-x 2 root root 12288 Jul 10 02:29 ←[1;34mlost+found←[0m
drwxrwxrwx 2 root root 1024 Jul 22 18:15 ←[1;34mmedia←[0m
-rwxr-xr-x 1 root root 331 Aug 19 20:28 ←[1;32muserinit.sh←[0m
Do you guys set your $TERM variable to something that makes the adb terminal more "sane" or is not possible because adb is limited and I should just ssh or telnet in, etc.?
I've tried setting $TERM to various standard things (ansi/vt100/xterm/etc.) but the dumb adb terminal remains.. well.. dumb.
Click to expand...
Click to collapse
If you are on a windows pc, try using cygwin - works great.
Obviously there are some missing tools from the linux OS on the droid, so I'm looking to install busybox. I went directly to the source and tried to compile and install it on the phone, but it doesn't seem to work quite well.
I see a lot of people are including a version of busybox on their custom mods, but I'm not really looking to install a custom mod on my phone quite yet, but I would like the tools.
Does anyone know where I can download a good version of busybox that works on the Sprint HTC Hero without installing a rom?
I searched around the forums, but I'm not able to find anything quite yet.
I compiled one just today for some other stuff, not fully tested, but here you are.
Let me know how it works.
[email protected]:~/android/src/busybox-1.15.2$ file busybox
busybox: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, stripped
packetlss said:
I compiled one just today for some other stuff, not fully tested, but here you are.
Let me know how it works.
[email protected]:~/android/src/busybox-1.15.2$ file busybox
busybox: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, stripped
Click to expand...
Click to collapse
Nice. Cheers. I'll let you know how it goes.
Care to provide how do you install this into the Hero? I'm also interested as I don't want to use a custom ROM
Nazgulled said:
Care to provide how do you install this into the Hero? I'm also interested as I don't want to use a custom ROM
Click to expand...
Click to collapse
I'm assuming you push it, via adb....correct, packetlss?
NOTE: backup before you try, writing this from the top of my head at 4 am.
To install:
run "adb remount" (to enable rw on /system)
run "adb push busybox /data/local" (so you got busybox somewhere on the phone)
run "adb shell" (to enter shell on phone)
in phone shell:
run "/data/local/busybox mkdir /system/xbin" (wanna make sure the directory exist)
run "/data/local/busybox cp /data/local/busybox /system/xbin/busybox" (copy busybox to xbin)
run "cd /system/xbin"
run "./busybox --install -s /system/xbin" (this should create symlinks for all the busybox applets)
run "ls -al" (you should see alot of symlinks)
run "rm /data/local/busybox" (remove the temporary busybox)
Thanks a lot for that...
Now I just need to learn how to do that directly into a custom ROM. Do you happen to know?
packetlss said:
NOTE: backup before you try, writing this from the top of my head at 4 am.
To install:
run "adb remount" (to enable rw on /system)
run "adb push busybox /data/local" (so you got busybox somewhere on the phone)
run "adb shell" (to enter shell on phone)
in phone shell:
run "/data/local/busybox mkdir /system/xbin" (wanna make sure the directory exist)
run "/data/local/busybox cp /data/local/busybox /system/xbin/busybox" (copy busybox to xbin)
run "cd /system/xbin"
run "./busybox --install -s /system/xbin" (this should create symlinks for all the busybox applets)
run "ls -al" (you should see alot of symlinks)
run "rm /data/local/busybox" (remove the temporary busybox)
Click to expand...
Click to collapse
So I followed that and accomplished it, I'm wondering what next? I have an app called SU File Manager & Terminal installed and it requires busybox. I don't see any new features or benefits? Am I not looking in the right place?
I'm having a permission issue getting this to install on my Hero.
Firstly I can't run 'adb remount'. I get:
remount failed: Operation not permitted
I'm not sure why.
So instead of remounting from there, I went into the adb shell and ran:
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
This remounts rw /system just fine. I then I proceed with my install. I copy busybox to the /system/xbin folder and I run:
./busybox --install -s /system/xbin
However, I again get:
./busybox: permission denied
I have root access and I'm in su. I was able to mount system rw and make the xbin directly, along with copy the file to the folder, so I'm curious why i'm not able to install this.
Would anyone have a clue? It's 2:30am here, so I might be missing something or doing something incredibly stupid and just not realizing it.
Thanks!
VoXHTC said:
So I followed that and accomplished it, I'm wondering what next? I have an app called SU File Manager & Terminal installed and it requires busybox. I don't see any new features or benefits? Am I not looking in the right place?
Click to expand...
Click to collapse
posted by mistake ignore...
mrbrice said:
I'm having a permission issue getting this to install on my Hero.
Firstly I can't run 'adb remount'. I get:
remount failed: Operation not permitted
I'm not sure why.
So instead of remounting from there, I went into the adb shell and ran:
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
This remounts rw /system just fine. I then I proceed with my install. I copy busybox to the /system/xbin folder and I run:
./busybox --install -s /system/xbin
However, I again get:
./busybox: permission denied
I have root access and I'm in su. I was able to mount system rw and make the xbin directly, along with copy the file to the folder, so I'm curious why i'm not able to install this.
Would anyone have a clue? It's 2:30am here, so I might be missing something or doing something incredibly stupid and just not realizing it.
Thanks!
Click to expand...
Click to collapse
Make sure that busybox is executable:
chmod 755 busybox
VoXHTC said:
So I followed that and accomplished it, I'm wondering what next? I have an app called SU File Manager & Terminal installed and it requires busybox. I don't see any new features or benefits? Am I not looking in the right place?
Click to expand...
Click to collapse
Busybox gives you command line tools. I have no idea what that particular app uses it for. That is something you have to speak to them about.
packetlss said:
Make sure that busybox is executable:
chmod 755 busybox
Click to expand...
Click to collapse
Yeah, I had thought that, so I made sure it was executable before hand
Code:
# ls -la
ls -la
drwxrwxrwx system system 2009-11-29 07:48 nandroid
drwxrwxrwx system system 2009-11-29 05:00 rosie_scroll
-rwxrwxrwx system system 698452 2009-11-28 21:47 busybox
# ./busybox --install -s /system/xbin
./busybox --install -s /system/xbin
./busybox: permission denied
Any other idea why it might be giving me this?
mrbrice said:
Yeah, I had thought that, so I made sure it was executable before hand
Code:
# ls -la
ls -la
drwxrwxrwx system system 2009-11-29 07:48 nandroid
drwxrwxrwx system system 2009-11-29 05:00 rosie_scroll
-rwxrwxrwx system system 698452 2009-11-28 21:47 busybox
# ./busybox --install -s /system/xbin
./busybox --install -s /system/xbin
./busybox: permission denied
Any other idea why it might be giving me this?
Click to expand...
Click to collapse
Don't run it from /sdcard, copy it to /data/local.
/sdcard is mounted noexec.
packetlss said:
Don't run it from /sdcard, copy it to /data/local.
/sdcard is mounted noexec.
Click to expand...
Click to collapse
Ahh. My bad. I had followed your instructions initially but I must not have changed the permissions that time around (messing around at 2am, you make mistakes. )
Thanks for all the help, not only compiling this, but for the assistance getting it working.
Cheers man. Good job.
If you guys want some other applets added to it, let me know and I'll compile a new one.
I think I got all the useful stuff in there though.
packetlss said:
If you guys want some other applets added to it, let me know and I'll compile a new one.
I think I got all the useful stuff in there though.
Click to expand...
Click to collapse
I'm trying to make my own custom ROM (nothing too fancy, just something to fit my needs) and I'm including busybox. It would be nice to have a list of all the busybox utilities (after the --install thing) so I could do the appropriate changes to the update-script manually.
Thanks for taking your time with this
Time to necro this thread again
New busybox out for those that cares, 1.15.3.
Code:
Code:
BusyBox v1.15.3 (2009-12-13 23:28:29 CET) multi-call binary
Copyright (C) 1998-2008 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.
Usage: busybox [function] [arguments]...
or: function [arguments]...
BusyBox is a multi-call binary that combines many common Unix
utilities into a single executable. Most people will create a
link to busybox for each function they wish to use and BusyBox
will act like whatever it was invoked as!
Currently defined functions:
[, [[, arping, ash, awk, basename, bbconfig, bunzip2, bzcat, bzip2,
cat, catv, chattr, chgrp, chmod, chown, chroot, chrt, cksum, clear,
cmp, cp, cpio, cut, date, dc, dd, depmod, devmem, df, diff, dirname,
dmesg, dnsd, dnsdomainname, dos2unix, du, echo, egrep, env, ether-wake,
expr, false, fbset, fbsplash, fdisk, fgrep, find, fold, free,
freeramdisk, fsck, fuser, getopt, grep, gunzip, gzip, head, hexdump,
hostname, ifconfig, insmod, install, ip, ipaddr, ipcalc, iplink,
iproute, iprule, iptunnel, kill, killall, killall5, last, length, less,
ln, losetup, ls, lsattr, lsmod, md5sum, mkdir, mkdosfs, mkfifo,
mkfs.vfat, mknod, mkswap, mktemp, modprobe, more, mount, mountpoint,
mv, nc, netstat, nice, nmeter, nohup, nslookup, od, patch, pidof, ping,
pipe_progress, printenv, printf, ps, pscan, pwd, rdev, readlink,
realpath, renice, reset, resize, rm, rmdir, rmmod, route, sed, seq,
setconsole, setlogcons, setsid, sh, sha1sum, showkey, sleep, sort,
split, stat, strings, stty, sum, swapoff, swapon, switch_root, sync,
sysctl, tac, tail, tar, tcpsvd, tee, telnet, telnetd, test, tftp, time,
top, touch, tr, traceroute, true, tty, tunctl, udpsvd, umount, uname,
uncompress, uniq, unix2dos, unzip, uptime, usleep, uudecode, uuencode,
vi, watch, wc, wget, which, who, whoami, xargs, yes, zcat
Changelog?
Thanks for the binary by the way
EDIT: This is weird... the binary you just posted is smaller compared to the previous one I had, 682Kb compared to 1.78Mb. Why such a big difference?
Nazgulled said:
Changelog?
Thanks for the binary by the way
EDIT: This is weird... the binary you just posted is smaller compared to the previous one I had, 682Kb compared to 1.78Mb. Why such a big difference?
Click to expand...
Click to collapse
Bug fix release. 1.15.3 has fixes for ash (compilation with signed chars, SIGHUP handling fix), awk, flash_eraseall (fix for newer kernel headers), grep, mount (mount -a won't mount everyting again on 2nd run), ping (fix unaligned access), split (accepts "-" as stdin now), build system (parallel build).
This may be a super n00b question, but I previously ran a MoDaCo ROM, and was able to use the A2SD instructions from code.google.com to get my apps to store to the SD. Today I upgraded to Fresh 2.0d, (which is awesome btw) and no matter what I do, it seems that downloading apps keeps using my system memory. here is the output of busybox df -h
Filesystem Size Used Available Use% Mounted on
tmpfs 95.5M 0 95.5M 0% /dev
tmpfs 4.0M 4.0K 4.0M 0% /sqlite_stmt_journals
/dev/block/mtdblock3 170.0M 135.4M 34.6M 80% /system
/dev/block/mtdblock5 159.5M 60.2M 99.3M 38% /data
/dev/block/mtdblock4 130.0M 1.1M 128.9M 1% /cache
/dev/block/mmcblk0p2 677.4M 71.4M 569.9M 11% /system/sd
/dev/block//vold/179:1
2.9G 2.1G 788.2M 73% /sdcard
Is there a step that I'm missing somewhere? My use% on the /data partition seems to keep going up.
Thanks in advance for the help!!
See next comment
&RoidRage said:
See next comment
Click to expand...
Click to collapse
I'm sorry, I don't understand.
SchmediumTux said:
This may be a super n00b question, but I previously ran a MoDaCo ROM, and was able to use the A2SD instructions from code.google.com to get my apps to store to the SD. Today I upgraded to Fresh 2.0d, (which is awesome btw) and no matter what I do, it seems that downloading apps keeps using my system memory. here is the output of busybox df -h
Filesystem Size Used Available Use% Mounted on
tmpfs 95.5M 0 95.5M 0% /dev
tmpfs 4.0M 4.0K 4.0M 0% /sqlite_stmt_journals
/dev/block/mtdblock3 170.0M 135.4M 34.6M 80% /system
/dev/block/mtdblock5 159.5M 60.2M 99.3M 38% /data
/dev/block/mtdblock4 130.0M 1.1M 128.9M 1% /cache
/dev/block/mmcblk0p2 677.4M 71.4M 569.9M 11% /system/sd
/dev/block//vold/179:1
2.9G 2.1G 788.2M 73% /sdcard
Is there a step that I'm missing somewhere? My use% on the /data partition seems to keep going up.
Thanks in advance for the help!!
Click to expand...
Click to collapse
1. Remount the drive by typing this command: adb remount
2. Enter the phone shell: adb shell
3. Type ls -l /data to get a directory listing of /data
4. Look for an entry named app. If the following is to the right of the entry, a2sd is running: "-> /system/sd/app"
5. If not, type the following commands:
cp /data/app/* /system/sd/app
cp /data/app-private/* /system/sd/app-private
rm -r /data/app
rm -r /data/app-private
ln -s /data/app /system/sd/app
ln -s /data/app-private /system/sd/app
That should, hopefully, fix your issue.
Wow.. Thank you sooo much. I'm still in the early learning stages of Linux and android, so I needed that direction. I really appreciate you taking the time to help me out^^
tkirton said:
1. Remount the drive by typing this command: adb remount
2. Enter the phone shell: adb shell
3. Type ls -l /data to get a directory listing of /data
4. Look for an entry named app. If the following is to the right of the entry, a2sd is running: "-> /system/sd/app"
5. If not, type the following commands:
cp /data/app/* /system/sd/app
cp /data/app-private/* /system/sd/app-private
rm -r /data/app
rm -r /data/app-private
ln -s /data/app /system/sd/app
ln -s /data/app-private /system/sd/app
That should, hopefully, fix your issue.
Click to expand...
Click to collapse
I get the results you said but yet everytime i download an app my internal memory is going down. I also cd /system/sd/app and everything I dl'ed is in there, do i need to redo my sd?
ABNinja said:
I get the results you said but yet everytime i download an app my internal memory is going down. I also cd /system/sd/app and everything I dl'ed is in there, do i need to redo my sd?
Click to expand...
Click to collapse
it wont help as it seems to be a bug.
Fresh 2.0d A2SD Apps not being moved out of internal memory
I have HTC HERO, Fresh 2.0d rom, 16gb sd card and RA 1.6.2. I have partitioned sd, created ext2, converted ext2 to ext3 and installed rom and apps. All apps load and function but they are being put into internal mem and copied rather than moved to sd\apps. Memory check shows internal and sd memory decreases with installation of apps.
Here's a screen shot of my command prompt showing that Apps and Apps Private are being reassigned to sd card properly:
Microsoft Windows [Version 6.0.6002]
Copyright (c) 2006 Microsoft Corporation. All rights reserved.
C:\Users\VP>cd\
C:\>cd tools
C:\tools>adb remount
* daemon not running. starting it now *
* daemon started successfully *
remount succeeded
C:\tools>adb shell
# ls -l /data
ls -l /data
drwxr-xr-x system system 2010-04-26 10:55 tombstones
drwx------ system system 2010-04-26 10:08 backup
prw-r--r-- system system 2010-04-23 16:32 gps_nmea_fifo
-rw-rw-rw- media system 12 2010-04-26 00:04 StreamingPacketLost.txt
-rw-rw-rw- media system 2 2010-04-26 12:11 pvcodec.txt
drwxrwxr-x system system 2010-04-26 11:54 system
drwxrwx--x system system 2010-04-23 16:28 anr
drwx------ root root 2010-04-26 10:09 agent
drwx------ root root 2010-04-23 16:27 agent_htc
lrwxrwxrwx root root 2010-04-23 16:27 app-private -> /system/sd
/app-private
lrwxrwxrwx root root 2010-04-23 16:27 app -> /system/sd/app
drwxrwxrwx bluetooth bluetooth 2010-04-26 10:09 btips
drwxrwxrwx root root 2010-04-23 16:27 DxDrm
drwxrwx--x system system 2010-04-26 10:54 dalvik-cache
lrwxrwxrwx root root 2010-04-23 16:27 drm -> /data/local
drwx------ root root 2010-04-26 10:07 property
drwxrwx--x system system 2010-04-26 10:54 data
drwxr-xr-x shell shell 2010-04-23 16:27 local
drwxrwxrwx wimax wimax 2010-04-23 16:27 wimax
drwxrwx--t system misc 2010-04-26 12:10 misc
drwxr-x--- root log 2010-04-23 16:27 dontpanic
drwxrwx--- root root 2010-04-23 16:27 lost+found
# exit
exit
C:\tools>
Please let me know what I can do to get A2sd working properly on Fresh 2.0d rom whether its a manual or auto version or any other fix. I use lots of apps and I am getting low memory warning from the system.
Thanks
Same problem here. Please help
Easy fix. just flash Tkirton's Darktremor A2SD zip in recovery. Works perfectly. http://forum.xda-developers.com/showthread.php?t=670087
What do you type in the terminal to make it show that infomation?
4SidedDie said:
What do you type in the terminal to make it show that infomation?
Click to expand...
Click to collapse
ls -l /data
That will give you a directory listing.
I installed apps2sd 2.5 and my internal memory went from 50 to 129.
Darktremor A2SD version 2.6.1
I get fielded with a lot of questions that ask "How can I verify if the Apps2SD (or a2sd) is working correctly." And many people, including myself, have written message after message regarding how you can check to see if your data is on the SD card.
I'm not complaining, mind you...I personally like the attention. But, I'm also trained from various programming jobs that require a lot of support (the one I'm currently at is a good example). When I see a lot of people asking the same questions, I think to myself "there's got to be an easier way to do this." That's when I start working on a program solution to the issue.
For those of you who are new to Apps2SD, here's what you do:
1. Follow the installation instructions on the first message in this thread: http://forum.xda-developers.com/showthread.php?t=670087
2. Once you are in the shell, type /system/bin/a2sd check. A report will print on your screen telling you if you have issues with your A2SD setup.
3. If you do run into issues, you can fix them easily by typing /system/bin/a2sd repair.
4. If nothing is setup, try running the installer again: /system/bin/a2sd install
Click to expand...
Click to collapse
Now, if you do decide to run the stock A2SD, or any other variant, here's how you check that version (this will also work for any version of Darktremor A2SD):
1. Setup your SD card. (Follow the steps If you have not setup your SD Card: http://forum.xda-developers.com/showthread.php?t=670087).
If you are using the A2SD that came with the kernel, you don't have to do step i. If you are using another version besides Darktremor, follow step i, but put the file you got from the A2SD provider on the SD card).
2. While still in recovery, flash the A2SD you obtained as you would a normal ROM. If you are using the included A2SD for your particular ROM, skip this step.
3. Reboot the phone and allow the phone to completely load.
4. Enter a phone shell by typing in a command window: adb shell
5. Type the following in adb shell:
cd /data/app
pwd
If you get /system/sd/app returned, then A2SD installed correctly. If you get /data/app, A2SD did not move the data.
Click to expand...
Click to collapse
You can manually move the data yourself by typing the following commands:
mkdir /system/sd/app
mkdir /system/sd/app-private
chmod 777 /system/sd/app
chmod 777 /system/sd/app-private
cp /data/app/* /system/sd/app
cp /data/app-private/* /system/sd/app-private
rm /data/app
rm /data/app-private
ln -s /system/sd/app /data/app
ln -s /system/sd/app-private /data/app-private
1. Flash the Darktremor A2SD 2.6.1: http://forum.xda-developers.com/showthread.php?t=670087
2. Reboot
3. Once the phone reboots, go into your phone (adb shell) and type:
/system/bin/a2sd cache
That will move the dalvik-cache. Once the move is complete, reboot the phone.
jtology said:
I have HTC HERO, Fresh 2.0d rom, 16gb sd card and RA 1.6.2. I have partitioned sd, created ext2, converted ext2 to ext3 and installed rom and apps. All apps load and function but they are being put into internal mem and copied rather than moved to sd\apps. Memory check shows internal and sd memory decreases with installation of apps.
Here's a screen shot of my command prompt showing that Apps and Apps Private are being reassigned to sd card properly:
Microsoft Windows [Version 6.0.6002]
Copyright (c) 2006 Microsoft Corporation. All rights reserved.
C:\Users\VP>cd\
C:\>cd tools
C:\tools>adb remount
* daemon not running. starting it now *
* daemon started successfully *
remount succeeded
C:\tools>adb shell
# ls -l /data
ls -l /data
drwxr-xr-x system system 2010-04-26 10:55 tombstones
drwx------ system system 2010-04-26 10:08 backup
prw-r--r-- system system 2010-04-23 16:32 gps_nmea_fifo
-rw-rw-rw- media system 12 2010-04-26 00:04 StreamingPacketLost.txt
-rw-rw-rw- media system 2 2010-04-26 12:11 pvcodec.txt
drwxrwxr-x system system 2010-04-26 11:54 system
drwxrwx--x system system 2010-04-23 16:28 anr
drwx------ root root 2010-04-26 10:09 agent
drwx------ root root 2010-04-23 16:27 agent_htc
lrwxrwxrwx root root 2010-04-23 16:27 app-private -> /system/sd
/app-private
lrwxrwxrwx root root 2010-04-23 16:27 app -> /system/sd/app
drwxrwxrwx bluetooth bluetooth 2010-04-26 10:09 btips
drwxrwxrwx root root 2010-04-23 16:27 DxDrm
drwxrwx--x system system 2010-04-26 10:54 dalvik-cache
lrwxrwxrwx root root 2010-04-23 16:27 drm -> /data/local
drwx------ root root 2010-04-26 10:07 property
drwxrwx--x system system 2010-04-26 10:54 data
drwxr-xr-x shell shell 2010-04-23 16:27 local
drwxrwxrwx wimax wimax 2010-04-23 16:27 wimax
drwxrwx--t system misc 2010-04-26 12:10 misc
drwxr-x--- root log 2010-04-23 16:27 dontpanic
drwxrwx--- root root 2010-04-23 16:27 lost+found
# exit
exit
C:\tools>
Please let me know what I can do to get A2sd working properly on Fresh 2.0d rom whether its a manual or auto version or any other fix. I use lots of apps and I am getting low memory warning from the system.
Thanks
Click to expand...
Click to collapse
Hey i just got finished installing A2SD 2.6.1 and i have a class 2 16gb sd card and my internal mem is reading like 74/159, is that normal?
I DID install the correct version for class 2 cards
and i did your /system/bin/a2sd check
and it looked like everthing checks ok
In A2SD status report i got this
[*] /data/app link active
[*] /data/app-private link active
[*] /data/dalvik-cache NOT active
No Cache flag file present
[X] Swap partition NOT present
i read that the other guy had 100+ mb free after A2SD and i also remember back on 1.5 when i had tried it out i got similar numbers.
Anything else i can do to maybe check if i did everything alright?
or maybe already know why im getting still such a low internal mem?
you should check out the GUI version of apps2sd http://forum.xda-developers.com/showthread.php?t=670098
2.5 just crashed my phone, the GUI version not only fixed all my problems but it sped everything up signaficantly. Im not an expert with computers either so this was very easy to use
You picked up the one that doesn't activate the cache on boot. Just type
/system/bin/a2sd cache in adb shell.
frostrunner said:
Hey i just got finished installing A2SD 2.6.1 and i have a class 2 16gb sd card and my internal mem is reading like 74/159, is that normal?
I DID install the correct version for class 2 cards
and i did your /system/bin/a2sd check
and it looked like everthing checks ok
In A2SD status report i got this
[*] /data/app link active
[*] /data/app-private link active
[*] /data/dalvik-cache NOT active
No Cache flag file present
[X] Swap partition NOT present
i read that the other guy had 100+ mb free after A2SD and i also remember back on 1.5 when i had tried it out i got similar numbers.
Anything else i can do to maybe check if i did everything alright?
or maybe already know why im getting still such a low internal mem?
Click to expand...
Click to collapse
tkirton said:
You picked up the one that doesn't activate the cache on boot. Just type
/system/bin/a2sd cache in adb shell.
Click to expand...
Click to collapse
Actually i did, and my memory stayed the same at 70~
fallentimm said:
you should check out the GUI version of apps2sd http://forum.xda-developers.com/showthread.php?t=670098
2.5 just crashed my phone, the GUI version not only fixed all my problems but it sped everything up signaficantly. Im not an expert with computers either so this was very easy to use
Click to expand...
Click to collapse
Wow...and you didn't even give me a chance to fix it.
Treve uses a GUI to set things up. Other than that, the basic concept is the same (it's based on my earlier Darktremor A2SD, which itself is based on the original Cyanogen Apps2SD). It pretty much follows the same method to move files as I do. His is easier to setup if you are new at this. I try to make mine automatically set things up.
Nothing is wrong with what he's doing...it's definitely a different way of doing it and, as long as it works, more power to him.