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 fournies pour le système d'exploitation de votre instance et pour l'outil que vous avez configuré sur votre instance.

Note

Avant de commencer, assurez-vous que vous avez réuni les conditions préalables, y compris la configuration de l'outil de votre choix.

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 modifier 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 via la console EC2 série. SSH

Vous pouvez démarrer en mode utilisateur unique ou en mode utilisateur unique 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 touches fléchées pour sélectionner le noyau de démarrage et 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 linux ou linux16 en fonction de AMI celle utilisée 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 avec 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 clé System Request (SysRq), parfois appelée SysRq « magic », peut être utilisée pour envoyer directement au noyau une commande, en dehors d'un shell. Le noyau répond indépendamment de ce qu'il fait. Par exemple, si l'instance a cessé de répondre, vous pouvez utiliser la SysRq clé pour indiquer au noyau de s'arrêter ou de redémarrer. Pour plus d'informations, consultez la page magic SysRq key sur Wikipedia.

Vous pouvez utiliser des SysRq commandes sur le client basé sur le navigateur de la EC2 Serial Console ou sur 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 sur le SysRq 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 exécuter une SysRq commande, appuyez sur la touche de votre clavier qui correspond à 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 exécuter une SysRq commande, appuyez sur la touche de votre clavier qui correspond à 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 permettant d'envoyer une requête d'interruption peut être différente selon le SSH client que vous utilisez.

La console d'administration spéciale (SAC) de Windows permet de résoudre les problèmes d'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 de mot de passe ne fonctionnent pas à partir de la EC2 console Amazon. Les agents de EC2 lancement 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 Windows on Amazon, consultezConfiguration de votre instance Amazon EC2 Windows. Si vous l'activezSAC, vous pouvez le désactiver ultérieurement. Pour de plus amples informations, veuillez consulter Désactiver SAC et le menu de démarrage.

Utiliser SAC

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

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

    SACL'invite s'affiche sur 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 canal, appuyez simultanément sur ESC+ TAB + numéro de canal. Par exemple, pour basculer vers le cmd0002 canal (s'il a été créé), 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'il est redémarré après la connexion viaSSH, vous devriez voir le menu de démarrage, 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 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 le menu de démarrage

Si vous activez SAC et le menu de démarrage, vous pouvez désactiver ces fonctions ultérieurement.

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

PowerShell
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 la ligne de PowerShell commande de niveau élevé.

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

    bcdedit /set '{bootmgr}' displaybootmenu no
  3. Désactivez ensuite SAC en 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 ensuite SAC en modifiant la valeur enoff.

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

    shutdown -r -t 0