Take the 2-minute tour ×
Android Enthusiasts Stack Exchange is a question and answer site for enthusiasts and power users of the Android operating system. It's 100% free, no registration required.

I Create an article in Stack overflow. But as I found this site, I decide to ask the same question here, because I still need your help.

I have made the following steps:

  1. Launch Eclipse
  2. Go To: Window -> Open Perspective -> Other ...
  3. Select DDMS from the opened dialog
  4. Select "File explorer" tab.
  5. Press "Push a file onto the device" and select library which I wish to push.

    Failed to push selection: Read-only file system

  6. Minimize all opened windows and open Command Line
  7. Write: cd C:\android\android-sdk-windows\platform-tools enter
  8. Write: abd remount enter

    You will see remount successful

  9. Maximize Eclipse and try step 5.

    Failed to push selection: Out of memory

Error appears! What to do to solve this problem ... Please help.

ADDED

1) When I write ADB SHELL 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 
none /acct cgroup rw,cpuacct 0 0 
tmpfs /mnt/asec tmpfs rw,mode=755,gid=1000 0 0 
tmpfs /mnt/obb tmpfs rw,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,cpu 0 0
/dev/block/mtdblock0 /system yaffs2 rw 0 0 
/dev/block/mtdblock1 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/vold/179:0 /mnt/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 
/dev/block/vold/179:0 /mnt/secure/asec 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
tmpfs /mnt/sdcard/.android_secure tmpfs ro,size=0k,mode=000 0 0

2 ) Shel Prompt starts with: #

share|improve this question
2  
Development questions are considered off-topic here according to our FAQ. –  newuser May 19 '11 at 13:49
    
I read the word "Eclipse" so I voted this to close, but now that I read the rest of the post and the linked post, I'm starting to think that this is a good example of questions you get while developing an application that are not really development question. I can't retract my close vote, but I can warn other people not to cast close vote so fast. –  Lie Ryan May 19 '11 at 14:32
    
I agree with @Lie that this is a grey area. I say this should stay open for now. –  Al E. May 19 '11 at 14:42
    
@ViTo Brothers Apoyan: I have two questions 1) What output do you have when you do adb shell mount (this will give you all of the filesystems mounted in the device and their mount options)? 2) when you do adb shell, does the shell prompt starts with # (which indicates you're root) or $ (which indicates you're not root)? –  Lie Ryan May 19 '11 at 14:47
    
also you tagged this question with android-x86, android-x86 != android emulator running on x86 host machine. Are you actually using android-x86 or just the regular emulator? –  Lie Ryan May 19 '11 at 14:51
show 1 more comment

3 Answers 3

up vote 9 down vote accepted

Launch the emulator from the command line so that you can specify a /system partition size using the -partition-size <MB> option. For example, I use this to launch an emulator running Android 1.6 with a /system partition of 512 MB:

emulator -avd Donut -partition-size 512

...where "Donut" is whatever you named your AVD (you can check in Eclipse's AVD manager if you need to). The emulator binary should be in your tools/ directory within your SDK install, which for you appears to be C:\android\android-sdk-windows\tools, so be sure you cd into that directory first (or add it to your system's %Path%).

Eclipse may not pick up the emulator right away, or it may recognize it and then drop the connection. If either of those happens, click the view menu on the Devices tab (the little arrow next to the minimize button) and select "Reset adb" to get the connection back.

Once it shows up in your devices, do what you were trying to do earlier. Run adb remount to get the /system partition in read-write mode, then use Eclipse to push the file wherever you want. I tested with a couple of random files a minute ago and was able to push them to /system/xbin without any trouble.

For reference, here's the partition size and use of /system on my Donut emulator when I specify a 512 MB partition:

> adb shell df
...
/system: 508416K total, 61332K used, 447084K available (block size 4096)
...

But here's how it looks if I launch without specifying a size:

> adb shell df
...
/system: 65536K total, 61204K used, 4332K available (block size 4096)
...

Additionally, you can set command line options in your application's run configuration via Eclipse if you want to. Go into your Java perspective, then select Run->Run Configurations from the menu bar. Select your application in the left pane, and then pick the "Target" tab. At the bottom is a text box labeled "Additional Emulator Command Line Options", and you can add -partition-size <MBs> to that text box so that the emulator launched when you run your application will have a larger /system partition.

Note: You may have to add also -no-snapstorage or other options, to disable loading the existing snaphot, to the command line. It did not work without it for me.

share|improve this answer
    
Thank you very match !!! You solve my problem !!! thanks a lot !!!!!!! –  ViTo Brothers Apoyan May 20 '11 at 8:09
add comment

The easy way: restart your phone in Recovery mode, than mount System. Now you can push your file without a problem.

share|improve this answer
    
I assume you've missed the line /dev/block/mtdblock0 /system yaffs2 rw 0 0 in the question? So what should change when you mount it from recovery? Full is full, you don't gain additional space on a full file system by mounting it "from elsewhere". –  Izzy Nov 15 '13 at 11:28
add comment

How to solve: “Failed to push selection: Out of memory”

While creating new android virtual device(AVD).. on SD CARD tab type some value(100) in MB.

Really,It works for me!!

share|improve this answer
1  
This is not correct. Creating a virtual SD card will not help you push files to the /system partition as the question asks. They are completely unrelated storage areas. –  eldarerathis Mar 10 '12 at 16:39
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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