Linux ターミナルセッションをテキストモードで記録し、後で共有または再生するにはどうすればよいですか?

所要時間1分
0

Amazon Elastic Compute Cloud (Amazon EC2) Linux ターミナルセッションまたは SSH セッションをテキストモードで記録し、後で共有または再生したいと考えています。

簡単な説明

script コマンドを使用して、SSH セッションまたはターミナルセッションをファイルに記録できます。ヘルプが必要な場合は、man script コマンドを実行してユーザーマニュアルにアクセスできます。

解決策

セッションの記録

  1. SSH ターミナルを開きます。

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

    以下のようにプレースホルダー値を置き換えます。

    • KEY_PAIR_NAME: SSH キーペアのファイル名
    • INSTANCE_USERNAME: インスタンスの起動に使用したアカウントのユーザー名
    • IP_ADDRESS: インスタンスの IP アドレスまたはパブリック DNS 名

    詳細については、「SSH クライアントを使用して Linux インスタンスに接続する」を参照してください。

  2. スクリプトセッションを開始します。次のコマンドでは、--timing はタイミングファイルを設定します。

    $ script --timing=timingfile.tm typescript.txt
  3. 記録するコマンドをすべて実行します。これにより、コマンドの出力も記録されます。

  4. スクリプトセッションを終了するには、exit と入力するか、Ctrl-D を押します。

  5. typescript.txt および timingfile.tm という名前のファイルには、記録されたデータが含まれます。これらのファイルは必要に応じて共有できます。

セッションの再生

  1. typescript.txt ファイルと timingfile.tm ファイルを Linux または Unix サーバーにコピーするか、同じサーバーから再生します。

  2. typescript.txt ファイルの完全な出力を遅滞なく表示するには、以下のコマンドを実行します。

    $ cat typescript.txt
  3. 通常のタイミングでファイルを再生するには、以下のコマンドを実行します。

    $ scriptreplay --timing=timingfile.tm typescript.txt
  4. タイミング除数を使用してファイルを再生し、より高速な再生にするには、以下のコマンドを実行します。

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

    **注:**Linux コマンドの scriptscriptreplay はデフォルトでプリインストールされているため、個別にインストールする必要はありません。インストールする必要がある場合は、使用しているオペレーティングシステムに応じて、以下のコマンドのいずれかを実行します。

    Ubuntu 18 および Ubuntu 20

    sudo apt install bsdutils

    RHEL 7、RHEL 8、Amazon Linux 1、Amazon Linux 2、および Amazon Linux 2023

    sudo yum install util-linux

関連情報

How to record SSH sessions established through a bastion host

AWS公式
AWS公式更新しました 7ヶ月前
コメントはありません

関連するコンテンツ