「SquashFS によるフルシステムバックアップ」の版間の差分
表示
削除された内容 追加された内容
→Overview: 長所と短所を翻訳して追加 |
→ライブ CD/DVD/USB の準備: バックアップドライブを準備するを翻訳して追加 |
||
| 45行目: | 45行目: | ||
}} |
}} |
||
== ライブ |
== バックアップドライブを準備する == |
||
{{Warning|1=<nowiki/> |
|||
SquashFS アーカイブを作成するには {{Pkg|squashfs-tools}} がインストールされているライブ CD/DVD/USB を用意する必要があります。[[Archiso#ライブメディアの設定]]を読んで {{ic|packages.x86_64}} を設定して {{Pkg|squashfs-tools}} がインストールされているライブ CD/DVD/USB を作成してください。 |
|||
* バックアップドライブ上のすべてのデータが失われます。 |
|||
* 誤ったデバイスファイルを指定すると、マシン上のすべてのデータが失われる可能性があります。}} |
|||
# すべてのパーティション {{ic|/dev/sdBN}} を消去してから、パーティションテーブル {{ic|/dev/sdB}} を [[デバイスファイル#wipefs|wipefs]] で消去します。 |
|||
# すべてのライトキャッシュを同期する {{ic|#sync}} |
|||
# パーティションテーブルの変更をOSに通知する {{ic|#partprobe}} |
|||
# 不正なブロックをチェックする。 |
|||
#* バックアップドライブが [[SSD]] の場合は、[[S.M.A.R.T.]] を使用します。 |
|||
#* バックアップドライブが HDD の場合は、 [[badblocks]] を使用します。 |
|||
== ライブ環境でバックアップ == |
== ライブ環境でバックアップ == |
||
2022年2月17日 (木) 03:17時点における版
関連記事
ファイルシステム全体の圧縮バックアップアーカイブを SquashFS フォーマットで作成することができます。ランダムアクセスが可能なため、バックアップや取り出しに比較的時間がかかりませんが、追記以外の改変はまだできません。
| デバイスファイル | 説明 |
|---|---|
| /dev/sdB | バッアップドライブ |
| /dev/sdL | ライブメディア |
| /dev/sdSRC | バックアップするドライブ |
長所と短所
長所:
- パーティションなし、必要なサイズの推測なし。
- SquashFS ほとんどのレスキューディスクでサポートされています。
- ランダムアクセス で、プレーンな
mountを使用する。 - 重複ファイルはデフォルトで削除されます (
no-duplicatesフラグがオンでない限り。)
短所:
- すべての ACL が失われます。
- Windows 1 からアクセスできません。
- 追加可能ですが、そこから除去することはできません。
- 他の目的でディスクを使用するには、バックアップ 2 を破棄する必要があります。
ノート
- squashfs-tools-ng は SquashFS イメージファイルをサポートしているかもしれませんが、Windows 自身はパーティションレスドライブを全くサポートしていません。
- swim ring が必要なときに lifebuoy を掴まないでください ファイル共有とバックアップは別々のディスクにして下さい。適切なバックアップハードウェアを購入する
バックアップドライブを準備する
警告
- バックアップドライブ上のすべてのデータが失われます。
- 誤ったデバイスファイルを指定すると、マシン上のすべてのデータが失われる可能性があります。
- すべてのパーティション
/dev/sdBNを消去してから、パーティションテーブル/dev/sdBを wipefs で消去します。 - すべてのライトキャッシュを同期する
#sync - パーティションテーブルの変更をOSに通知する
#partprobe - 不正なブロックをチェックする。
- バックアップドライブが SSD の場合は、S.M.A.R.T. を使用します。
- バックアップドライブが HDD の場合は、 badblocks を使用します。
ライブ環境でバックアップ
ライブ CD/DVD/USB を起動してバックアップしたいファイルシステムをマウントしてください。
ノート 以下は sdb1 が EFI パーティションで sdb2 がルートパーティションの EFI-grub による Arch 環境の例です。
# fsck /dev/sdb2 # fsck /dev/sdb1 # mount /dev/sdb2 /mnt # mount /dev/sdb1 /mnt/boot/efi # /somewhere/mksquashfs.sh SOURCE_DIRECTORY BACKUP_ARCHIVE_DIRECTORY
スクリプトの中身:
/somewhere/mksquashfs.sh
#!/usr/bin/env bash # Sanity if [ $# -ne 2 ]; then echo "invoke: mksquashfs.sh SOURCE_DIRECTORY BACKUP_ARCHIVE_DIRECTORY" exit 1 fi echo -ne "\n\nHave you fsck'd? " read # Backup mksquashfs \ "$1" "$2/$(date +%Y%m%d_%a).sfs" \ -comp gzip \ -xattrs \ -progress \ -mem 5G \ -wildcards \ -e \ boot/efi \ boot/grub \ boot/initramfs-linux"*".img
リストア (解凍)
警告 以下のスクリプトは未確認です。まだ使わないでください。
#!/bin/bash # Path to extract files target=/mnt # Path to backup SquashFS archive file archive=/somewhere/backup.sfs unsquashfs -stat $archive unsquashfs -force -dest $target $archive
ノート リストア後にシステムを起動可能にするには:
- fstab を修正
- arch-chroot
mkinitcpio -p linuxgrub-installgrub-mkconfig
リストア (マウントとコピー)
警告 以下のスクリプトは未確認です。まだ使わないでください。
mount somewhere/backup.sfs /mntcp /mnt/somefile /somewhere/damaged-somefile