「SquashFS によるフルシステムバックアップ」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎ライブ CD/DVD/USB の準備: バックアップドライブを準備するを翻訳して追加)
(→‎ライブ環境でバックアップ: ライブメディアの準備を翻訳して追加)
58行目: 58行目:
 
#* バックアップドライブが HDD の場合は、 [[badblocks]] を使用します。
 
#* バックアップドライブが HDD の場合は、 [[badblocks]] を使用します。
   
== ライブ環境でバックップ ==
+
== ライブメディの準備 ==
   
  +
[[インストールガイド#インストールメディアの準備]] または [[archiso]] を /dev/sdL にインストールします。
ライブ CD/DVD/USB を起動してバックアップしたいファイルシステムをマウントしてください。
 
   
  +
{{Note|SquashFS ファイルシステムを作成するには、[https://archlinux.org/download/ official Arch Linux installation image] に含まれている{{Pkg|squashfs-tools}} が必要です。}}
{{Note|以下は 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
 
 
スクリプトの中身:
 
 
{{hc|/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
 
}}
 
   
 
== リストア (解凍) ==
 
== リストア (解凍) ==

2022年2月17日 (木) 03:21時点における版

関連記事

ファイルシステム全体の圧縮バックアップアーカイブを SquashFS フォーマットで作成することができます。ランダムアクセスが可能なため、バックアップや取り出しに比較的時間がかかりませんが、追記以外の改変はまだできません。

デバイスファイル 説明
/dev/sdB バッアップドライブ
/dev/sdL ライブメディア
/dev/sdSRC バックアップするドライブ
警告: SquashFS は アクセス制御リスト をサポートしていません[1]

長所と短所

長所:

  • パーティションなし、必要なサイズの推測なし。
  • SquashFS ほとんどのレスキューディスクでサポートされています。
  • ランダムアクセス で、プレーンな mount を使用する。
  • 重複ファイルはデフォルトで削除されます (no-duplicates フラグがオンでない限り。)

短所:

  • すべての ACL が失われます。
  • Windows 1 からアクセスできません。
  • 追加可能ですが、そこから除去することはできません。
  • 他の目的でディスクを使用するには、バックアップ 2 を破棄する必要があります。
ノート:
  1. squashfs-tools-ng は SquashFS イメージファイルをサポートしているかもしれませんが、Windows 自身はパーティションレスドライブを全くサポートしていません。
  2. swim ring が必要なときに lifebuoy掴まないでください ファイル共有とバックアップは別々のディスクにして下さい。適切なバックアップハードウェアを購入する

バックアップドライブを準備する

警告:
  • バックアップドライブ上のすべてのデータが失われます。
  • 誤ったデバイスファイルを指定すると、マシン上のすべてのデータが失われる可能性があります。
  1. すべてのパーティション /dev/sdBN を消去してから、パーティションテーブル /dev/sdBwipefs で消去します。
  2. すべてのライトキャッシュを同期する #sync
  3. パーティションテーブルの変更をOSに通知する #partprobe
  4. 不正なブロックをチェックする。
    • バックアップドライブが SSD の場合は、S.M.A.R.T. を使用します。
    • バックアップドライブが HDD の場合は、 badblocks を使用します。

ライブメディアの準備

インストールガイド#インストールメディアの準備 または archiso を /dev/sdL にインストールします。

ノート: SquashFS ファイルシステムを作成するには、official Arch Linux installation image に含まれているsquashfs-tools が必要です。

リストア (解凍)

警告: 以下のスクリプトは未確認です。まだ使わないでください。
#!/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
ノート: リストア後にシステムを起動可能にするには:
  1. fstab を修正
  2. arch-chroot
    1. mkinitcpio -p linux
    2. grub-install
    3. grub-mkconfig

リストア (マウントとコピー)

警告: 以下のスクリプトは未確認です。まだ使わないでください。
  1. mount somewhere/backup.sfs /mnt
  2. cp /mnt/somefile /somewhere/damaged-somefile