備忘録。システムディスクを丸ごとバックアップしようとすると、最近のバックアップ系のソフトでは課金を求められる事が多い。そこで、LinuxをUSBから動かして次のコマンドを実行する。
バックアップ
lsblk
コマンドでコピー元を確認する。
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 4K 1 loop /snap/bare/5
loop1 7:1 0 73.9M 1 loop /snap/core22/1748
loop2 7:2 0 258M 1 loop /snap/firefox/5751
loop3 7:3 0 11.1M 1 loop /snap/firmware-updater/167
loop4 7:4 0 516M 1 loop /snap/gnome-42-2204/202
loop5 7:5 0 91.7M 1 loop /snap/gtk-common-themes/1535
loop6 7:6 0 10.8M 1 loop /snap/snap-store/1248
loop7 7:7 0 44.4M 1 loop /snap/snapd/23545
loop8 7:8 0 568K 1 loop /snap/snapd-desktop-integration/253
loop9 7:9 0 210.4M 1 loop /snap/thunderbird/644
loop10 7:10 0 210.4M 1 loop /snap/thunderbird/663
sda 8:0 0 447.1G 0 disk
├─sda1 8:1 0 1M 0 part
└─sda2 8:2 0 447.1G 0 part /
sdb 8:16 0 1.8T 0 disk
├─sdb1 8:17 0 16M 0 part
└─sdb2 8:18 0 1.8T 0 part
バックアップ対象は/dev/sda
であることを確認。
次に、dd
コマンドで読み出したのをpigz
に渡して圧縮しながら保存する。status=progress
とすると進捗が出てくるので便利。gzip
とは違いpigz
はマルチコアで処理してくれるので速い。(Ubuntu 24.04だとデフォルトでは入ってなかったので入れる必要がある)
$ sudo dd if=/dev/sda bs=16M status=progress | pigz > image.gz
リストア
image.gzを/dev/sda
にリストアする場合
$ sudo sh -c "unpigz -c image.gz | dd of=/dev/sda status=progress"
最後に
ミスったら悲惨なことになると思うので自己責任で。。。
参考