Getting better over time : Troubleshooting Chrome OS updates
One of the salient features of Chrome OS is its ability to do transparent updates with little or no interaction from the user. This not only ensures the user is always protected, it also improves performance and features over time.
If you administer a fleet of chrome devices, I recommend you read this support on how to correctly configure this. It goes through all the autoupdate (AU) terminologies and suggests best practices which will help you in long run.
If you administer a fleet of chrome devices, I recommend you read this support on how to correctly configure this. It goes through all the autoupdate (AU) terminologies and suggests best practices which will help you in long run.
How to check if AU is properly working in your network
- I'll strongly recommend to enable reporting using your admin console. This will allow devices to send its OS version to the reporting engine.
- Then use the Admin SDK APIs to generate reports for devices in your domain, grouped by major version. I recommend you write your own scripts, but you can try third party tools like these to understand what the APIs are capable of.
- If you have lots of different networks, try to generate separate reports for devices in different networks to see if any of them are further behind than others.
- If you do notice some devices are not getting updates, look for the following failure patterns
- Check if the devices are being blocked from reaching update engine. White-list these domains if you need to implement ACLs.
- If you have enabled "scattered" updates, disable it for those users. "Scattered" updates is not good for devices which are not used every single day.
- If your devices never get updates, you may have to reach out to Google's enterprise support team for deeper analysis.
How to check what my devices should be at ?
Google publishes all the version numbers for all of its chrome devices at this location: http://cros-omahaproxy.appspot.com/. If you know what hardware you have, you should be able to find the latest stable, beta and dev version numbers there. Here is what it looks like for CR-48s and original Samsung chromebooks.
Understanding AU Logs
- You can extract the AU logs from the device very easily using the following steps
- Go to chrome://net-internals#chromeos
- Click on "store debug logs". This creates a compressed archive in the "Download folder"
- After exploding the compressed archive, look for files under "/var/log/update_engine" which has all the AU related logs
- Find the latest log file there and open it up in an editor
- The AU request would look something like this<request protocol="3.0" version="ChromeOSUpdateEngine-0.1.0.0" updaterversion="ChromeOSUpdateEngine-0.1.0.0" installsource="scheduler" ismachine="1"><os version="Indy" platform="Chrome OS" sp="4319.96.0_i686"></os><app appid="{9D137383-EB72-4BA9-A523-91AC0853F8AD}" version="4319.96.0" track="stable-channel" lang="en-US" board="parrot-signed-mp-v3keys" hardware_class="PARROT RAIL A-D 3974" delta_okay="true" fw_version="Google_Parrot.2685.37.0" ec_version="00BE107A00" ><updatecheck targetversionprefix=""></updatecheck><event eventtype="3" eventresult="2" previousversion=""></event></app></request>
- Interpretation of the request
- Current version of the OS: 4319.96.0_i686
- Hardware is : PARROT (find more info here)
- Lang="en-US" means its a US version of hardware
- track="stable-channel" means this is requested a stable update
- Lang="en-US" means its a US version of hardware
- track="stable-channel" means its requesting a stable update
- The AU response would look something like this
[1121/083519:INFO:omaha_request_action.cc(717)] Omaha request response: <?xml version="1.0" encoding="UTF-8"?><response protocol="3.0" server="prod"><daystart elapsed_days="2516" elapsed_seconds="23720"/><app appid="{9D137383-EB72-4BA9-A523-91AC0853F8AD}" status="ok"><updatecheck status="noupdate"/><event status="ok"/></app></response> - Interpretation of response
- status="noupdate" means there are no updates available for this particular device - If your device is getting "noupdate" even though its supposed to be on a newer version, something may be wrong. If this goes on for a few days, contact support to troubleshoot further.
Comments