Questo documento include informazioni per la risoluzione dei problemi relativi a una VM che non risponde a causa di errori di tipo kernel panic.
Prima di iniziare
- Se vuoi registrare l'output della porta seriale in Cloud Logging, acquisisci familiarità con Cloud Logging.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso a servizi e API di 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
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
- La voce relativa al file
initramfs
che corrisponde al kernel non esiste nel filegrub.cfg
. - Il file
initramfs
non viene generato nella directory/boot
durante l'installazione del kernel. - Il file
initramfs
viene generato solo parzialmente o è danneggiato. Connettiti alla console seriale e accedi alla VM dalla console Google Cloud .
Nella console Google Cloud , fai clic su Reimposta in corrispondenza della VM.
Dopo la visualizzazione della schermata iniziale di GRUB, seleziona il kernel o il kernel di recupero che funzionava prima dell'errore e avvia il sistema. La VM viene avviata con il kernel selezionato.
Quando la VM è accessibile, puoi avviare una connessione SSH alla VM.
Identifica la causa del problema e intervieni di conseguenza.
Ad esempio, se il file
initramfs
manca o è danneggiato, segui questi passaggi:Genera il file
initramfs
corrispondente al kernel originale utilizzando il comandodracut
:dracut -f /boot/initramfs-KERNEL_VERSION.img KERNEL_VERSION
Sostituisci
KERNEL_VERSION
con la versione corrente del kernel della VM. Ad esempio,3.10.0-1160.95.1.el7.x86_64
.Aggiorna il file
grub2.cfg
utilizzando il comandogrub2-mkconfig
, ad esempio:grub2-mkconfig -o /boot/grub2/grub.cfg
Dopo aver generato il file
initramfs
, la VM può essere avviata senza errori.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Per saperne di più, consulta la sezione Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .
Kernel panic
Un kernel panic può verificarsi quando il kernel non è in grado di caricare correttamente i moduli
initramfs
necessari per l'avvio del sistema operativo guest.Un'altra forma kernel panic può verificarsi in una situazione in cui il kernel non è in grado di gestire una determinata richiesta e si protegge arrestandosi. Un kernel panic può avere luogo su una VM Compute Engine che esegue RedHat, SUSE, CentOS o Ubuntu.
Messaggi di errore comuni
Di seguito sono riportati alcuni degli eventi kernel panic più comuni:
Kernel panic - not syncing: hung_task: blocked tasks
Kernel Panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Kernel panic - not syncing: NMI: Not continuing
Kernel panic - not syncing: out of memory. panic_on_oom is selected
Kernel panic - not syncing: Fatal Machine check
Cause comuni
Gli errori di tipo kernel panic possono verificarsi per diversi motivi. Ecco alcuni dei più comuni:
Sintomi
Un sintomo frequente del verificarsi di un kernel panic nell'istanza di una VM è che il kernel non consente di connettersi alla VM, anche se si utilizza la console seriale.
È necessario controllare i log della console seriale per identificare il kernel caricato dal sistema operativo guest, ad esempio:
Controlla anche l'errore di tipo kernel panic. Questo errore si trova normalmente nella riga del kernel che corrisponde all'avvio della VM o alla fine dei log della console seriale con più tracce dello stack delle chiamate.[ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Initializing cgroup subsys cpuacct [ 0.000000] Linux version 3.10.0-1160.95.1.el7.x86_64 (mockbuild@x86-vm-42.build.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu Aug 10 10:46:21 EDT 2023
L'esempio seguente mostra un evento di kernel panic causato da problemi relativi a
initramfs
:[ 1.520840] No filesystem could mount root, tried: [ 1.520840] [ 1.521964] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) [ 1.523495] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 3.10.0-1160.95.1.el7.x86_64 #1 [ 1.524932] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/11/2022 [ 1.526901] Call Trace: [ 1.527421] dump_stack+0x41/0x60 [ 1.527978] panic+0xe7/0x2ac [ 1.528578] mount_block_root+0x2be/0x2e6 [ 1.529693] ? do_early_param+0x95/0x95 [ 1.530441] prepare_namespace+0x135/0x16b [ 1.531237] kernel_init_freeable+0x203/0x22d [ 1.532081] ? rest_init+0xaa/0xaa [ 1.532808] kernel_init+0xa/0x103 [ 1.533395] ret_from_fork+0x35/0x40 [ 1.535229] Kernel Offset: 0x23a00000 from 0xffffffff81000000
Risolvi l'errore di tipo kernel panic
Per risolvere l'errore di tipo kernel panic, segui questi passaggi:
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-07-15 UTC.
-