sshdiff は ssh によるリモートコマンド実行結果の差分を表示するツールです。
サーバ移行作業に便利かもしれない!?
- release から実行ファイルをダウンロード
- 実行ファイルを /usr/local/bin 等に置く
- パーミッションを
rwxr-xr-x
(755) に設定する
$ sshdiff server1 server2 ls
ls
を server1 と server2 上で実行して、出力の差分を表示。
$ sshdiff yuriko@server1 yuriko@server2 ls
$ sshdiff yuriko@server1 yuriko@server2 'rpm -ql|sort'
引数付きで実行する場合は ' ' " " などでクォート必須。
ポート番号(22) や 鍵(id_rsa, id_ecdsa, etc..) がデフォルト出ない場合は ~/.ssh/config に以下の様に書くことで指定可能。
Host server1
HostName server1.example.com
Port 8022
IdentityFile ~/.ssh/id_ecdsa_server1
Host server2
HostName server2.example.com
Port 1022
IdentityFile ~/.ssh/id_ecdsa_server2