Q: ibooks error: "Zero Kb of 9.22 EB" on Yosemite and failed downloads
I have recently upgraded from OS X mavericks to yosemite in a new mac mini.
The previously downloaded ibooks are available to read while the new free ibooks like "Apps At Work" AND "iPad Profiles Enterprise" both by apple are among few of downloads that finished consuming my bandwidth and completed 100% and then failed to download.
Every now and then it shows a cloud on book cover and I click on them to start a progress bar, which waits and then again fails to download. help I do not want to loose previously downloaded ibooks which and still download new ones.
Mac mini (Late 2012), OS X Yosemite (10.10)
Posted on Nov 10, 2014 11:13 PM
Hello The Above Post Was A Draft... This Is The Full Post,
I finally found the solution myself.
The main problem occurred due to slow internet connection <1mbps on files >500mb causing them to fail with the error message "Zero Kb of 9.22EB". The error message was repeated on every attempt due to ibook's inbuilt downloader system which relies on manifest.plist file instead of using its own brains like other download managers of 2014 like IDM have inbuilt (to check the CRC and Resume failed downloads).
The solution was:
0. Quit ibooks.
1. Find where my previously completed ibooks were saved using finder. You can do this by searching for .epub or .ibooks using finder's search box(make sure This Mac is selected on top which means you are searching your entire computer for files with that .epub or .ibooks extension). Once an existing ibook with any of the 2 extensions(.epub or .ibooks) is found then left-click(with mouse) on the found ibook and select Reveal in Finder to open the folder where the previously completed downloads are saved in your mac. There you can find a file called Books.plist which you can open with Xcode.
2. Once you open this Books.plist in Xcode, you can find in Key column an Expandable branch called Root. Expand this Root and you will find another Sub-Branch called Books. On Expanding Books you will find a set of sub-branches starting with Item 0. Each of this Items holds information about a book downloaded successfully previously, while their key called sourcePath has a value column which is holding the path where the incomplete and failed downloads are kept with manifest.plist file. You can also open this manifest.plist file in Xcode. To do so open finder and select Go in menu, there select Go to Folder and paste the text you copied from sourcePath value field previously. Note here in this pasted text remove all text after com.apple.iBooksX/ and click Go button which will open the folder of your target. Note the reason to do such a long process is the number in sourcePath value field may change depending upon your system/mac machine and I wanted to help without revealing that number present in that sourcePath value field in my mac.
3. Once you open this manifest.plist file in Xcode, you can find a familiar structure where Each Book item holds information regarding that book including the number of the sub-folder in your current directory which is holding that ebook and other variables. Note, here you will work in items from bottom-up.. meaning fix the last book item first and the first book item in the end of the process. You can not just open but also edit and save the modified information from Xcode to overwrite manifest.plist file in your current directory.
4. You need to delete that numbered folder in that item for the ibook which has failed in download.. make sure it is removed even from trash.. if it cannot be removed from trash then re-start mac and remove it from trash. Now set the following values in the item's attributes..Failed=No, In_Server_Que=No, Is_Initiated_By_Server=No, Paused= Yes. Note use drop-down at end of value fields instead of typing modified values and save. Then as you can see the name of the book there, goto ibooks again and click on the book with cloudy icon and see the download resume(if you haven't deleted the numbered folder) or see the download restart if you have deleted the numbered folder earlier. This time you can hope for it to download successfully. There also lies a .cache file and a sub-directory which is named com.apple.iBooksX/ similarly like its parent directory called com.apple.iBooksX/ which you can delete and also you can delete items from manifest.plist file in case of very repeated and annoying error messages after many repeated attempts to re-download. Do not clean mac memory or and do not try to do other tasks while ibook is downloading to ensure non-disruption of downloads.
Thats all It takes to fix this issue which Couldn't be solved till date by apple care enters in kolkata, apple phone support in india and online support both in apple community, via mail and on stack overflow.
Thanks
My suggestion to apple is that they should improve the ibooks downloader system(there are many open source downloaders like FDM, XDM, TorrentClients etc which can help them learn how to make a better download system) to allow intelligent scanning of broken downloads for resuming them even days later in download instead of marking them as failed downloads due to slow internet, because not all countries on earth get a T1 high speed internet connection.. most places still have 50kbps average speed... so broken downloads should be resumed and not marked as failed by looking up in manifest.plist file XML files.
Posted on Dec 8, 2014 7:54 AM