wsl: コンソールログを取りたい
2025/06/12
WSL2 で記録を残したい作業をしていたのだが、ログの出力が多すぎて Windows Terminal のバッファからあふれてしまった。 やり直しだ。。。
まあそれはあきらめるとして、TeraTerm のようにターミナルの機能として動的にログを保存してほしい。
Windows Terminal にログ保存はなさそう
Windows Terminal 自体に動的なログ保存はなさそうだ。
バッファにあるテキストを保存する機能はあったが、今回はそのバッファからあふれてしまったので意味が無い。
バッファのサイズは増やせるのだが、じゃあどこまで増やせば大丈夫かというのが未定なことも多い。
WSL2 に SSH ログインするという手段はある
WSL2 上に SSHサーバを立てて TeraTerm からログインするという手段はある。
そのためには SSHサーバを立てないといかん。
cygterm のようにはいかないようだ。
Windows Terminal はそういうの無しでできるのだから、何かルートはあるのだろう。 vscode だってできてるしね。
サードパーティターミナルというものもある
Claude AI に聞いてみると、サードパーティのターミナルアプリがあるそうだ。
ConEmu のログ保存が楽だったのだが、TeraTerm みたいに「今から開始」が指定できなさそう。
それはまだよいのだが、エスケープ文字などがそのまま記録されているので見づらい。
他にないのか
こちらが参考になった。
WSL2 に tmux
がインストールされていたので、それが一番楽そうなのだが、コマンドを覚えられる自信がない。
そして、このログもやはりエスケープ文字などがそのままなのだ。
cat
すれば色の違いなども出力されて便利は便利かもしれないが、私はテキストエディタで眺めたいのである。
ツールを使って除去すれば良いのだろうが、最初から取り除かれているならその方がよい。
WSL2 に OpenSSH server をインストールしたが失敗
あきらめて TeraTerm を使おうと openssh-server を apt install
した。
そこまではよかったのだが、systemctl start sshd
で失敗する。
ポート 22番が重なっているそうだが、ss -nat | grep 22
しても出てこない。
1年ほど前、Windows 側で vscode から git を使いたいがために OpenSSH をインストールしていた。
%PROGRAMDATA%\ssh\sshd_config
の Port
を変更してサービスを再起動させると変わった。
Windows 側の OpenSSH は GitHub のためだけに使っているので、どうでもよいのだ。
Windows 側のポート番号をずらしたので WSL2 側の openssh-server はそのまま立ち上がった。
WSL2 の .ssh/authorized_keys
に公開鍵を追加して TeraTerm からログインできた。
自動ログインするマクロに追加したので、普段はダイアログから選ぶだけになった。
ツールの使い方に敗北した気分ではあるが、まあよかろう。