タケユー・ウェブ日報

Webシステム受託会社の業務の中での気づきや調べごとのメモ。

WSLのバックアップ

まとめ

  • wsl --export を使う
  • .bat を書けばバックアップをとってからシャットダウン、もできる

forest.watch.impress.co.jp

事の起こり

  • WSL2をゴリゴリ仕事で使っている
  • 何かあったとき戻せるようにしたい
  • ツール類の再インストール作業などなるべくしたくない
  • プロビジョニングツールはツールの更新で動かなくなったりしてつらい
  • スナップショットとりたい

バッチファイルを書いた

wsl-backup.bat

@echo off

echo %date%
echo %time%

set yyyy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%

set time2=%time: =0%

set hh=%time2:~0,2%
set mn=%time2:~3,2%
set ss=%time2:~6,2%

set timestamp=%yyyy%-%mm%-%dd%-%hh%-%mn%-%ss%
wsl --export Ubuntu D:\backups\wsl\Ubuntu_%timestamp%.tar

shutdown.bat

@echo off

call D:\wsl-backup.bat

shutdown /s /t 30 /c "Shut down after 30 seconds."

仕事終わりに shutdown.bat を「管理者で実行」