Installa l'ambiente guest

Questa pagina spiega come installare manualmente l'ambiente guest sulle istanze di macchine virtuali (VM). L'ambiente guest è una raccolta di script, daemon e file binari che le istanze richiedono per l'esecuzione su Compute Engine. Per maggiori informazioni, vedi Ambiente guest.

Nella maggior parte dei casi, se utilizzi immagini del sistema operativo pubbliche fornite da Google, l'ambiente guest è incluso automaticamente. Per un elenco completo delle immagini del sistema operativo che includono automaticamente l'ambiente ospite, consulta Dettagli del sistema operativo.

Se l'ambiente guest non è installato o è obsoleto, installalo o aggiornalo. Per identificare questi scenari, consulta Quando installare o aggiornare l'ambiente guest.

Prima di iniziare

  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione verifica la tua identità per l'accesso ad API e servizi Google Cloud . Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il comando seguente:

      gcloud init

      Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

    2. Set a default region and zone.

Quando installare o aggiornare l'ambiente guest

Nella maggior parte dei casi, non è necessario installare o aggiornare manualmente l'ambiente guest. Consulta le sezioni seguenti per scoprire quando potrebbe essere necessario installare o aggiornare manualmente.

Controlla i requisiti di installazione

Prima di installare l'ambiente guest, utilizza la procedura Convalida l'ambiente guest per verificare se l'ambiente guest è in esecuzione sulla tua istanza. Se è disponibile sull'istanza, ma è obsoleto, aggiornalo.

Potresti dover installare l'ambiente guest nelle seguenti situazioni:

  • L'immagine del sistema operativo fornita da Google richiesta non ha l'ambiente guest installato.

  • Importa un'immagine personalizzata o un disco virtuale in Compute Engine e scegli di impedire l'installazione automatica dell'ambiente guest.

    Quando importi dischi virtuali o immagini personalizzate, puoi consentire a Compute Engine di installare l'ambiente guest per te. Tuttavia, se scegli di non installare l'ambiente guest durante la procedura di importazione, devi installarlo manualmente.

  • Puoi eseguire la migrazione delle VM a Compute Engine utilizzando Migrate to Virtual Machines.

Per installare l'ambiente guest, vedi Metodi di installazione.

Controllare i requisiti di aggiornamento

Potresti dover aggiornare l'ambiente guest nelle seguenti situazioni:

Per aggiornare l'ambiente guest, vedi Aggiorna l'ambiente guest.

Metodi di installazione

Puoi installare l'ambiente guest in diversi modi. Scegli una delle seguenti opzioni.

Sistemi operativi supportati

Puoi installare o aggiornare l'ambiente guest sulle VM che utilizzano le versioni delle immagini sistema operativo nel ciclo di vita di disponibilità generale (GA) o nella fase del ciclo di vita del supporto esteso.

Per visualizzare un elenco delle versioni delle immagini sistema operativo e della relativa fase del ciclo di vita su Compute Engine, consulta Dettagli del sistema operativo.

Limitazioni

Non puoi installare manualmente o utilizzare lo strumento di importazione per installare ambienti guest per Fedora CoreOS e sistemi operativi container-optimized (COS). Per COS, Google consiglia di utilizzare le immagini pubbliche fornite da Google, che includono l'ambiente guest come componente principale.

Installa l'ambiente guest

Per installare manualmente l'ambiente guest, seleziona uno dei seguenti metodi, a seconda della tua capacità di connetterti all'istanza:

Installa l'ambiente guest in loco

Utilizza questo metodo per installare l'ambiente guest se puoi connetterti all'istanza target tramite SSH. Se non riesci a connetterti all'istanza per installare l'ambiente guest, puoi invece installarlo clonandone il disco di avvio e utilizzando uno script di avvio.

Questa procedura è utile per le immagini importate se puoi connetterti utilizzando l'autenticazione basata su password SSH. Puoi utilizzarlo anche per reinstallare l'ambiente guest se hai almeno un account utente con SSH basato su chiavi funzionale.

CentOS/RHEL/Rocky

Completa i passaggi per la tua versione di CentOS/RHEL/Rocky.

Versione 10 e successive

  1. Verifica che la versione del tuo sistema operativo sia supportata.
  2. Determina la versione di CentOS/RHEL/Rocky. Poi, crea il file del repository di origine, /etc/yum.repos.d/google-cloud.repo:

    eval $(grep VERSION_ID /etc/os-release)
    sudo tee /etc/yum.repos.d/google-cloud.repo << EOM
    [google-compute-engine]
    name=Google Compute Engine
    baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-el${VERSION_ID%%.*}-x86_64-stable
    enabled=1
    gpgcheck=1
    repo_gpgcheck=0
    gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key-v${VERSION_ID%%.*}.gpg
    EOM
    
  3. Aggiorna gli elenchi di pacchetti:

    sudo yum makecache
    sudo yum updateinfo
    
  4. Installa i pacchetti dell'ambiente guest:

    sudo yum install -y google-compute-engine google-osconfig-agent
    
  5. Riavvia l'istanza. Poi, esamina il relativo log della console per assicurarti che l'ambiente guest venga caricato al riavvio.

  6. Connettiti all'istanza tramite SSH per la verifica. Per istruzioni dettagliate, vedi Connettiti all'istanza tramite SSH.

Versione 9 o precedenti

  1. Verifica che la versione del tuo sistema operativo sia supportata.
  2. Determina la versione di CentOS/RHEL/Rocky. Poi, crea il file del repository di origine, /etc/yum.repos.d/google-cloud.repo:

    eval $(grep VERSION_ID /etc/os-release)
    sudo tee /etc/yum.repos.d/google-cloud.repo << EOM
    [google-compute-engine]
    name=Google Compute Engine
    baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-el${VERSION_ID%%.*}-x86_64-stable
    enabled=1
    gpgcheck=1
    repo_gpgcheck=0
    gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
           https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
    EOM
    
  3. Aggiorna gli elenchi di pacchetti:

    sudo yum makecache
    sudo yum updateinfo
    
  4. Installa i pacchetti dell'ambiente guest:

    sudo yum install -y google-compute-engine google-osconfig-agent
    
  5. Riavvia l'istanza. Poi, esamina il relativo log della console per assicurarti che l'ambiente guest venga caricato al riavvio.

  6. Connettiti all'istanza tramite SSH per la verifica. Per istruzioni dettagliate, vedi Connettiti all'istanza tramite SSH.

Debian

Completa i passaggi per la tua versione di Debian.

Debian 13 e versioni successive

  1. Verifica che la versione del tuo sistema operativo sia supportata.
  2. Installa la chiave GPG del repository pubblico in /etc/apt/keyrings:

    sudo curl https://packages.cloud.google.com/apt/doc/apt-key.gpg -o /etc/apt/keyrings/google-keyring.gpg
    
  3. Determina il nome della distribuzione Debian. Poi, crea il file dell'elenco di origine, /etc/apt/sources.list.d/google-cloud.list:

    eval $(grep VERSION_CODENAME /etc/os-release)
    sudo tee /etc/apt/sources.list.d/google-cloud.list << EOM
    deb [signed-by=/etc/apt/keyrings/google-keyring.gpg] http://packages.cloud.google.com/apt google-compute-engine-${VERSION_CODENAME}-stable main
    EOM
    
  4. Aggiorna gli elenchi di pacchetti:

    sudo apt update
    
  5. Installa i pacchetti dell'ambiente guest:

    sudo apt install -y gce-configs-trixie google-compute-engine google-osconfig-agent
    
  6. Riavvia l'istanza. Poi, esamina il relativo log della console per assicurarti che l'ambiente guest venga caricato al riavvio.

  7. Connettiti all'istanza tramite SSH per la verifica. Per istruzioni dettagliate, vedi Connettiti all'istanza tramite SSH.

Debian 12 e versioni precedenti

  1. Verifica che la versione del tuo sistema operativo sia supportata.
  2. Installa la chiave GPG del repository pubblico:

    curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
    
  3. Determina il nome della distribuzione Debian. Poi, crea il file dell'elenco di origine, /etc/apt/sources.list.d/google-cloud.list:

    eval $(grep VERSION_CODENAME /etc/os-release)
    sudo tee /etc/apt/sources.list.d/google-cloud.list << EOM
    deb http://packages.cloud.google.com/apt google-compute-engine-${VERSION_CODENAME}-stable main
    deb http://packages.cloud.google.com/apt google-cloud-packages-archive-keyring-${VERSION_CODENAME}-stable main
    EOM
    
  4. Aggiorna gli elenchi di pacchetti:

    sudo apt update
    
  5. Installa i pacchetti dell'ambiente guest:

    sudo apt install -y google-cloud-packages-archive-keyring
    sudo apt install -y google-compute-engine google-osconfig-agent
    
  6. Riavvia l'istanza. Poi, esamina il relativo log della console per assicurarti che l'ambiente guest venga caricato al riavvio.

  7. Connettiti all'istanza tramite SSH per la verifica. Per istruzioni dettagliate, vedi Connettiti all'istanza tramite SSH.

Ubuntu

  1. Verifica che la versione del tuo sistema operativo sia supportata.

  2. Attiva il repository Universe. Canonical pubblica i pacchetti per il proprio ambiente guest nel repository Universe.

    sudo apt-add-repository universe
  3. Aggiorna gli elenchi di pacchetti:

    sudo apt update
  4. Installa i pacchetti dell'ambiente guest:

    sudo apt install -y google-compute-engine google-osconfig-agent
    
  5. Riavvia l'istanza. Poi, esamina il relativo log della console per assicurarti che l'ambiente guest venga caricato al riavvio.

  6. Connettiti all'istanza tramite SSH per la verifica. Per istruzioni dettagliate, vedi Connettiti all'istanza tramite SSH.

SLES

  1. Verifica che la versione del tuo sistema operativo sia supportata.

  2. Attiva il modulo Cloud pubblico.

    product=$(sudo SUSEConnect --list-extensions | grep -o "sle-module-public-cloud.*")
    [[ -n "$product" ]] && sudo SUSEConnect -p "$product"
    
  3. Aggiorna gli elenchi di pacchetti:

    sudo zypper refresh
  4. Installa i pacchetti dell'ambiente guest:

    sudo zypper install -y google-guest-{agent,configs,oslogin} \
    google-osconfig-agent
    sudo systemctl enable /usr/lib/systemd/system/google-*
    
  5. Riavvia l'istanza. Poi, esamina il relativo log della console per assicurarti che l'ambiente guest venga caricato al riavvio.

  6. Connettiti all'istanza tramite SSH per la verifica. Per istruzioni dettagliate, vedi Connettiti all'istanza tramite SSH.

Windows

Prima di iniziare, verifica che la versione del tuo sistema operativo sia supportata.

Per installare l'ambiente guest Windows, esegui i seguenti comandi in un prompt PowerShell elevato nella versione 3.0 o successiva. Il comando Invoke-WebRequest richiede PowerShell versione 3.0 o successive.

  1. Scarica e installa GooGet.

    [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;
    Invoke-WebRequest https://github.com/google/googet/releases/download/v2.18.3/googet.exe -OutFile $env:temp\googet.exe;
    & "$env:temp\googet.exe" -root C:\ProgramData\GooGet -noconfirm install -sources `
    https://packages.cloud.google.com/yuck/repos/google-compute-engine-stable googet;
    Remove-Item "$env:temp\googet.exe"
    

    Durante l'installazione, GooGet aggiunge contenuti all'ambiente di sistema. Al termine dell'installazione, avvia una nuova console PowerShell. In alternativa, fornisci il percorso completo del file googet.exe (C:\ProgramData\GooGet\googet.exe).

  2. Apri una nuova console e aggiungi il repository google-compute-engine-stable.

    googet addrepo google-compute-engine-stable https://packages.cloud.google.com/yuck/repos/google-compute-engine-stable
  3. Installa i pacchetti principali dell'ambiente guest Windows.

    googet -noconfirm install google-compute-engine-windows `
    google-compute-engine-sysprep google-compute-engine-metadata-scripts `
    google-compute-engine-vss google-osconfig-agent
    
  4. Installa il pacchetto facoltativo dell'ambiente guest Windows.

    googet -noconfirm install google-compute-engine-auto-updater

    Utilizzo del comando googet.

    Per visualizzare i pacchetti disponibili, esegui il comando googet available.

    Per visualizzare i pacchetti installati, esegui il comando googet installed.

    Per eseguire l'aggiornamento all'ultima versione del pacchetto, esegui il comando googet update.

    Per visualizzare altri comandi, esegui googet help.

Clona il disco di avvio e utilizza lo script di avvio

Se non riesci a connetterti a un'istanza per installare manualmente l'ambiente guest, installalo utilizzando questa procedura, che include i seguenti passaggi, completabili nella console Google Cloud o in Cloud Shell.

Questo metodo si applica solo alle distribuzioni Linux. Per Windows, utilizza uno degli altri due metodi di installazione.

Utilizza Cloud Shell per eseguire questa procedura. Per eseguire questa procedura se non utilizzi Cloud Shell, installa il processore JSON a riga di comando jq. Questo processore filtra l'output di gcloud CLI. jq è preinstallato in Cloud Shell.

CentOS/RHEL/Rocky

Completa i passaggi per la tua versione di CentOS/RHEL/Rocky.

Versione 10 e successive

  1. Verifica che la versione del tuo sistema operativo sia supportata.

  2. Crea una nuova istanza da utilizzare come istanza di recupero. Assegnale il nome rescue. L'istanza di recupero non deve necessariamente eseguire lo stesso sistema operativo Linux dell'istanza problematica. Questo esempio utilizza Debian 9 nell'istanza di recupero.

  3. Interrompi l'istanza problematica e crea una copia del suo disco di avvio.

    1. Imposta un nome di variabile per l'istanza problematica. Questa variabile semplifica il riferimento all'istanza nei passaggi successivi.

      export PROB_INSTANCE_NAME=VM_NAME

      Sostituisci VM_NAME con il nome dell'istanza problematica.

    2. Arresta l'istanza problematica.

      gcloud compute instances stop "$PROB_INSTANCE_NAME"
    3. Recupera il nome del disco di avvio per l'istanza problematica.

      export PROB_INSTANCE_DISK="$(gcloud compute instances describe \
      "$PROB_INSTANCE_NAME" --format='json' |  jq -r \
      '.disks[] | select(.boot == true) | .source')"
      
    4. Crea uno snapshot del disco di avvio.

      export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot"
      
      gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \
         --snapshot-names "$DISK_SNAPSHOT"
      
    5. Crea un nuovo disco dallo snapshot.

      export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk"
      
      gcloud compute disks create "$NEW_DISK" \
         --source-snapshot="$DISK_SNAPSHOT"
      
    6. Elimina lo snapshot.

      gcloud compute snapshots delete "$DISK_SNAPSHOT"
  4. Collega il nuovo disco all'istanza di recupero e monta il volume root per l'istanza di recupero. Poiché questa procedura collega un solo disco aggiuntivo, l'identificatore del dispositivo del nuovo disco è /dev/sdb. Per impostazione predefinita, CentOS/RHEL/Rocky Linux utilizza il primo volume su un disco come volume root, pertanto l'identificatore del volume deve essere /dev/sdb1. Per le configurazioni personalizzate, utilizza lsblk per determinare l'identificatore del volume.

    gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
  5. Connettiti all'istanza di recupero tramite SSH.

    gcloud compute ssh rescue
  6. Esegui questi passaggi sull'istanza di recupero.

    1. Monta il volume root del nuovo disco.

      export NEW_DISK_MOUNT_POINT="/tmp/sdb-root-vol"
      DEV="/dev/sdb1"
      sudo mkdir "$NEW_DISK_MOUNT_POINT"
      sudo mount -o nouuid "$DEV" "$NEW_DISK_MOUNT_POINT"
      
    2. Crea lo script rc.local.

      cat <<'EOF' >/tmp/rc.local
      #!/bin/bash
      echo "== Installing Google guest environment for CentOS/RHEL/Rocky Linux =="
      sleep 30 # Wait for network.
      echo "Determining CentOS/RHEL/Rocky Linux version..."
      eval $(grep VERSION_ID /etc/os-release)
      if [[ -z $VERSION_ID ]]; then
        echo "ERROR: Could not determine version of CentOS/RHEL/Rocky Linux."
        exit 1
      fi
      echo "Updating repo file..."
      tee "/etc/yum.repos.d/google-cloud.repo" << EOM
      [google-compute-engine]
      name=Google Compute Engine
      baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-el${VERSION_ID%%.*}-x86_64-stable
      enabled=1
      gpgcheck=1
      repo_gpgcheck=0
      gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key-v${VERSION_ID%%.*}.gpg
      EOM
      echo "Running yum makecache..."
      yum makecache
      echo "Running yum updateinfo..."
      yum updateinfo
      echo "Running yum install google-compute-engine..."
      yum install -y google-compute-engine
      rpm -q google-compute-engine
      if [[ $? -ne 0 ]]; then
        echo "ERROR: Failed to install ${pkg}."
      fi
      echo "Removing this rc.local script."
      rm /etc/rc.d/rc.local
      # Move back any previous rc.local:
      if [[ -f "/etc/moved-rc.local" ]]; then
        echo "Restoring a previous rc.local script."
        mv "/etc/moved-rc.local" "/etc/rc.d/rc.local"
      fi
      echo "Restarting the instance..."
      reboot
      EOF
      
    3. Esegui il backup del file rc.local esistente, sposta lo script temporaneo rc.local nella posizione sul disco montato, quindi imposta l'autorizzazione per l'esecuzione all'avvio. Lo script temporaneo sostituisce lo script originale al termine dell'avvio. Per farlo, esegui questo comando:

      if [ -f "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" ]; then
        sudo mv "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" \
        "$NEW_DISK_MOUNT_POINT/etc/moved-rc.local"
      fi
      sudo mv /tmp/rc.local "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local"
      sudo chmod 0755 "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local"
      sudo chown root:root "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local"
      
    4. Smonta il volume root del nuovo disco.

      sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir \
      "$NEW_DISK_MOUNT_POINT"
    5. Esci dalla sessione SSH e vai all'istanza di recupero.

  7. Scollega il nuovo disco dall'istanza di recupero.

    gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
  8. Crea un'istanza da usare come sostituzione. Quando crei l'istanza sostitutiva, specifica il nuovo disco come disco di avvio. Puoi creare l'istanza sostitutiva utilizzando la console Google Cloud :

    1. Nella console Google Cloud , vai alla pagina Istanze VM.

      Vai a Istanze VM

    2. Fai clic sull'istanza problematica, quindi su Crea simile.

    3. Specifica un nome per l'istanza sostitutiva. Nella sezione Disco di avvio, fai clic su Cambia e poi su Dischi esistenti. Seleziona il nuovo disco.

    4. Fai clic su Crea. L'istanza sostitutiva viene avviata automaticamente dopo la creazione.

    All'avvio dell'istanza sostitutiva, lo script rc.local temporaneo viene eseguito e installa l'ambiente guest. Per monitorarne l'avanzamento, ispeziona i log della console per verificare se sono presenti righe generate dallo script rc.local temporaneo. Per visualizzare i log, esegui questo comando:

    gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME

    Sostituisci REPLACEMENT_VM_NAME con il nome assegnato all'istanza sostitutiva.

    L'istanza sostitutiva si riavvia automaticamente al termine dello script rc.local temporaneo. Durante il secondo riavvio, puoi ispezionare il log della console per assicurarti che l'ambiente guest venga caricato.

  9. Verifica di poterti connettere all'istanza tramite SSH.

    Dopo aver verificato che l'istanza sostitutiva funziona, puoi arrestare o eliminare quella problematica.

Versione 9 o precedenti

  1. Verifica che la versione del tuo sistema operativo sia supportata.

  2. Crea una nuova istanza da utilizzare come istanza di recupero. Assegnale il nome rescue. L'istanza di recupero non deve necessariamente eseguire lo stesso sistema operativo Linux dell'istanza problematica. Questo esempio utilizza Debian 9 nell'istanza di recupero.

  3. Interrompi l'istanza problematica e crea una copia del suo disco di avvio.

    1. Imposta un nome di variabile per l'istanza problematica. Questa variabile semplifica il riferimento all'istanza nei passaggi successivi.

      export PROB_INSTANCE_NAME=VM_NAME

      Sostituisci VM_NAME con il nome dell'istanza problematica.

    2. Arresta l'istanza problematica.

      gcloud compute instances stop "$PROB_INSTANCE_NAME"
    3. Recupera il nome del disco di avvio per l'istanza problematica.

      export PROB_INSTANCE_DISK="$(gcloud compute instances describe \
      "$PROB_INSTANCE_NAME" --format='json' |  jq -r \
      '.disks[] | select(.boot == true) | .source')"
      
    4. Crea uno snapshot del disco di avvio.

      export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot"
      
      gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \
         --snapshot-names "$DISK_SNAPSHOT"
      
    5. Crea un nuovo disco dallo snapshot.

      export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk"
      
      gcloud compute disks create "$NEW_DISK" \
         --source-snapshot="$DISK_SNAPSHOT"
      
    6. Elimina lo snapshot:

      gcloud compute snapshots delete "$DISK_SNAPSHOT"
  4. Collega il nuovo disco all'istanza di recupero e monta il volume root per l'istanza di recupero. Poiché questa procedura collega un solo disco aggiuntivo, l'identificatore del dispositivo del nuovo disco è /dev/sdb. Per impostazione predefinita, CentOS/RHEL/Rocky Linux utilizza il primo volume su un disco come volume root, pertanto l'identificatore del volume deve essere /dev/sdb1. Per le configurazioni personalizzate, utilizza lsblk per determinare l'identificatore del volume.

    gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
  5. Connettiti all'istanza di recupero tramite SSH.

    gcloud compute ssh rescue
  6. Esegui questi passaggi sull'istanza di recupero.

    1. Monta il volume root del nuovo disco.

      export NEW_DISK_MOUNT_POINT="/tmp/sdb-root-vol"
      DEV="/dev/sdb1"
      sudo mkdir "$NEW_DISK_MOUNT_POINT"
      sudo mount -o nouuid "$DEV" "$NEW_DISK_MOUNT_POINT"
      
    2. Crea lo script rc.local.

      cat <<'EOF' >/tmp/rc.local
      #!/bin/bash
      echo "== Installing Google guest environment for CentOS/RHEL/Rocky Linux =="
      sleep 30 # Wait for network.
      echo "Determining CentOS/RHEL/Rocky Linux version..."
      eval $(grep VERSION_ID /etc/os-release)
      if [[ -z $VERSION_ID ]]; then
        echo "ERROR: Could not determine version of CentOS/RHEL/Rocky Linux."
        exit 1
      fi
      echo "Updating repo file..."
      tee "/etc/yum.repos.d/google-cloud.repo" << EOM
      [google-compute-engine]
      name=Google Compute Engine
      baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-el${VERSION_ID%%.*}-x86_64-stable
      enabled=1
      gpgcheck=1
      repo_gpgcheck=0
      gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
      https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
      EOM
      echo "Running yum makecache..."
      yum makecache
      echo "Running yum updateinfo..."
      yum updateinfo
      echo "Running yum install google-compute-engine..."
      yum install -y google-compute-engine
      rpm -q google-compute-engine
      if [[ $? -ne 0 ]]; then
        echo "ERROR: Failed to install ${pkg}."
      fi
      echo "Removing this rc.local script."
      rm /etc/rc.d/rc.local
      # Move back any previous rc.local:
      if [[ -f "/etc/moved-rc.local" ]]; then
        echo "Restoring a previous rc.local script."
        mv "/etc/moved-rc.local" "/etc/rc.d/rc.local"
      fi
      echo "Restarting the instance..."
      reboot
      EOF
      
    3. Esegui il backup del file rc.local esistente, sposta lo script temporaneo rc.local nella posizione sul disco montato, quindi imposta l'autorizzazione per l'esecuzione all'avvio. Lo script temporaneo sostituisce lo script originale al termine dell'avvio. Per farlo, esegui questo comando:

      if [ -f "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" ]; then
        sudo mv "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local" \
        "$NEW_DISK_MOUNT_POINT/etc/moved-rc.local"
      fi
      sudo mv /tmp/rc.local "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local"
      sudo chmod 0755 "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local"
      sudo chown root:root "$NEW_DISK_MOUNT_POINT/etc/rc.d/rc.local"
      
    4. Smonta il volume root del nuovo disco.

      sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir \
      "$NEW_DISK_MOUNT_POINT"
    5. Esci dalla sessione SSH e vai all'istanza di recupero.

  7. Scollega il nuovo disco dall'istanza di recupero.

    gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
  8. Crea un'istanza da usare come sostituzione. Quando crei l'istanza sostitutiva, specifica il nuovo disco come disco di avvio. Puoi creare l'istanza sostitutiva utilizzando la console Google Cloud :

    1. Nella console Google Cloud , vai alla pagina Istanze VM.

      Vai a Istanze VM

    2. Fai clic sull'istanza problematica, quindi su Crea simile.

    3. Specifica un nome per l'istanza sostitutiva. Nella sezione Disco di avvio, fai clic su Cambia e poi su Dischi esistenti. Seleziona il nuovo disco.

    4. Fai clic su Crea. L'istanza sostitutiva viene avviata automaticamente dopo la creazione.

    All'avvio dell'istanza sostitutiva, lo script rc.local temporaneo viene eseguito e installa l'ambiente guest. Per monitorarne l'avanzamento, ispeziona i log della console per verificare se sono presenti righe generate dallo script rc.local temporaneo. Per visualizzare i log, esegui questo comando:

    gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME

    Sostituisci REPLACEMENT_VM_NAME con il nome assegnato all'istanza sostitutiva.

    L'istanza sostitutiva si riavvia automaticamente al termine dello script rc.local temporaneo. Durante il secondo riavvio, puoi ispezionare il log della console per assicurarti che l'ambiente guest venga caricato.

  9. Verifica di poterti connettere all'istanza tramite SSH.

    Dopo aver verificato che l'istanza sostitutiva funziona, puoi arrestare o eliminare quella problematica.

Debian

  1. Verifica che la versione del tuo sistema operativo sia supportata

  2. Crea una nuova istanza da utilizzare come istanza di recupero. Assegnale il nome rescue. L'istanza di recupero non deve necessariamente eseguire lo stesso sistema operativo Linux dell'istanza problematica. Questo esempio utilizza Debian 9 nell'istanza di recupero.

  3. Interrompi l'istanza problematica e crea una copia del suo disco di avvio.

    1. Imposta un nome di variabile per l'istanza problematica. Questa variabile semplifica il riferimento all'istanza nei passaggi successivi.

      export PROB_INSTANCE_NAME=VM_NAME

      Sostituisci VM_NAME con il nome dell'istanza problematica.

    2. Arresta l'istanza problematica.

      gcloud compute instances stop "$PROB_INSTANCE_NAME"
    3. Recupera il nome del disco di avvio per l'istanza problematica.

      export PROB_INSTANCE_DISK="$(gcloud compute instances describe \
      "$PROB_INSTANCE_NAME" --format='json' |  jq -r \
      '.disks[] | select(.boot == true) | .source')"
      
    4. Crea uno snapshot del disco di avvio.

      export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot"
      
      gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \
         --snapshot-names "$DISK_SNAPSHOT"
      
    5. Crea un nuovo disco dallo snapshot.

      export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk"
      
      gcloud compute disks create "$NEW_DISK" \
         --source-snapshot="$DISK_SNAPSHOT"
      
    6. Elimina lo snapshot:

      gcloud compute snapshots delete "$DISK_SNAPSHOT"
  4. Collega il nuovo disco all'istanza di recupero e monta il volume root per l'istanza di recupero. Poiché questa procedura collega un solo disco aggiuntivo, l'identificatore del dispositivo del nuovo disco è /dev/sdb. Per impostazione predefinita, Debian utilizza il primo volume su un disco come volume root, pertanto l'identificatore del volume deve essere /dev/sdb1. Per le configurazioni personalizzate, utilizza lsblk per determinare l'identificatore del volume.

    gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
  5. Connettiti all'istanza di recupero tramite SSH.

    gcloud compute ssh rescue
  6. Esegui questi passaggi sull'istanza di recupero.

    1. Monta il volume root del nuovo disco.

      export NEW_DISK_MOUNT_POINT="/tmp/sdb-root-vol"
      DEV="/dev/sdb1"
      sudo mkdir "$NEW_DISK_MOUNT_POINT"
      sudo mount "$DEV" "$NEW_DISK_MOUNT_POINT"
      
    2. Crea lo script rc.local.

      cat <<'EOF' >/tmp/rc.local
      #!/bin/bash
      echo "== Installing Google guest environment for Debian =="
      export DEBIAN_FRONTEND=noninteractive
      sleep 30 # Wait for network.
      echo "Determining Debian version..."
      eval $(grep VERSION_CODENAME /etc/os-release)
      if [[ -z $VERSION_CODENAME ]]; then
       echo "ERROR: Could not determine Debian version."
       exit 1
      fi
      echo "Adding GPG key for Google cloud repo."
      curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
      echo "Updating repo file..."
      tee "/etc/apt/sources.list.d/google-cloud.list" << EOM
      deb http://packages.cloud.google.com/apt google-compute-engine-${VERSION_CODENAME}-stable main
      deb http://packages.cloud.google.com/apt google-cloud-packages-archive-keyring-${VERSION_CODENAME} main
      EOM
      echo "Running apt update..."
      apt update
      echo "Installing packages..."
      for pkg in google-cloud-packages-archive-keyring google-compute-engine; do
       echo "Running apt install ${pkg}..."
       apt install -y ${pkg}
       if [[ $? -ne 0 ]]; then
          echo "ERROR: Failed to install ${pkg}."
       fi
      done
      echo "Removing this rc.local script."
      rm /etc/rc.local
      # Move back any previous rc.local:
      if [[ -f "/etc/moved-rc.local" ]]; then
       echo "Restoring a previous rc.local script."
       mv "/etc/moved-rc.local" "/etc/rc.local"
      fi
      echo "Restarting the instance..."
      reboot
      EOF
      
    3. Esegui il backup del file rc.local esistente, sposta lo script temporaneo rc.local nella posizione sul disco montato, quindi imposta l'autorizzazione per l'esecuzione all'avvio. Lo script temporaneo sostituisce lo script originale al termine dell'avvio. Per farlo, esegui questo comando:

      if [[ -f "$NEW_DISK_MOUNT_POINT/etc/rc.local" ]]; then
         sudo mv "$NEW_DISK_MOUNT_POINT/etc/rc.local" \
         "$NEW_DISK_MOUNT_POINT/etc/moved-rc.local"
      fi
      sudo mv /tmp/rc.local "$NEW_DISK_MOUNT_POINT/etc/rc.local"
      sudo chmod 0755 "$NEW_DISK_MOUNT_POINT/etc/rc.local"
      sudo chown root:root "$NEW_DISK_MOUNT_POINT/etc/rc.local"
      
    4. Smonta il volume root del nuovo disco.

      sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir "$NEW_DISK_MOUNT_POINT"
    5. Esci dalla sessione SSH e vai all'istanza di recupero.

  7. Scollega il nuovo disco dall'istanza di recupero.

    gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
  8. Crea una nuova istanza da usare come sostituzione. Quando crei l'istanza sostitutiva, specifica il nuovo disco come disco di avvio. Puoi creare l'istanza sostitutiva utilizzando la console Google Cloud :

    1. Nella console Google Cloud , vai alla pagina Istanze VM.

      Vai a Istanze VM

    2. Fai clic sull'istanza problematica, quindi su Crea simile.

    3. Specifica un nome per l'istanza sostitutiva. Nella sezione Disco di avvio, fai clic su Cambia e poi su Dischi esistenti. Seleziona il nuovo disco.

    4. Fai clic su Crea. L'istanza sostitutiva viene avviata automaticamente dopo la creazione.

    All'avvio dell'istanza sostitutiva, lo script rc.local temporaneo viene eseguito e installa l'ambiente guest. Per monitorarne l'avanzamento, ispeziona i log della console per verificare se sono presenti righe generate dallo script rc.local temporaneo. Per visualizzare i log, esegui questo comando:

    gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME

    Sostituisci REPLACEMENT_VM_NAME con il nome assegnato all'istanza sostitutiva.

    L'istanza sostitutiva si riavvia automaticamente al termine dello script rc.local temporaneo. Durante il secondo riavvio, puoi ispezionare il log della console per assicurarti che l'ambiente guest venga caricato.

  9. Verifica di poterti connettere all'istanza tramite SSH.

    Dopo aver verificato che l'istanza sostitutiva funziona, puoi arrestare o eliminare quella problematica.

Ubuntu

  1. Verifica che la versione del tuo sistema operativo sia supportata

  2. Crea una nuova istanza da utilizzare come istanza di recupero. Assegnale il nome rescue. L'istanza di recupero non deve necessariamente eseguire lo stesso sistema operativo Linux dell'istanza problematica. Questo esempio utilizza Debian 9 nell'istanza di recupero.

  3. Interrompi l'istanza problematica e crea una copia del suo disco di avvio.

    1. Imposta un nome di variabile per l'istanza problematica. Questa variabile semplifica il riferimento all'istanza nei passaggi successivi.

      export PROB_INSTANCE_NAME=VM_NAME

      Sostituisci VM_NAME con il nome dell'istanza problematica.

    2. Arresta l'istanza problematica.

      gcloud compute instances stop "$PROB_INSTANCE_NAME"
    3. Recupera il nome del disco di avvio per l'istanza problematica.

      export PROB_INSTANCE_DISK="$(gcloud compute instances describe \
      "$PROB_INSTANCE_NAME" --format='json' |  jq -r \
      '.disks[] | select(.boot == true) | .source')"
      
    4. Crea uno snapshot del disco di avvio.

      export DISK_SNAPSHOT="${PROB_INSTANCE_NAME}-snapshot"
      
      gcloud compute disks snapshot "$PROB_INSTANCE_DISK" \
         --snapshot-names "$DISK_SNAPSHOT"
      
    5. Crea un nuovo disco dallo snapshot.

      export NEW_DISK="${PROB_INSTANCE_NAME}-new-disk"
      
      gcloud compute disks create "$NEW_DISK" \
         --source-snapshot="$DISK_SNAPSHOT"
      
    6. Elimina lo snapshot:

      gcloud compute snapshots delete "$DISK_SNAPSHOT"
  4. Collega il nuovo disco all'istanza di recupero e monta il volume root per l'istanza di recupero. Poiché questa procedura collega un solo disco aggiuntivo, l'identificatore del dispositivo del nuovo disco è /dev/sdb. Ubuntu etichetta il volume root 1 per impostazione predefinita, pertanto l'identificatore del volume dovrebbe essere*/dev/sdb*. Per configurazioni personalizzate, utilizza lsblk per determinare l'identificatore del volume.

    gcloud compute instances attach-disk rescue --disk "$NEW_DISK"
  5. Connettiti all'istanza di recupero tramite SSH.

    gcloud compute ssh rescue
  6. Esegui questi passaggi sull'istanza di recupero.

    1. Monta il volume root del nuovo disco.

      export NEW_DISK_MOUNT_POINT="/tmp/sdb-root-vol"
      DEV="/dev/sdb1"
      sudo mkdir "$NEW_DISK_MOUNT_POINT"
      sudo mount "$DEV" "$NEW_DISK_MOUNT_POINT"
      
    2. Crea lo script rc.local.

      cat <<'EOF' >/tmp/rc.local
      #!/bin/bash
      echo "== Installing a Linux guest environment for Ubuntu =="
      sleep 30 # Wait for network.
      echo "Running apt update..."
      apt update
      echo "Installing packages..."
      echo "Running apt install google-compute-engine..."
      apt install -y google-compute-engine
      if [[ $? -ne 0 ]]; then
       echo "ERROR: Failed to install ${pkg}."
      fi
      echo "Removing this rc.local script."
      rm /etc/rc.local
      # Move back any previous rc.local:
      if [[ -f "/etc/moved-rc.local" ]]; then
       echo "Restoring a previous rc.local script."
       mv "/etc/moved-rc.local" "/etc/rc.local"
      fi
      echo "Restarting the instance..."
      reboot
      EOF
      
    3. Esegui il backup del file rc.local esistente, sposta lo script temporaneo rc.local nella posizione sul disco montato, quindi imposta l'autorizzazione per l'esecuzione all'avvio. Lo script temporaneo sostituisce lo script originale al termine dell'avvio. Per farlo, esegui questo comando:

      if [[ -f "$NEW_DISK_MOUNT_POINT/etc/rc.local" ]]; then
         sudo mv "$NEW_DISK_MOUNT_POINT/etc/rc.local" \
         "$NEW_DISK_MOUNT_POINT/etc/moved-rc.local"
      fi
      sudo mv /tmp/rc.local "$NEW_DISK_MOUNT_POINT/etc/rc.local"
      sudo chmod 0755 "$NEW_DISK_MOUNT_POINT/etc/rc.local"
      sudo chown root:root "$NEW_DISK_MOUNT_POINT/etc/rc.local"
      
    4. Smonta il volume root del nuovo disco.

      sudo umount "$NEW_DISK_MOUNT_POINT" && sudo rmdir "$NEW_DISK_MOUNT_POINT"
    5. Esci dalla sessione SSH e vai all'istanza di recupero.

  7. Scollega il nuovo disco dall'istanza di recupero.

    gcloud compute instances detach-disk rescue --disk "$NEW_DISK"
  8. Crea una nuova istanza da usare come sostituzione. Quando crei l'istanza sostitutiva, specifica il nuovo disco come disco di avvio. Puoi creare l'istanza sostitutiva utilizzando la console Google Cloud :

    1. Nella console Google Cloud , vai alla pagina Istanze VM.

      Vai a Istanze VM

    2. Fai clic sull'istanza problematica, quindi su Crea simile.

    3. Specifica un nome per l'istanza sostitutiva. Nella sezione Disco di avvio, fai clic su Cambia e poi su Dischi esistenti. Seleziona il nuovo disco.

    4. Fai clic su Crea. L'istanza sostitutiva viene avviata automaticamente dopo la creazione.

    All'avvio dell'istanza sostitutiva, lo script rc.local temporaneo viene eseguito e installa l'ambiente guest. Per monitorarne l'avanzamento, ispeziona i log della console per verificare se sono presenti righe generate dallo script rc.local temporaneo. Per visualizzare i log, esegui questo comando:

    gcloud compute instances get-serial-port-output REPLACEMENT_VM_NAME

    Sostituisci REPLACEMENT_VM_NAME con il nome assegnato all'istanza sostitutiva.

    L'istanza sostitutiva si riavvia automaticamente al termine dello script rc.local temporaneo. Durante il secondo riavvio, puoi ispezionare il log della console per assicurarti che l'ambiente guest venga caricato.

  9. Verifica di poterti connettere all'istanza tramite SSH.

    Dopo aver verificato che l'istanza sostitutiva funziona, puoi arrestare o eliminare l'istanza problematica.

Aggiorna l'ambiente guest

Se ricevi un messaggio che indica che l'ambiente guest è obsoleto, aggiorna i pacchetti per il tuo sistema operativo come segue:

CentOS/RHEL/Rocky

Per aggiornare i sistemi operativi CentOS, RHEL e Rocky Linux, esegui i seguenti comandi:

sudo yum makecache
sudo yum install google-compute-engine google-compute-engine-oslogin \
google-guest-agent google-osconfig-agent

Debian

Per aggiornare i sistemi operativi Debian, esegui questi comandi:

sudo apt update
sudo apt install google-compute-engine google-compute-engine-oslogin \
google-guest-agent google-osconfig-agent

Ubuntu

Per aggiornare i sistemi operativi Ubuntu, esegui questi comandi:

sudo apt update
sudo apt install google-compute-engine google-compute-engine-oslogin \
google-guest-agent google-osconfig-agent

SLES

Per aggiornare i sistemi operativi SLES, esegui questi comandi:

sudo zypper refresh
sudo zypper install google-guest-{agent,configs,oslogin} \
google-osconfig-agent

Windows

Per aggiornare i sistemi operativi Windows, esegui questo comando:

googet update

Convalida l'ambiente guest

Puoi verificare se è installato un ambiente guest ispezionando i log di sistema emessi nella console durante l'avvio di un'istanza o generando un elenco dei pacchetti installati durante la connessione all'istanza.

Visualizzare i log della console previsti per l'ambiente guest

Questa tabella riassume l'output previsto per i log della console emessi dalle istanze con ambienti guest funzionanti all'avvio.

Sistema operativo Gestione servizio Output previsto:
CentOS/RHEL/Rocky Linux
Debian
Ubuntu
SLES
Container-Optimized OS 89 e versioni successive
systemd
google_guest_agent: GCE Agent Started (version YYYYMMDD.NN)
google_metadata_script_runner: Starting startup scripts (version YYYYMMDD.NN)
OSConfigAgent Info: OSConfig Agent (version YYYYMMDD.NN)
Container-Optimized OS 85 e versioni precedenti systemd
Started Google Compute Engine Accounts Daemon
Started Google Compute Engine Network Daemon
Started Google Compute Engine Clock Skew Daemon
Started Google Compute Engine Instance Setup
Started Google Compute Engine Startup Scripts
Started Google Compute Engine Shutdown Scripts
Windows
GCEGuestAgent: GCE Agent Started (version YYYYMMDD.NN)
GCEMetadataScripts: Starting startup scripts (version YYYYMMDD.NN)
OSConfigAgent Info: OSConfig Agent (version YYYYMMDD.NN)

Per visualizzare i log della console di un'istanza, segui questi passaggi.

Console

  1. Nella console Google Cloud , vai alla pagina Istanze VM.

    Vai a Istanze VM

    1. Seleziona l'istanza da esaminare.
    2. Riavvia o reimposta l'istanza.
    3. In Log, fai clic su Porta seriale 1 (console).
    4. Cerca l'output previsto nella tabella che precede questi passaggi.

gcloud

  1. Riavvia o reimposta l'istanza.
  2. Utilizza il sottocomando gcloud compute instances get-serial-port-output per connetterti utilizzando Google Cloud CLI. Ad esempio:

    gcloud compute instances get-serial-port-output VM_NAME

    Sostituisci VM_NAME con il nome dell'istanza da esaminare.

  3. Cerca l'output previsto nella tabella che precede questi passaggi.

Visualizzare i servizi caricati per versione del sistema operativo

Questa sezione riepiloga i servizi che devono essere caricati sulle istanze con ambienti guest funzionanti. Devi eseguire il comando per elencare i servizi dopo la connessione all'istanza. Pertanto, puoi eseguire questo controllo solo se hai accesso all'istanza.

CentOS/RHEL/Rocky

Per visualizzare i servizi caricati per le distribuzioni CentOS, RHEL e Rocky Linux, esegui questo comando:

sudo systemctl list-unit-files | grep google | grep enabled

L'output è simile al seguente:

google-disk-expand.service             enabled
google-guest-agent.service             enabled
google-osconfig-agent.service          enabled
google-shutdown-scripts.service        enabled
google-startup-scripts.service         enabled
google-oslogin-cache.timer             enabled

Debian

Per visualizzare i servizi caricati per le distribuzioni Debian, esegui questo comando:

sudo systemctl list-unit-files | grep google | grep enabled

L'output è simile al seguente:

google-disk-expand.service             enabled
google-guest-agent.service             enabled
google-osconfig-agent.service          enabled
google-shutdown-scripts.service        enabled
google-startup-scripts.service         enabled
google-oslogin-cache.timer             enabled

Ubuntu

Per visualizzare i servizi caricati per le distribuzioni Ubuntu, esegui questo comando:

sudo systemctl list-unit-files | grep google | grep enabled

L'output è simile al seguente:

google-guest-agent.service             enabled
google-osconfig-agent.service          enabled
google-shutdown-scripts.service        enabled
google-startup-scripts.service         enabled
google-oslogin-cache.timer             enabled

Container-Optimized OS

Per visualizzare i servizi caricati per le distribuzioni Container-Optimized OS, esegui il seguente comando:

sudo systemctl list-unit-files | grep google

L'output è simile al seguente:

var-lib-google.mount                   disabled
google-guest-agent.service             disabled
google-osconfig-agent.service          disabled
google-osconfig-init.service           disabled
google-oslogin-cache.service           static
google-shutdown-scripts.service        disabled
google-startup-scripts.service         disabled
var-lib-google-remount.service         static
google-oslogin-cache.timer             disabled 

SLES 12+

Per visualizzare i servizi caricati per le distribuzioni SLES 12+, esegui questo comando:

sudo systemctl list-unit-files | grep google | grep enabled

L'output è simile al seguente:

google-guest-agent.service              enabled
google-osconfig-agent.service           enabled
google-shutdown-scripts.service         enabled
google-startup-scripts.service          enabled
google-oslogin-cache.timer              enabled 

Windows

Per visualizzare i servizi caricati per le distribuzioni Windows, esegui questo comando:

Get-Service GCEAgent Get-ScheduledTask GCEStartup

L'output è simile al seguente:

Running    GCEAgent   GCEAgent    GCEStartup Ready

Visualizza i pacchetti installati per versione del sistema operativo

Questa sezione riepiloga i pacchetti che devono essere installati sulle istanze con ambienti guest funzionanti. Devi eseguire il comando per elencare i pacchetti installati dopo la connessione all'istanza. Pertanto, puoi eseguire questo controllo solo se hai accesso all'istanza.

Per saperne di più su questi pacchetti, consulta Componenti dell'ambiente guest.

CentOS/RHEL/Rocky

Per visualizzare i pacchetti installati e le versioni dei pacchetti per le distribuzioni CentOS, RHEL e Rocky Linux, esegui uno dei seguenti comandi:

  • Per visualizzare i pacchetti installati, esegui questo comando:

    rpm -qa --queryformat '%{NAME}\n' | grep -iE 'google|gce'

    L'output è simile al seguente. L'elenco dei pacchetti può variare. Potrebbero essere inclusi anche componenti come google-cloud-cli-anthoscli. Le immagini RHEL possono avere pacchetti specifici per la versione, ad esempio google-rhui-client-rhel8, o varianti specifiche per SAP.

    google-osconfig-agent
    google-compute-engine-oslogin
    google-guest-agent
    gce-disk-expand
    google-compute-engine
    google-cloud-cli
    google-cloud-ops-agent
    
  • Per visualizzare le versioni del pacchetto, esegui questo comando:

    rpm -qa --queryformat '%{NAME}-%{VERSION}\n' | grep -iE 'google|gce'

    L'output è simile al seguente. L'elenco dei pacchetti può variare. Potrebbero essere inclusi anche componenti come google-cloud-cli-anthoscli. Le immagini RHEL possono avere pacchetti specifici per la versione, ad esempio google-rhui-client-rhel8, o varianti specifiche per SAP.

    google-osconfig-agent-20251028.00
    google-compute-engine-oslogin-20250821.00
    google-guest-agent-20251205.00
    gce-disk-expand-20250820.00
    google-compute-engine-20250821.00
    google-cloud-cli-551.0.0
    google-cloud-ops-agent-2.63.0-1
    

Debian

Per visualizzare i pacchetti installati per le distribuzioni Debian, esegui questo comando:

apt list --installed | grep -i google

L'output è simile al seguente.

gce-disk-expand
google-cloud-packages-archive-keyring
google-cloud-sdk
google-compute-engine-oslogin
google-compute-engine
google-guest-agent
google-osconfig-agent

SUSE (SLES)

Per visualizzare i pacchetti installati e le versioni dei pacchetti per le distribuzioni SUSE (SLES), esegui uno dei seguenti comandi:

  • Per visualizzare i pacchetti installati, esegui questo comando:

    rpm -qa --queryformat '%{NAME}\n' | grep -iE 'google|gce'

    L'output è simile al seguente:

    google-guest-configs
    google-osconfig-agent
    google-guest-oslogin
    google-guest-agent
  • Per visualizzare le versioni del pacchetto, esegui questo comando:

    rpm -qa --queryformat '%{NAME}-%{VERSION}\n' | grep -iE 'google|gce'

    L'output è simile al seguente:

    google-guest-configs-20260112.00
    google-osconfig-agent-20251028.00
    google-compute-engine-oslogin-20250821.00
    google-guest-agent-20251205.00

Ubuntu

Per visualizzare i pacchetti installati e le versioni dei pacchetti per le distribuzioni Ubuntu, esegui questo comando:

apt list --installed | grep -i google

L'output è simile al seguente:

google-compute-engine-oslogin
google-compute-engine
google-guest-agent
google-osconfig-agent

Windows

Per visualizzare i pacchetti installati e le versioni dei pacchetti per le distribuzioni Windows, esegui questo comando:

googet installed

L'output è simile al seguente:

certgen
googet
google-compute-engine-auto-updater
google-compute-engine-driver-gga
google-compute-engine-driver-netkvm
google-compute-engine-driver-pvpanic
google-compute-engine-driver-vioscsi
google-compute-engine-metadata-scripts
google-compute-engine-powershell
google-compute-engine-sysprep
google-compute-engine-vss
google-compute-engine-windows
google-osconfig-agent

Passaggi successivi