Résoudre les problèmes liés à votre EC2 instance Amazon à l'aide de la console EC2 série - Amazon Elastic Compute Cloud

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Résoudre les problèmes liés à votre EC2 instance Amazon à l'aide de la console EC2 série

À l'aide de la console EC2 série, vous pouvez résoudre les problèmes de démarrage, de configuration réseau et autres en vous connectant au port série de votre instance.

Utilisez les instructions relatives au système d'exploitation de votre instance et à l'outil que vous avez configuré sur votre instance.

Note

Avant de commencer, assurez-vous d'avoir rempli les conditions requises, y compris la configuration de l'outil de dépannage que vous avez choisi.

GNUGRUB(abréviation de GNU GRand Unified Bootloader, communément appeléGRUB) est le chargeur de démarrage par défaut pour la plupart des systèmes d'exploitation Linux. GRUBDans le menu, vous pouvez sélectionner le noyau dans lequel démarrer ou modifier les entrées du menu pour changer le mode de démarrage du noyau. Cela peut être utile lors de la résolution des problèmes d'une instance défaillante.

Le GRUB menu s'affiche pendant le processus de démarrage. Le menu n'est pas accessible en mode normalSSH, mais vous pouvez y accéder via la console EC2 série.

Vous pouvez démarrer en mode mono-utilisateur ou en mode d'urgence. Le mode utilisateur unique démarre le noyau à un niveau d'exécution inférieur. Par exemple, il peut monter le système de fichiers mais pas activer le réseau, ce qui vous permet d'effectuer la maintenance nécessaire pour réparer l'instance. Le mode d'urgence est similaire au mode utilisateur unique, sauf que le noyau fonctionne au niveau d'exécution le plus bas possible.

Pour démarrer en mode utilisateur unique
  1. Connectez-vous à la console série de l'instance.

  2. Redémarrez l'instance à l'aide de la commande suivante.

    [ec2-user ~]$ sudo reboot
  3. Pendant le redémarrage, lorsque le GRUB menu apparaît, appuyez sur n'importe quelle touche pour arrêter le processus de démarrage.

  4. Dans le GRUB menu, utilisez les flèches pour sélectionner le noyau dans lequel démarrer, puis appuyez e sur votre clavier.

  5. Utilisez les touches fléchées pour localiser votre curseur sur la ligne contenant le noyau. La ligne commence par l'un linux ou l'autre ou linux16 en fonction de AMI celui qui a été utilisé pour lancer l'instance. Pour Ubuntu, deux lignes commençant par linux doivent toutes deux être modifiées à l'étape suivante.

  6. À la fin de la ligne, ajoutez le mot single.

    Voici un exemple pour Amazon Linux 2.

    linux /boot/vmlinuz-4.14.193-149.317.amzn2.aarch64 root=UUID=d33f9c9a-\ dadd-4499-938d-ebbf42c3e499 ro console=tty0 console=ttyS0,115200n8 net.ifname\ s=0 biosdevname=0 nvme_core.io_timeout=4294967295 rd.emergency=poweroff rd.she\ ll=0 single
  7. Appuyez sur Ctrl+X pour démarrer en mode utilisateur unique.

  8. À l'logininvite, entrez le nom d'utilisateur de l'utilisateur basé sur un mot de passe que vous avez configuré précédemment, puis appuyez sur Entrée.

  9. À l'invite Password, entrez le mot de passe, puis appuyez sur Entrée.

 

Pour démarrer en mode d'urgence

Suivez les mêmes étapes que le mode utilisateur unique, mais à l'étape 6, ajoutez le mot à la emergency place desingle.

La touche System Request (SysRq), parfois qualifiée de SysRq « magique », peut être utilisée pour envoyer directement une commande au noyau, en dehors d'un shell, et le noyau répondra, indépendamment de ce que fait le noyau. Par exemple, si l'instance ne répond plus, vous pouvez utiliser la SysRq clé pour indiquer au noyau de se bloquer ou de redémarrer. Pour plus d'informations, voir Magic SysRq key sur Wikipedia.

Vous pouvez utiliser des SysRq commandes dans le client basé sur le navigateur EC2 Serial Console ou dans un SSH client. La commande d'envoi d'une requête d'interruption est différente pour chaque client.

Pour l'utiliser SysRq, choisissez l'une des procédures suivantes en fonction du client que vous utilisez.

Browser-based client
À utiliser SysRq dans le client basé sur le navigateur de la console série
  1. Connectez-vous à la console série de l'instance.

  2. Pour envoyer une demande d'interruption, appuyez sur CTRL+0 (zéro). Si votre clavier prend cette fonctionnalité en charge, vous pouvez également envoyer une demande d'interruption à l'aide de la touche Pause ou Attn.

    [ec2-user ~]$ CTRL+0
  3. Pour émettre une SysRq commande, appuyez sur la touche de votre clavier correspondant à la commande requise. Par exemple, pour afficher une liste de SysRq commandes, appuyez surh.

    [ec2-user ~]$ h

    Le résultat de la commande h est similaire à ce qui suit.

    [ 1169.389495] sysrq: HELP : loglevel(0-9) reboot(b) crash(c) terminate-all-tasks(e) memory-full-oom-kill(f) kill-all-tasks(i) thaw-filesystems (j) sak(k) show-backtrace-all-active-cpus(l) show-memory-usage(m) nice-all-RT-tasks(n) poweroff(o) show-registers(p) show-all-timers(q) unraw(r ) sync(s) show-task-states(t) unmount(u) show-blocked-tasks(w) dump-ftrace-buffer(z)
SSH client
À utiliser SysRq dans un SSH client
  1. Connectez-vous à la console série de l'instance.

  2. Pour envoyer une demande d'interruption, appuyez sur ~B (tilde, suivi de B majuscule).

    [ec2-user ~]$ ~B
  3. Pour émettre une SysRq commande, appuyez sur la touche de votre clavier correspondant à la commande requise. Par exemple, pour afficher une liste de SysRq commandes, appuyez surh.

    [ec2-user ~]$ h

    Le résultat de la commande h est similaire à ce qui suit.

    [ 1169.389495] sysrq: HELP : loglevel(0-9) reboot(b) crash(c) terminate-all-tasks(e) memory-full-oom-kill(f) kill-all-tasks(i) thaw-filesystems (j) sak(k) show-backtrace-all-active-cpus(l) show-memory-usage(m) nice-all-RT-tasks(n) poweroff(o) show-registers(p) show-all-timers(q) unraw(r ) sync(s) show-task-states(t) unmount(u) show-blocked-tasks(w) dump-ftrace-buffer(z)
    Note

    La commande que vous utilisez pour envoyer une demande d'interruption peut être différente selon le SSH client que vous utilisez.

La fonctionnalité Special Admin Console (SAC) de Windows permet de dépanner une instance Windows. En vous connectant à la console série de l'instance et en l'utilisantSAC, vous pouvez interrompre le processus de démarrage et démarrer Windows en mode sans échec.

Note

Si vous l'activez SAC sur une instance, les EC2 services qui reposent sur la récupération du mot de passe ne fonctionneront pas depuis la EC2 console Amazon. Les agents de EC2 lancement de Windows on Amazon (EC2ConfigEC2Launchv1 et EC2Launch v2) s'appuient sur la console série pour exécuter diverses tâches. Ces tâches ne s'exécutent pas correctement lorsque vous SAC les activez sur une instance. Pour plus d'informations sur les agents de EC2 lancement de Windows sur Amazon, consultezConfiguration de votre instance Amazon EC2 Windows. Si vous l'activezSAC, vous pourrez le désactiver ultérieurement. Pour de plus amples informations, veuillez consulter Désactiver SAC et menu de démarrage.

Utiliser SAC

À utiliser SAC
  1. Connectez-vous à la console série

    Si cette option SAC est activée sur l'instance, la console série affiche l'SAC>invite.

    SACinvite affichée dans la console série.
  2. Pour afficher les SAC commandes, entrez?, puis appuyez sur Entrée.

    Sortie attendue

    Entrez un point d'interrogation pour afficher les SAC commandes.
  3. Pour créer un canal d'invite de commandes (tel que cmd0001 ou cmd0002), saisissez cmd, puis appuyez sur Entrée.

  4. Pour afficher le canal d'invite de commandes, appuyez sur ESC, puis appuyez sur TAB.

    Sortie attendue

    Le canal d'invite de commande.
  5. Pour changer de chaîne, appuyez simultanément sur ESC+ TAB +numéro de chaîne. Par exemple, pour passer à la cmd0002 chaîne (si elle a été créée), appuyez sur ESC+ TAB +2.

  6. Entrez les informations d'identification requises par le canal d'invite de commandes.

    L'invite de commandes nécessite des informations d'identification.

    L'invite de commande correspond au shell de commande complet que vous obtenez sur un bureau, mais ne permet toutefois pas la lecture des caractères déjà envoyés.

    Un shell de commande complet.

PowerShell peut également être utilisé à partir de l'invite de commande.

Notez que vous devrez peut-être définir la préférence de progression en mode silencieux.

PowerShell dans l'invite de commande.

Utiliser le menu de démarrage

Si le menu de démarrage de l'instance est activé et qu'elle est redémarrée après la connexion viaSSH, le menu de démarrage devrait s'afficher, comme suit.

Menu de démarrage dans l'invite de commande.

Commandes du menu de démarrage

ENTER

Démarre l'entrée sélectionnée du système d'exploitation.

TAB

Bascule vers le menu Outils.

ESC

Annule et redémarre l'instance.

ESCsuivie par 8

Revient à appuyer sur F8. Affiche les options avancées de l'élément sélectionné.

ESCtouche + flèche gauche

Retourne au menu de démarrage initial.

Note

La ESC touche à elle seule ne vous ramène pas au menu principal car Windows attend de voir si une séquence d'échappement est en cours.

Options de démarrage avancées.

Désactiver SAC et menu de démarrage

Si vous activez SAC le menu de démarrage, vous pourrez désactiver ces fonctionnalités ultérieurement.

Utilisez l'une des méthodes suivantes pour désactiver SAC le menu de démarrage d'une instance.

PowerShell
Pour désactiver SAC et le menu de démarrage sur une instance Windows
  1. Connectez-vous à votre instance et effectuez les étapes suivantes à partir d'une ligne de PowerShell commande élevée.

  2. Désactivez d'abord le menu de démarrage en changeant la valeur en no.

    bcdedit /set '{bootmgr}' displaybootmenu no
  3. Désactivez-le ensuite en SAC modifiant la valeur enoff.

    bcdedit /ems '{current}' off
  4. Appliquez la configuration mise à jour en redémarrant l'instance.

    shutdown -r -t 0
Command prompt
Pour désactiver SAC et le menu de démarrage sur une instance Windows
  1. Connectez-vous à votre instance et exécutez les étapes suivantes à partir de l'invite de commandes.

  2. Désactivez d'abord le menu de démarrage en changeant la valeur en no.

    bcdedit /set {bootmgr} displaybootmenu no
  3. Désactivez-le ensuite en SAC modifiant la valeur enoff.

    bcdedit /ems {current} off
  4. Appliquez la configuration mise à jour en redémarrant l'instance.

    shutdown -r -t 0