「SquashFS によるフルシステムバックアップ」の版間の差分
表示
削除された内容 追加された内容
→ライブ環境でバックアップ: ライブメディアの準備を翻訳して追加 |
→リストア (解凍): バックアップを翻訳して追加 |
||
| 64行目: | 64行目: | ||
{{Note|SquashFS ファイルシステムを作成するには、[https://archlinux.org/download/ official Arch Linux installation image] に含まれている{{Pkg|squashfs-tools}} が必要です。}} |
{{Note|SquashFS ファイルシステムを作成するには、[https://archlinux.org/download/ official Arch Linux installation image] に含まれている{{Pkg|squashfs-tools}} が必要です。}} |
||
== |
== バックアップ == |
||
[[インストールガイド#ライブ環境の起動]] |
|||
{{Warning|以下のスクリプトは未確認です。まだ使わないでください。}} |
|||
{{Tip|バックアップドライブとライブメディアの両方に十分な USB ポートがない場合。 |
|||
{{bc|1= |
|||
# ライブメディアを起動する |
|||
#!/bin/bash |
|||
# ブートローダーのメニューが表示されたら、'e' を押します。 |
|||
# [[カーネルパラメータ]] に [https://gitlab.archlinux.org/archlinux/archiso/-/blob/d5102724fbacb8f980db346e0caa8b5a85d9edb6/docs/README.bootparams#L26 copytoram] を追加する。 |
|||
# {{ic|# udisksctl power-off -b /dev/sdL}} を実行します。(必要 [[Archiso#Prepare a custom profile|archiso releng]] 、 {{Pkg|udisks2}} 、 [[Archiso#Selecting packages|packages.x86_64]]]) |
|||
# ライブメディアの回転が止まったことを確認し、切断する。}} |
|||
バックアップしたいファイルシステムをマウントします。(例:/dev/sdSRC を /mnt に) |
|||
# Path to extract files |
|||
target=/mnt |
|||
{{bc|# fsck /dev/sdSRC |
|||
# Path to backup SquashFS archive file |
|||
# mount -o ro /dev/sdSRC /mnt}} を実行します。 |
|||
archive=/somewhere/backup.sfs |
|||
バックアップ ([https://github.com/Un1Gfn/archiso/blob/master/mksquashfs.sh サンプルスクリプト]) |
|||
unsquashfs -stat $archive |
|||
unsquashfs -force -dest $target $archive |
|||
{{Warning|1=<nowiki/> |
|||
* バックアップドライブのデータはすべて失われます。 |
|||
* 不正なデバイスファイルを指定した場合、マシン上の全データが失われる可能性があります。 |
|||
}} |
}} |
||
{{bc|# mksquashfs /mnt /dev/sdB \ |
|||
{{Note|リストア後にシステムを起動可能にするには: |
|||
-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:バックアップ速度を若干上げる |
|||
# fstab を修正 |
|||
;; -noappend:上書き |
|||
# arch-chroot |
|||
;; -mem:mksquashfsに RAM を付与 |
|||
## {{ic|mkinitcpio -p linux}} |
|||
;; -e:除外するディレクトリ/ファイルのリスト |
|||
## {{ic|grub-install}} |
|||
## {{ic|grub-mkconfig}} |
|||
}} |
|||
== リストア (マウントとコピー) == |
== リストア (マウントとコピー) == |
||
2022年2月17日 (木) 03:30時点における版
関連記事
ファイルシステム全体の圧縮バックアップアーカイブを 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 を使用します。
ライブメディアの準備
インストールガイド#インストールメディアの準備 または archiso を /dev/sdL にインストールします。
ノート SquashFS ファイルシステムを作成するには、official Arch Linux installation image に含まれているsquashfs-tools が必要です。
バックアップ
ヒント バックアップドライブとライブメディアの両方に十分な USB ポートがない場合。
- ライブメディアを起動する
- ブートローダーのメニューが表示されたら、'e' を押します。
- カーネルパラメータ に copytoram を追加する。
# udisksctl power-off -b /dev/sdLを実行します。(必要 archiso releng 、 udisks2 、 packages.x86_64])- ライブメディアの回転が止まったことを確認し、切断する。
バックアップしたいファイルシステムをマウントします。(例:/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
- 除外するディレクトリ/ファイルのリスト
リストア (マウントとコピー)
警告 以下のスクリプトは未確認です。まだ使わないでください。
mount somewhere/backup.sfs /mntcp /mnt/somefile /somewhere/damaged-somefile