Prima di iniziare
- Se vuoi registrare l'output della porta seriale in Cloud Logging, familiarizza con Cloud Logging.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale viene verificata l'identità per l'accesso ai servizi e alle API Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti in Compute Engine nel seguente modo.
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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- 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.
Fai clic su Reimposta per la VM nella console Google Cloud.
Quando appare la schermata iniziale di GRUB, seleziona il kernel precedentemente funzionante o il kernel di ripristino, quindi avvia il sistema. Questo fa sì che la VM venga avviata con il kernel selezionato.
Quando la VM è accessibile, puoi avviare una connessione SSH alla VM.
Identifica la causa del problema e intraprendi ulteriori azioni di conseguenza.
Ad esempio, se il file
initramfs
è mancante o danneggiato, completa i seguenti passaggi:Genera il file
initramfs
corrispondente al kernel originale utilizzando il comandodracut
, ad esempio:dracut -f /boot/initramfs-3.10.0-1160.95.1.el7.x86_64.img 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
, puoi riavviare la VM 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.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Panico del kernel
Si può verificare un panic del kernel quando il kernel non è in grado di caricare correttamente i moduli
initramfs
, necessari per l'avvio del sistema operativo guest.Un'altra forma di panico del kernel può verificarsi in una situazione in cui il kernel non sa come gestire una determinata richiesta e si protegge arrestandosi. Il panico del kernel può verificarsi su una VM di Compute Engine che esegue RedHat, SUSE, CentOS o Ubuntu.
Messaggi di errore comuni
Di seguito sono riportati alcuni degli eventi di panico del kernel più comuni come riferimento:
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
L'errore di panico del kernel può verificarsi per diversi motivi. Ecco alcuni dei motivi più comuni:
Sintomi
Quando si verifica il panic del kernel su un'istanza VM, un sintomo comune è che il kernel non consente la connessione alla VM, anche quando si utilizza la console seriale.
Devi controllare i log della console seriale per identificare il kernel caricato dal sistema operativo guest, ad esempio:
[ 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 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu Aug 10 10:46:21 EDT 2023
Controlla anche l'errore di panico del kernel. Questo errore si verifica in genere sulla riga del kernel all'avvio della VM o alla fine dei log della console seriale con più analisi delle chiamate dello stack.L'esempio seguente mostra un evento di panic del kernel a causa di problemi
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 panico del kernel
Per risolvere l'errore di panico del kernel, 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 2024-08-02 UTC.
[{ "type": "thumb-down", "id": "hardToUnderstand", "label":"Hard to understand" },{ "type": "thumb-down", "id": "incorrectInformationOrSampleCode", "label":"Incorrect information or sample code" },{ "type": "thumb-down", "id": "missingTheInformationSamplesINeed", "label":"Missing the information/samples I need" },{ "type": "thumb-down", "id": "translationIssue", "label":"Problema di traduzione" },{ "type": "thumb-down", "id": "otherDown", "label":"Altra" }] [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Facile da capire" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Il problema è stato risolto" },{ "type": "thumb-up", "id": "otherUp", "label":"Altra" }] -