UbuntuデスクトップでBtrfsの自動スナップショットを設定する方法

具体例: MayaはUbuntuデスクトップ環境でBtrfsルートファイルシステムを使用しており、定期アップデート前に復元ポイントを作成したいと考えています。この例は架空のものであり、セットアップ手順を説明するもので、実際のテストやユーザーによる結果を示すものではありません。手順ではTimeshiftを使用していますが、これはTimeshiftの公式ドキュメントにBtrfsのサポートとスケジュールされたスナップショットレベルが記載されているためです。TimeshiftのBtrfsモードには特定のレイアウト要件があるため、有効にする前に互換性を確認してください。

自動化されたBtrfsスナップショットでできることとできないこと

Btrfsスナップショットは、サブボリュームの特定時点の状態を表すものです。コピーオンライト方式では、スナップショットは初期状態では変更されていないデータブロックをソースと共有し、その後の変更は別に保存されます。これにより、スナップショットは高速かつ省スペースになりますが、共有ブロックは同じファイルシステム上に残ります。ディスク障害、ファイルシステムの破損、盗難、または意図しないパーティション分割によって、現在のシステムとスナップショットの両方が失われる可能性があります。ドキュメントや重要なファイルは、別途バックアップを取っておきましょう。

Timeshiftはシステムファイルと設定に重点を置いています。ドキュメントによると、ホームディレクトリ内のユーザーファイルはデフォルトで除外されます。これはシステム変更を元に戻す際に便利ですが、Timeshiftで自動生成されたシステムスナップショットを個人ファイルのバックアップとして扱うべきではないことを意味します。また、Btrfsのスナップショットは再帰的ではありません。ネストされたサブボリュームが境界となり、その内容は親のスナップショットには含まれません。

1. Ubuntuが実際にBtrfs上で動作していることを確認します。

インストーラーの選択やBtrfsツールの存在からファイルシステムを推測しないでください。ターミナルを開いて、マウントされたルートを調べてください。

findmnt -no FSTYPE /
sudo btrfs subvolume list /

最初のコマンドを実行すると、 と表示されるはずですbtrfs。 2 番目のコマンドを実行して、システムのサブボリューム パスを確認してください。 Timeshift の Btrfs モードでは、@ルートに 、@homeホームに を使用する Ubuntu スタイルのレイアウトが必要ですが、ドキュメントでは非 Btrfs パーティション上の /home も許可されています。 Timeshift Btrfs モードでは、その他のサブボリューム レイアウトはサポートされていません。 ルート ファイルシステムが ext4 の場合、または必要なレイアウトが見つからない場合は、ここで作業を中止してください。このセットアップの一環として、ライブ サブボリュームの名前を変更したり移動したりしてレイアウトを修復しようとしないでください。

Btrfsルートファイルシステムと、想定される@および@homeサブボリュームを示すターミナル出力。
ステップ 1: スナップショット ツールを選択する前に、ファイルシステム タイプを確認し、Btrfs ボリュームに想定される Ubuntu ルート サブボリュームが含まれていることを確認します。ターミナル出力には、Btrfs ファイルシステムと @ および @home サブボリューム パスが表示されます。

マヤの例では、コマンドによってBtrfsと想定されるサブボリューム名が表示されるため、彼女はTimeshiftとの互換性の確認を続けることができます。実際の出力は異なる場合があり、名前が一致するだけでは、カスタムディスクレイアウトのすべての詳細がサポートされていることを証明するものではありません。

2. Timeshiftをインストールし、Btrfsモードを選択します。

Ubuntuでは、設定済みのUbuntuリポジトリからパッケージをインストールしてください。

sudo apt update
sudo apt install timeshift

アプリケーションの概要からTimeshiftを起動し、プロンプトが表示されたら認証してください。初回起動時のセットアップでは、レイアウトチェックに合格した場合のみ、スナップショットの種類としてBTRFSを選択してください。検出されたスナップショットの場所を注意深く確認してください。Timeshiftがサポートされていないレイアウトを報告した場合は、ランダムに別のデバイスを選択するのではなく、キャンセルして調査してください。スナップショットは、ソースサブボリュームと同じBtrfsファイルシステム上に保存してください。Btrfsスナップショットは、通常のコピーのように、関連性のないファイルシステム上に配置することはできません。

Timeshiftのセットアップ画面で、BTRFSが選択され、@rootと@homeのサブボリュームが検出されています。
ステップ2:検出されたレイアウトがサポートされているUbuntuスタイルのサブボリュームと一致する場合にのみ、BTRFSモードを選択してください。Timeshiftの設定画面には、Btrfsモードと想定されるUbuntuサブボリュームが表示されます。

セットアップ後、スケジュール設定を行う前に、手動でスナップショットを1つ作成してください。メインウィンドウで「作成」を選択し、スナップショットが表示されるまで待ちます。これにより、Mayaに初期復元ポイントが作成され、ツールがレイアウトを使用して復元ポイントを作成できることが確認できます。作成に失敗した場合は、表示されるエラーメッセージを確認し、自動化を有効にする前にディスク容量とレイアウトを確認してください。

3. スケジュールを有効にして保持期間を設定する

設定を開き、「スケジュール」タブを選択します。スケジュールされたスナップショットを有効にし、毎日または毎週など、1つ以上のレベルを選択します。タイムシフトは、定期的にチェックを行い、指定されたレベルのスナップショットを作成するように設計されています。コンピュータが常に同じ時刻に稼働している必要はありません。数日間シャットダウンされたノートパソコンは、再び起動するまで保護期間を逃してしまう可能性があります。

最初は控えめな保持回数を設定しましょう。例えば、Mayaさんは日次スナップショットを有効にし、システム上の容量の変化を確認しながら少数のスナップショットを保持しています。これはあくまで一例であり、普遍的な設定ではありません。スナップショットは変更されていないブロックを共有しますが、後からの変更によって容量が消費される可能性があり、保持回数はワークロードと容量によって異なります。ほぼ満杯のルートファイルシステムで、すべての頻度で大量のスナップショットを有効にすることは避けましょう。通常のディスク使用状況を確認した後、設定を見直してください。

Timeshiftのスケジュール設定(日次スナップショットが有効になっている場合)と、7日間のデータ保持の例。
ステップ3:スケジュールを有効にし、利用可能なディスク容量に合った保持レベルを設定します。スケジュールダイアログには、スナップショットの取得頻度(日次)と、7日間の保持設定例が表示されます。

設定→ 場所で、選択したスナップショット デバイスが意図した Btrfs ファイルシステムであることを確認してください。複数のディスクまたはパーティションがある場合は、ラベルから推測するのではなく、ファイルシステムとマウントの詳細で識別してください。Timeshift のプロジェクトでは、一般的なガイダンスで最良の結果を得るために非システム パーティションを推奨していますが、Btrfs スナップショットはソースと同じ Btrfs ファイルシステム上に保持する必要があります。独立したバックアップ デバイスには、別のバックアップ コピーを保存する必要があります。

4. スケジュールと復元パスを確認する

Timeshiftのメインウィンドウに戻り、手動スナップショットが日付と種類とともに表示されていることを確認してください。Timeshiftをインストールしたままにして、コンピュータが稼働している状態で、次のスケジュールされた間隔後に再度確認してください。手動スナップショットが1つ表示されたことは、作成が成功したことを示していますが、それだけでは自動スケジュールが継続して実行されることを保証するものではありません。スケジュールされたスナップショットが時間とともに表示されることを確認し、Ubuntuのディスク使用状況ツールを使用して空き容量を監視してください。

Timeshiftのスナップショットリスト。日付付きのBTRFS復元ポイントと、選択されたエントリが1つ含まれています。
ステップ4:スケジュールに従う前に、日付付きスナップショットがリストに表示されていることを確認してください。日付付きBtrfs復元ポイントは、Timeshiftスナップショットリストに表示されます。

ロールバックに頼る前に、復元ワークフローを理解し、起動可能なUbuntu USBを用意しておいてください。Timeshiftのドキュメントには、メインウィンドウから選択したスナップショットを復元する方法と、インストール済みのシステムが起動しない場合にライブシステムを使用する方法が記載されています。復元はシステムの状態を変更するため、再起動が必要になる場合があります。無害な参照操作として扱わないでください。復元を行う前に重要なファイルをバックアップし、重要なデータの唯一のコピーに対して破壊的なロールバックをテストすることは避けてください。

よくある問題点と限界

  • 「サポートされていないレイアウト」または Btrfs オプションがありません:findmntとサブボリューム リストを調べます。Timeshift Btrfs モードは@とを想定しています@home。カスタム レイアウトには、それらを明示的にサポートするツールとプランが必要です。
  • スナップショットの作成に失敗しました。空き容量を確認し、正確なエラーメッセージを確認してください。Timeshift のアップストリームドキュメントには、内部のスワップファイルが Btrfs スナップショットの作成を妨げる可能性があると記載されています@。@homeシステムのスワップ構成を理解せずにスワップファイルを移動しないでください。
  • ロールバックポイントにホームファイルが欠落しています。Timeshiftはデフォルトで個人のホームデータを除外します。ドキュメントやメディアのバックアップには、別のファイルバックアップツールを使用してください。
  • スナップショットは容量を消費します。復元ポイントが確実に保持されていることを確認した上で、Timeshiftを使用して保持期間を短縮するか、古いスナップショットを削除してください。Btrfsは、削除されたスナップショットデータをバックグラウンドでクリーンアップし続ける場合があります。

UbuntuのパッケージバージョンとTimeshiftのインターフェースは変更される可能性があります。上記の手順は、ドキュメントに記載されているワークフローと一般的なインターフェースラベルについて説明しています。インストールされているバージョンで異なるラベルが使用されている場合は、サブボリュームを変更したり設定を復元したりする前に、組み込みのヘルプとアップストリームプロジェクトのドキュメントを参照してください。

ソース

コメントを残す

UbuntuのAPTロックを安全に解除してアップデートを完了する

UbuntuのAPTロックを安全に解除してアップデートを完了する

Ubuntuのdpkgフロントエンドロックを所有しているプロセスを特定し、パッケージの処理を完了させ、ロックファイルを削除せずに中断されたインストールを修復します。

UbuntuデスクトップでBtrfsの自動スナップショットを設定する方法

UbuntuデスクトップでBtrfsの自動スナップショットを設定する方法

Timeshiftを使用してUbuntu Desktop上でBtrfsシステムの定期的なスナップショットを設定し、Ubuntuのサブボリュームレイアウトを確認し、保持期間を選択し、スナップショットで保護できないものを理解する。

依存関係を壊さずにDebian 12をTestingに移行する方法

依存関係を壊さずにDebian 12をTestingに移行する方法

Debian 12 から Testing へのより安全な移行を計画しましょう。Stable を経由してアップグレードし、バックアップを取り、APT ソースをクリーンアップし、依存関係の変更をシミュレートし、何が変更されたかを確認します。

Ubuntuサーバーが緊急モードで起動した場合の対処法:ステップバイステップの復旧ガイド

Ubuntuサーバーが緊急モードで起動した場合の対処法:ステップバイステップの復旧ガイド

Ubuntu Serverの緊急モードを安全に診断します。ブートログを読み取り、ルートおよびfstabマウントを確認し、障害が発生したユニットを修復し、ファイルシステムエラーを処理し、正常な再起動を確認します。

Debian 12でWireGuardポイントツーサイトVPNを設定する方法

Debian 12でWireGuardポイントツーサイトVPNを設定する方法

リモートクライアント1台用に、Debian 12 WireGuard VPNサーバーをセットアップします。キー、IPv4フォワーディング、nftables NAT、ファイアウォールアクセス、接続チェックを設定します。

Step-by-Step Debian 12 Hardening Guide for CIS Compliance

Step-by-Step Debian 12 Hardening Guide for CIS Compliance

Harden a Debian 12 workstation with a careful CIS Benchmark workflow: select the right profile, patch safely, review services and access, configure nftables, and document evidence.

低RAM VPS上のDebian 12:MySQLのメモリ不足クラッシュを減らす方法

低RAM VPS上のDebian 12:MySQLのメモリ不足クラッシュを減らす方法

Debian 12 で発生する MySQL の OOM による強制終了を診断し、VPS のメモリ制限を確認し、スワップを設定し、データベースのメモリと同時実行性を調整します。ただし、万能な解決策を保証するものではありません。

How to Build a Debian Desktop as an OSTree-Based Immutable System

How to Build a Debian Desktop as an OSTree-Based Immutable System

Learn how to create and test a Debian-derived OSTree desktop in a VM, including system-tree preparation, boot integration, deployment checks, and rollback.

How to Mount a Remote SSHFS Directory Automatically at Boot in Debian

How to Mount a Remote SSHFS Directory Automatically at Boot in Debian

Configure an SSHFS boot mount in Debian with SSH keys, fstab, and systemd automount. Includes reboot checks, permissions, timeouts, and troubleshooting.

東京の10月にやることは?台風・秋雨・エアコン・冷え込みの住まい点検チェックリスト

東京の10月にやることは?台風・秋雨・エアコン・冷え込みの住まい点検チェックリスト

東京の2026年10月に確認したい住まいの手入れを解説。台風や秋雨に備えるベランダ排水・窓の点検、エアコンフィルター掃除、室内の湿気対策、賃貸と持ち家の連絡先をまとめました。平年値と最新予報の違いも紹介します。