はじめに

サーバー運用やシステム保守の現場において、ターミナルでの操作記録は非常に重要です。いつ、誰が、どのようなコマンドを実行し、どのような結果になったのかを正確に把握することは、後々のトラブルシューティング、手順の再現、あるいはセキュリティ監査など、様々な場面で不可欠となります。

macOSには標準で「ターミナル.app」が付属していますが、より多機能でカスタマイズ性の高い「iTerm2」を愛用されている方も多いのではないでしょうか。

この記事では、そのiTerm2を使って、ターミナル操作のログを簡単かつ自動的に保存するための設定手順を、具体的に解説していきます。

なぜiTerm2でログ保存? 標準ターミナルとの違い

macOS標準のターミナルでも、メニューから「テキストを書き出す…」で現在の画面内容を保存したり、script コマンドを使ったりすることでログを保存すること自体は可能です。

しかし、script コマンドはセッション開始ごとに手動で実行する必要があり、少し手間がかかります。また、手動での書き出しは、その瞬間のバッファしか保存できません。

一方、iTerm2には、ログ保存機能が組み込まれており、以下のようなメリットがあります。

  • 設定の手軽さ: GUIの設定画面から、分かりやすくログ機能を設定できます。
  • 自動化: プロファイルごとに、セッション開始時に自動でログ記録を開始するように設定できます。
  • 柔軟性: ログを保存するフォルダを指定したり、ログファイル名に日付や時刻、プロファイル名を自動で含めたりといった柔軟な設定が可能です。

特に、全てのターミナル操作を意識せずに記録しておきたい場合、iTerm2の自動ログ機能は非常に強力で便利です。

iTerm2での自動ログ設定手順

それでは、iTerm2でターミナルログを自動保存するための具体的な設定手順を見ていきましょう。

  1. iTerm2の設定画面を開く
    メニューバーの iTerm2 > Preferences... (または Settings...) を選択して、設定画面を開きます。
  2. プロファイルを選択
    設定画面上部の Profiles タブを選択し、ログ設定を適用したいプロファイル(通常は “Default” など、普段利用しているもの)を左側のリストから選択します。
  3. セッション設定へ移動
    右側のペインで Session タブを選択します。
  4. 自動ログ設定を有効化
    Session タブの中をスクロールし、Miscellaneous というセクションを探します。その中にある Automatically log session input/output to file in: という項目のチェックボックスをオンにします。
  5. ログ保存フォルダを指定
    Automatically log session input/output to file in: の右側にある Change ボタンをクリックします。ログファイルを保存したいフォルダを選択するダイアログが表示されるので、任意のフォルダを選択してください。
    後で管理しやすいように、専用のフォルダ(例: ~/Documents/iTerm_Logs など)を作成して指定することをお勧めします。
  6. 設定完了
    設定ウィンドウを閉じれば、設定は完了です。

【重要】
この設定は、設定を保存した後に「新しく開いた」iTerm2のウィンドウやタブから有効になります。設定前に開いていたセッションには適用されませんのでご注意ください。

設定の確認

設定が正しく行われたか確認しましょう。

  1. iTerm2で新しいウィンドウ、または新しいタブを開きます。
  2. いくつかコマンドを実行してみます。
  3. 先ほど手順5で指定したログ保存用フォルダ(例: ~/Documents/iTerm_Logs)を開いてみてください。
  4. YYYYMMDD-HHMMSS_プロファイル名.log のような形式のファイル名で、ログファイルが作成されているはずです。
  5. そのログファイルをテキストエディタなどで開いて、手順2で実行したコマンドの出力(設定によっては入力も)が記録されていることを確認します。

これで、意図通りにログが保存されていることが確認できました。

少し見づらいですが、 vi エディタでの操作ログも保存できるようです。

活用シーン

このiTerm2のログ機能は、日々の運用保守業務において、以下のような様々な場面で役立ちます。

  • 障害発生時の調査: どのような操作を行った後に問題が発生したのか、正確な手順と結果を追跡できます。
  • 作業手順の確認・共有: 複雑な設定変更や定型作業の手順を記録として残し、後で参照したり、チームメンバーと共有したりするのに役立ちます。
  • 教育・引き継ぎ: 新しいメンバーに作業手順を示す際の実例として、あるいは業務引き継ぎ時の資料として活用できます。
  • 監査証跡: セキュリティポリシーなどで操作記録の保持が求められる場合に、証跡として利用できます。

まとめ

iTerm2に組み込まれている自動ログ機能を利用することで、macOSでのターミナル操作記録を、非常に簡単かつ確実に残すことができます。一度設定してしまえば、あとは意識することなく日々の作業ログが蓄積されていくため、運用保守業務における証跡管理の効率化や、いざという時の情報源として、大きな助けとなるはずです。