Linux便利コマンド : script

うめだ
2022-10-25
2023-06-09
目次

はじめに

みなさま、scriptコマンドを活用されていますでしょうか?

LinuxサーバーにSSHログインし、作業をする際には、必ず全ての操作内容を記録するようにしています。

作業のエビデンスとしてはもちろんのこと、作業後に不具合が発生した場合に、振り返ることができるようにしておくことはとても重要です。

Teraterm等のターミナルエミュレーターには、操作内容を記録する機能がそなわっています。

ただし、使用するターミナルソフトやPC毎に設定する必要があるため煩雑です。

そこで私は、scriptコマンドを活用しています。

環境

OS : AlmaLinux 8
scriptバージョン : 2.32.1

使い方

作業用の踏台サーバーから、 作業対象サーバーへ下記コマンドを実行して
SSHログインすることで、踏台サーバーに全ての操作ログを保存するようにしています。


$ script ./LOGDIR/YYYYMMDDHHMMSS-testserver.log -c "ssh 192.168.xxx.xxx"

なお、毎回こんなに長いコマンドを実行するのはめんどくさいので、実行タイミングの日時や対象サーバーが自動的にログファイル名に指定されるように、上記コマンドの エイリアスを設定して利用しています。

また、操作ログを参照する際、単純にlessコマンドで開くと制御文字の影響で、表示がくずれます。

そのため、オプションの -r を指定して開く必要がありますので、ご注意ください。

まとめ

サーバーを運用するにあたって、コマンド操作ログの記録は必須だと考えています。
長年運用業務に携わり、現在最終的にたどり着いた方法をご紹介させてもらいました。

興味があれば、ぜひお試しください。