LoginSignup
4
5

More than 3 years have passed since last update.

WSL環境をバックアップするためのシェルスクリプト

Posted at

どうしてつくった

ubuntu 18.04の中にLAMP環境を構築しています。
しかし、初心者なので失敗が多く、そのたびに再インストールして…がしんどくなってきました。
そこで、仮想環境みたいにここまで環境設定したら状況保存(スナップショット的に)できないかな?と思って調べたら、できるそうです。

WSLのバックアップを検討する - concerti.tsukubaのブログ
WSL環境のバックアップ - 杜撰ブログ

環境

  • windows 10
  • ubuntu 18.04

シェルスクリプト

スナップショット的に使いたいので、シェルスクリプトにしました。

backup.sh
#!/bin/sh

#バックアップパス
bkpath="/mnt/c/WSL_Ubuntu/bkup"

# バックアップ先のディレクトリがあるか確認する
if [! -e $bkpath ] ; then
# 存在しない場合、作成する
mkdir -p $bkpath
# 除外ファイルリスト作成
cat <<EOL >> $bkpath/exclude_list.txt
/mnt
/dev
/proc
/tmp
/sys
/run
/var/log
EOL

fi

# バックアップ
# バックアップフォルダ名(yyyyMMddHHmm)
today=$(date "+%Y%m%d%H%M")

# バックアップフォルダ作成
mkdir -p $bkpath/$today

# ルートディレクトリからtarで圧縮
sudo tar -cvpjf $bkpath/$today/backup.tar.bz2 -X $bkpath/exclude_list.txt /

# パッケージリストを作成(バックアップだけが目的であれば必要ない)
dpkg-query -f '${binary:Package}\n' -W >   $bkpath/$today/list_pkg.txt
pip list --format=columns > $bkpath/$today/list_pip.txt
tlmgr list --only-installed > $bkpath/$today/list_tex.txt

TODO

  • 差分取り込み
  • レストア
  • レストアの差分込の復帰
4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5