Bobcares

Google Cloud SDK error “Unzip Failed: Error opening zip file” -How we fix it

by | May 18, 2021

While trying to install the Google Cloud SDK command-line interface using Windows Installer, users often receive the error “Unzip failed: Error opening ZIP file”.

As a part of our Google Cloud Support Services., we help our customers to fix errors related to Google cloud regularly.

Today, let us discuss the possible reasons for this error and its fixes.

What causes Google Cloud SDK “Unzip Failed: Error opening zip file” error

As we discussed earlier, while trying to install the Google Cloud SDK command-line interface using Windows Installer, it often results in the following error:

Google Cloud SDK Unzip Failed: Error opening zip file

This generally happens due to the firewall blocking some URLs that the installer tries to access. Before proceeding to the solution for this error, let us discuss the steps involved in installing Google Cloud SDK in Windows.

How to install Google Cloud SDK in Windows

Install of Google Cloud SDK in Windows involves the steps below:

  1. Download the Cloud SDK installer
  2. Launch the installer
  3. Install dependencies
  4. Run the installer
  5. Install Extensions

Let us now discuss each of these steps:

Download the Cloud SDK installer

The Cloud SDK installer can be downloaded from the URL:

https://dl.google.com/dl/cloudsdk/channels/rapid/GoogleCloudSDKInstaller.exe

Alternatively, open a PowerShell terminal and run the following PowerShell commands.

(New-Object Net.WebClient).DownloadFile("https://dl.google.com/dl/cloudsdk/channels/rapid/GoogleCloudSDKInstaller.exe", "$env:Temp\GoogleCloudSDKInstaller.exe")
& $env:Temp\GoogleCloudSDKInstaller.exe

 

Launch installer

Now, launch the installer and follow the prompts.  If we want to enable screen reader mode, select the Turn on screen reader mode option for a more streamlined screen reader experience.

Install dependencies

Cloud SDK requires Python. The supported versions are Python 3 (preferred, 3.5 to 3.8) and Python 2 (2.7.9 or higher).

The installer will install all necessary dependencies, including the needed Python version. While Cloud SDK currently uses Python 3 by default, we can use an existing Python installation if necessary by unchecking the option to Install Bundled Python.

Run the installer

After installation is completed, the installer presents several options:

Make sure that the following are selected:

  • Start Google Cloud SDK Shell
  • Run gcloud init

The installer starts a terminal window and runs the gcloud init command.

Install Extensions

The default installation does not include the App Engine extensions required to deploy an application using gcloud commands. These components can be installed using the Cloud SDK component manager.

At times, when it cannot recognize the find command, the installation becomes unsuccessful. Here, we need to ensure that the PATH environment variable includes the folder containing find. Usually, this is C:\WINDOWS\system32.

Further, if we have just uninstalled Cloud SDK, we will need to reboot the system before installing Cloud SDK again.

How to fix Google Cloud SDK “Unzip Failed: Error opening zip file” error

As this error happens mainly due to firewall blocks, we can try from a different network to find if it fixes the issue. Also, check the firewall for any blocks.

Another solution is to close the proxy and add a new env:

CLOUDSDK_PYTHON=\your Python27 path\python.exe

Alternatively, we could run the installer as administrator.

If we are behind a corporate proxy or firewall, the gcloud command-line tool may not be able to access the internet with its default settings.

The interactive Cloud SDK installers download components from the internet as part of the installation process, which may not work correctly if we are behind a proxy or firewall.

Proxy configuration to fix Google Cloud SDK “Unzip Failed: Error opening zip file” error

The gcloud command-line tool respects the http_proxy, https_proxy, and no_proxy variables set in the proxy configuration. Configure gcloud proxy settings only if we would like to use a different proxy. If gcloud proxy settings are set, they override the existing proxy configuration; this includes ignoring no_proxy.

Once we have the SDK installed, we can configure the proxy settings via Cloud SDK properties by using the typical gcloud config mechanism.

To start, set the type of proxy we use, the address and port on which to reach it:

gcloud config set proxy/type [PROXY_TYPE]
gcloud config set proxy/address [PROXY_IP_ADDRESS]
gcloud config set proxy/port [PROXY_PORT]

Cloud SDK supports the following values for PROXY_TYPE:

http, http_no_tunnel, socks4, socks5

Here, PROXY_IP_ADDRESS is the hostname or IP address of where the proxy can be reached. Further, PROXY_PORT is the port the proxy is running on (e.g. 8080).

For an authenticated proxy, we will need to set proxy username and password using properties, like so:

gcloud config set proxy/username [USERNAME]
gcloud config set proxy/password [PASSWORD]

Alternatively, to close your proxy:

add a new env: CLOUDSDK_PYTHON=\your Python27 path\python.exe

Avoid recording the proxy credentials in any logs (such as shell history or gcloud logs) or in the gcloud CLI configuration file, we can set the properties using environment variables, like so:

export CLOUDSDK_PROXY_USERNAME [USERNAME]
export CLOUDSDK_PROXY_PASSWORD [PASSWORD]

The gcloud CLI will not store these values anywhere. This way, we can store the credentials in an encrypted file locally or we can store them in a secure network location and retrieve them when necessary.

If we are behind a proxy and we receive SSL handshake errors, it is likely that proxy is a man-in-the-middle proxy that uses a custom CA. We need to set the following property to point to custom CA file:

gcloud config set core/custom_ca_certs_file [PATH_TO_CUSTOM_CA]

 

Conclusion

In short, the Google Cloud SDK setup wizard triggers the “Unzip Failed: Error opening zip file” error mainly due to firewall restrictions. Today, we saw how our Support Engineers fix them.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

SEE SERVER ADMIN PLANS

var google_conversion_label = "owonCMyG5nEQ0aD71QM";

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF