Comment puis-je enregistrer ma session de terminal Linux en mode texte et la partager ou la rejouer plus tard ?

Lecture de 3 minute(s)
0

Je souhaite enregistrer ma session de terminal Linux pour Amazon Elastic Compute Cloud (Amazon EC2) ou ma session SSH en mode texte. Je souhaite ensuite la partager ou la rejouer.

Brève description

Vous pouvez enregistrer votre session SSH ou votre session de terminal dans un fichier à l'aide de la commande script. Pour toute aide, vous pouvez exécuter la commande man script pour accéder au manuel de l'utilisateur.

Résolution

Enregistrez la session

  1. Ouvrez un terminal SSH :

    ssh -i /path/KEY_PAIR_NAME.pem INSTANCE_USERNAME@IP_ADDRESS

    Veillez à remplacer les valeurs d'espace réservé suivantes :

    • KEY_PAIR_NAME: le nom du fichier de votre paire de clés SSH
    • INSTANCE_USERNAME : Le nom d'utilisateur du compte utilisé pour lancer l'instance
    • IP_ADDRESS : L'adresse IP ou le nom DNS public de l'instance

    Pour en savoir plus, reportez-vous à Se connecter à votre instance Linux à l'aide d'un client SSH.

  2. Démarrez une session de script. Dans la commande suivante, --timing définit un fichier de synchronisation :

    $ script --timing=timingfile.tm typescript.txt
  3. Exécutez toutes les commandes que vous voulez enregistrer. Cela permet également d'enregistrer les sorties des commandes.

  4. Pour sortir de la session de script, tapez exit ou appuyez sur Ctrl-D.

  5. Les fichiers typescript.txt et timingfile.tm contiennent les données enregistrées. Vous pouvez partager ces fichiers selon vos besoins.

Rejouer la session

  1. Copiez les fichiers typescript.txt et timingfile.tm sur un serveur Linux ou Unix, ou relisez-les à partir du même serveur.

  2. Pour afficher la sortie complète du fichier typescript.txt sans délai, exécutez la commande suivante :

    $ cat typescript.txt
  3. Pour relire le fichier à un rythme normal, exécutez la commande suivante :

    $ scriptreplay --timing=timingfile.tm typescript.txt
  4. Pour relire le fichier avec un diviseur temporel et permettre une ré-exécution plus rapide, exécutez la commande suivante :

    $ scriptreplay --timing=timingfile.tm typescript.txt -d 10

    Remarque : les commandes script et scriptreplay de Linux sont préinstallées par défaut. Vous n'avez donc pas besoin de les installer séparément. Pour les réinstaller, exécutez l'une des commandes suivantes, en fonction de votre système d'exploitation :

    Ubuntu 18 et Ubuntu 20

    sudo apt install bsdutils

    RHEL 7, RHEL 8, Amazon Linux 1, Amazon Linux 2 et Amazon Linux 2023

    sudo yum install util-linux

Informations connexes

Comment enregistrer des sessions SSH établies à partir d'un hôte Bastion

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 7 mois