Categories
Apple iCloud

My Ongoing iCloud Issues (And a Possible Fix)

When technology “just works” it is absolutely fantastic. It can allow us to do things that we never thought possible. Technology can provide us interactions and efficiencies that were mere ideas only a short time ago. However, when technology goes awry, it can be a complete disaster. This is exhibited with my ongoing iCloud issues.

The Issue

The issue I am having with iCloud is that I cannot upload any files to iCloud Drive. When I do, it just sits and pretends it will upload the files, but it does not. The same goes with downloading files from iCloud Drive; no files can be downloaded. This renders iCloud entirely useless.

Now, this may not be a big issue if I only used iCloud randomly and sporadically; but that is not the case. I use Apple’s “Desktop & Documents folders” syncing feature, which allows any files I create in m “Documents” or “Desktop” folders to synchronize to all of my Macs and iCloud. This includes being able to access the files from within any application or on my iOS devices. Due the inability to upload or download any files to iCloud, these features are entirely broken.

Backstory

This actually began on December 1oth, 2019 after I upgraded my iMac to macOS Catalina 10.15.2. My MacBook Pro is usually on the developer version of macOS and it did not exhibit any of this behavior and was synchronizing files without a hitch. At first I thought it might have just been a fluke and that iCloud needed time to resynchronize everything. After a few days of not being able to synchronize anything, I contacted Apple Support.

Apple Support

When I contacted Apple support I was connected with a tech support person who attempted to help me. We did some testing, which included trying to upload files to iCloud on all of my devices and on different networks, rebooting the device, but none of these steps had any effect.

Since the first tech support person I contacted was not able to find a fix, I was transferred to a specialist. Over the course of a couple weeks we did various things, including:

  • Creating a test file and uploading it (does not work)
  • Creating a new account and trying to upload a file (does not work)
  • Trying to find any offending files that were not uploading and remove them (had no effect)
  • Uploading files via the web interface (which did and does still work)
  • Creating a file at a specific time and then gathering the logging information for 24 hours

After all of this testing and nothing working, the issue was sent to Engineering. Engineering came back with some questions and requests, and required screenshots on iOS of the issue. One of the things they requested was to install a configuration profile to gather some data. The log that was uploaded ended up being well over a gigabyte in size; and that was when it was compressed.

Partial Fix

Due to the complete hassle this has been I began looking for a fix on my own. As with any problem, it is best to search google. I came up with this solution from stackexchange.com. The following commands were entered into terminal:

killall bird
cd ~/Library/Application\ Support
rm -rf CloudDocs

These steps will do the following:

  1. Stop the “bird” service. The “bird” service is the service that controls uploading and downloading data to and from iCloud Drive.
  2. Change directories to the local user Application Support directory under the “Library” directory.
  3. Remove all of the cached files for iCloud.

When these have been done, you need to restart the computer, just to be on the safe side. When I did this on my MacBook Pro, it began downloading the file list in iCloud Drive. Once this was done, the biggest portion of the work began. That work is comparing the local copies of the files with the files that are stored in iCloud Drive. The length of time is depending on the number of locally stored files that you have.

Due to the amount of information I had on my MacBook Pro this ended up taking several hours. But once it was finished I tested uploading a file to iCloud Drive and it worked. I waited a couple of days to make sure things still worked. Upon verification, I then performed the same steps on my iMac and it produced the same results, albeit the amount of time it took on my iMac was a bit longer due to having more files on my iMac.

My iOS devices were another matter entirely. Because you do not have access to terminal on iOS, you cannot perform the same actions. The only steps you can do on iOS are:

  1. Open the Settings app.
  2. Click on your Name at the top to open up the iCloud settings.
  3. Tap on “iCloud” to open iCloud options.
  4. Scroll down to “iCloud”.
  5. Tap on iCloud Drive toggle switch to disable it. A popup may appear.
  6. Click on “Delete from iPhone” to confirm any documents that are not synchronized will be deleted. This will turn off iCloud Drive and delete any locally saved documents.
  7. Reboot the iOS device.
  8. Plug the iOS device into power.

You can then restart your device and perform the same steps to turn iCloud Drive back on. When I did this, it did not seem to have any effect, at first. After about 45 minutes the files that are stored in iCloud Drive populated. Unlike on macOS, I do not think any of the downloaded files that I had remained on the device. One last thing to keep in mind is that when you disable iCloud Drive on an iPhone it will also disable the Wallet app, because the Wallet app depends on iCloud Drive to function properly. So you will want to re-enable Wallet on your device as well. Disabling iCloud Drive will not remove your cards, so I am not sure what function requires iCloud Drive within the Wallet app.

Once I saw the list of files, I then created a test folder and verified that it would indeed upload and I could see it on my other devices. So, this seemed to work.

It may not strictly be necessary to plug the iOS device into power, but it cannot hurt because when an iOS device is connected to power, additional processes will run that may not run when the device is on power and this may ultimately speed up the population of the iCloud Drive files.

Possible Root Cause

While I cannot fully know, I think I have determined the cause of the issue. When it comes to any app, you are likely to have a “state” for something. In the case of Files, the “source of truth” is iCloud. I think that the synchronization information on my iMac somehow got corrupted and that corrupted information propagated to all of my devices. The only way to get things back into place was to erase the local cache and re-download all of the data from the server.

Closing Thoughts

As of this writing, everything seems to be working. I am somewhat disappointed that Apple could not find a solution, and I was left to find a solution on my own. Also, at the moment, my issue is still in Engineering, and I do not expect to hear back from my support representative about a fix for the issue. I am glad I was able to find a solution to get things back on track, but these types of things need to be handled by Apple in a much faster manner than they are now.

One way to mitigate this from happen would be for Apple to create some sort of automated testing that occurs on each device where it attempts to create a file and upload it to iCloud. If this does not happen within a period of time, say 24 hours, send a push notification that will trigger the resetting of the iCloud cache information stored on the device. This type of solution would be able to mitigate, if not eliminate, these types of issue because it would end up being proactive and not wait for the user to notice that something is wrong and attempt to find a solution with the help of Apple. I completely get that I may have just been a “lucky” one to run into this bug and it may only be affecting a small percentage of users. However, when you have 1.5 billion active devices, even one tenth of one percent is still 1.5 million people. Even if the percentage is much smaller, this type of solution could go a long way to improving user experience.

Categories
Technology

Two-Factor Authentication

One of the hardest things to do with the Internet is protect your information. The most common way to do this is to employ a username and password scheme. This technique can, and does work, it is not often the most secure. There are techniques to employ a T-N-O, or “Trust No One”, security model. However, for most users this is a bit too cumbersome to setup and maintain. There is a somewhat “happy” medium. It’s called “Two Factor Authentication”.

The basic user and password scheme is only one factor. It is considered one factor because the username, and possibly an email address, are typically viewable to all users of the site that you are using. Two-Factor authentication is where you add an additional “factor”, or method, for authenticating. A password is “something you know” and when you use enable two-factor authentication, the second factor is almost always “something you have”. This second factor can be a key fob, or very commonly, a phone. The device With some services, this can be done either by app or by an SMS message.

The reason one would enable two-factor authentication is to protect their information. When two-factor authentication is enabled and if someone does manage to obtain your username and password, they would need that “something you have” object to be able to complete the login. There are many services that are now offering two-factor authentication for logins. Some of these include Microsoft’s Live.com service (including Hotmail and Xbox logins on the web), Google, Apple, and many many more.

In case you have missed it, there were many celebrities whom had their iCloud backups retrieved by users. While Apple had previously allowed users to enable two-factor authentication it did not extend to their backup service, iCloud.com. Apple’s two-factor authentication now extends to iCloud.com logins as well. Those who stole the pictures were able to retrieve the photos from the celebrities iCloud backups.

Those who stole the pictures were able to access the information by resetting the user’s password and were able to easily guess the user’s “security questions”, because the answers to the questions is information that is easy to locate, given that they are individuals who are more easily recognized and are higher profile. Now, after you have enabled two-factor authentication for iCloud, you will be required to enter in a code sent to you via one of the mechanisms that you registered. When somebody does log in to your iCloud account on a non-recognized browser or device, you will receive an email stating so. If they are able to successfully login, then it is time to change your password, and deregister any devices that you may have an re-register them.

Enabling two-factor authentication will add a bit more complexity when you login, however given the benefits, it is well worth the cost of having a slightly more annoying login process.

Screen Shot 2014-09-16 at 6.46.33 PM

Categories
Daily Run Down

Daily Run Down 05/30/2013: Evening Edition

Here is this evening’s Daily Run Down.

Recalls

Social

General News

International

Politics

Obits

Health

Science/Space

Historical

Tips and Tricks

Gaming

Gadgets

Reviews

Law

Internet

Software/Apps

Security

London/Britain/UK

Funny

Chicagoland

Total Number of stories: 60

Look for more stories tomorrow.

Categories
Daily Run Down

Daily Run Down 05/30/2013: Evening Edition

Here is this evening’s Daily Run Down.

Recalls

Social

General News

International

Politics

Obits

Health

Science/Space

Historical

Tips and Tricks

Gaming

Gadgets

Reviews

Law

Internet

Software/Apps

Security

London/Britain/UK

Funny

Chicagoland

Total Number of stories: 60

Look for more stories tomorrow.

Categories
Daily Run Down

Daily Run Down 04/24/2013: Morning Edition

Here is this morning’s Daily Run Down.

International

Politics

Science/Space

Financial

Historical

Tips and Tricks

Gadgets

Law

Technology

Internet

Social

Mobile

Software/Apps

London/Britain/UK

Odd

Funny

Chicagoland

Total Number of stories: 61

Look for more news stories this evening.