「SquashFS によるフルシステムバックアップ」の版間の差分
ナビゲーションに移動
検索に移動
(→リストア (解凍): バックアップを翻訳して追加) |
(→リストア (マウントとコピー): QEMU でのバックアップのテスト (任意)を翻訳して追加) |
||
108行目: | 108行目: | ||
;; -e:除外するディレクトリ/ファイルのリスト |
;; -e:除外するディレクトリ/ファイルのリスト |
||
+ | == QEMU でのバックアップのテスト (任意) == |
||
− | == リストア (マウントとコピー) == |
||
+ | 許可を与える |
||
− | {{Warning|以下のスクリプトは未確認です。まだ使わないでください。}} |
||
+ | $ sudo chown $USER:$USER /dev/sdB |
||
− | # {{ic|mount somewhere/backup.sfs /mnt}} |
||
+ | |||
− | # {{ic|cp /mnt/somefile /somewhere/damaged-somefile}} |
||
+ | QEMU を起動する |
||
+ | |||
+ | {{Note|[[カーネル]] と [[initramfs]] はホストマシンのものが使用されます。}} |
||
+ | |||
+ | {{bc|1= |
||
+ | $ qemu-system-x86_64 \ |
||
+ | -kernel /boot/vmlinuz-linux \ |
||
+ | -append "root=/dev/sdB ro loglevel=3 init=/usr/lib/systemd/systemd" \ |
||
+ | -initrd /boot/initramfs-linux-fallback.img \ |
||
+ | -drive file=/dev/sdB,index=0,media=disk,format=raw \ |
||
+ | -m ''virtual_machine_ram_in_MiB'' \ |
||
+ | --enable-kvm \ |
||
+ | -cpu host |
||
+ | }} |
2022年2月17日 (木) 03:33時点における版
関連記事
ファイルシステム全体の圧縮バックアップアーカイブを SquashFS フォーマットで作成することができます。ランダムアクセスが可能なため、バックアップや取り出しに比較的時間がかかりませんが、追記以外の改変はまだできません。
デバイスファイル | 説明 |
---|---|
/dev/sdB | バッアップドライブ |
/dev/sdL | ライブメディア |
/dev/sdSRC | バックアップするドライブ |
長所と短所
長所:
- パーティションなし、必要なサイズの推測なし。
- SquashFS ほとんどのレスキューディスクでサポートされています。
- ランダムアクセス で、プレーンな
mount
を使用する。 - 重複ファイルはデフォルトで削除されます (
no-duplicates
フラグがオンでない限り。)
短所:
- すべての ACL が失われます。
- Windows 1 からアクセスできません。
- 追加可能ですが、そこから除去することはできません。
- 他の目的でディスクを使用するには、バックアップ 2 を破棄する必要があります。
バックアップドライブを準備する
- すべてのパーティション
/dev/sdBN
を消去してから、パーティションテーブル/dev/sdB
を wipefs で消去します。 - すべてのライトキャッシュを同期する
#sync
- パーティションテーブルの変更をOSに通知する
#partprobe
- 不正なブロックをチェックする。
- バックアップドライブが SSD の場合は、S.M.A.R.T. を使用します。
- バックアップドライブが HDD の場合は、 badblocks を使用します。
ライブメディアの準備
インストールガイド#インストールメディアの準備 または archiso を /dev/sdL にインストールします。
バックアップ
バックアップしたいファイルシステムをマウントします。(例:/dev/sdSRC を /mnt に)
# fsck /dev/sdSRC # mount -o ro /dev/sdSRC /mnt
を実行します。
バックアップ (サンプルスクリプト)
# mksquashfs /mnt /dev/sdB \ -not-reproducible \ -xattrs \ -wildcards \ -noappend \ -progress \ -mem 5G \ -e \ var/cache/pacman/pkg \ var/lib/pacman/sync \ var/log/journal \ boot/efi \ boot/grub \ boot/initramfs-linux"*".img \ boot/vmlinuz-linux
- -not-reproducible
- バックアップ速度を若干上げる
- -noappend
- 上書き
- -mem
- mksquashfsに RAM を付与
- -e
- 除外するディレクトリ/ファイルのリスト
QEMU でのバックアップのテスト (任意)
許可を与える
$ sudo chown $USER:$USER /dev/sdB
QEMU を起動する
$ qemu-system-x86_64 \ -kernel /boot/vmlinuz-linux \ -append "root=/dev/sdB ro loglevel=3 init=/usr/lib/systemd/systemd" \ -initrd /boot/initramfs-linux-fallback.img \ -drive file=/dev/sdB,index=0,media=disk,format=raw \ -m virtual_machine_ram_in_MiB \ --enable-kvm \ -cpu host