Linuxのバックアップ機能について
ここのところ中小企業様向けのバックアップ態勢についての話が続きましたので、今日はちょっと技術的な話をしたいと思います。
Windows11には否定的な反応がなんとなく多いように思える今日この頃ですが、これを機会にLinuxに乗り換えるという個人・団体ユーザー様も出てくるのではないかと私は考えています。
というわけで、Linuxのバックアップ機能について見ていきましょう。以前、久しぶりにLinux MintをダウンロードしてみたらGuiのバックアップツールができていた、というお話はしましたが、これを使い込むところまではまだできていないのが現状ですので、おそらくどのディストリビューションでも共通しているであろうという機能をご紹介します。
バックアップツール「rsync」
コマンドを叩くタイプのツールで、Guiに慣れきってしまっているとちょっととっつきにくいかも知れませんが、シンプルでありながら強力であり、カスタマイズ性も高いということでLinuxを使うならまず考慮に上げるべきツールと言えると思います。
具体的にどんな機能が備わっているかと言いますと、列挙するならこんな感じです。
オプションとして
「なるべくコピー元のファイルと同一条件でコピーする」
「ファイルサイズの視認性をよくする」
「詳細を出力する」
「対象ファイルを確認する」
「ファイルサイズの上限を指定する」
「ファイル単位で転送状況を表示する」
「指定ディレクトリ配下をすべて対象とする」
「シンボリックリンクをそのままシンボリックリンクとしてコピー」
「パーミッションをそのままコピー」
「タイムスタンプをそのままコピー」
「ファイル所有者をそのままコピーする」
「ブロックデバイスをコピーする」
「名前付きパイプや FIFO などの特殊ファイルをコピーする」
「ハードリンクをそのまま反映する」
「ファイルサイズのbytesをKやMで出力する」
「コピーしたファイル名やバイト数などの転送情報を出力する」
「データ転送時に圧縮する」
「タイムスタンプとファイルサイズではなくチェックサムで差分を確認する」
「転送先に既にファイルが存在し、転送先のタイムスタンプの方が新しい場合は転送しない」
「コピーや転送を実際には行わず転送内容のみ出力する」
「転送元に存在しないファイルは削除する」
「同期から除外する」
などなど、今の段階で各項目を詳細に解説することは現時点ではいたしませんが、とりあえずあって欲しい機能はひととおり揃っていると言っても過言ではないと思います。
また、このrsyncは比較的歴史の長いツールで、コミュニティが活発ですので、基本的に公式サポートというものが存在しないLinux関係のソフトにしてはトラブルシューティングが容易です。
多様なバックアップ戦略
フルバックアップ
文字どおりフル(全体)をバックアップすることで、すべてのファイル・ディレクトリを含むファイルシステム全体をバックアップメディアにバックアップします。最もわかりやすく安全なバックアップ方法ですが、時間とバックアップメディアの容量を多く必要とします。
増分バックアップ
差分バックアップ
差分バックアップと増分バックアップは切っても切れない関係ですのでまとめてご紹介します。これまで、きちんとご説明したことも確かなかったはず?と思いますので。
毎度おなじみ雑な図ですが。
仮に、毎月1日にフルバックアップを行うものという規則があると考えて下さい(普通は月末だと思いますがまあ説明の都合上でお許し下さい)
差分バックアップは、次回以降は直近のフルバックアップと比較して変わったところだけをバックアップします。ですのでここでは11月2日ですね。ここではそれが5GBあったものと考えています。
翌日の11月3日は、前日と比較してまた5GBあったとしましょう。差分バックアップの場合、直近の「フルバックアップから比較して」ですので、計10GBのバックアップが行われます。
増分バックアップですと直近の「フルバックアップまたは増分バックアップ」からの変化分のみバックアップします。ですので、3日のバックアップ分も5GBとなります。
4日も同様で、差分バックアップの場合は15GB、増分バックアップで5GBバックアップすることになります。
この11月4日分のバックアップまでが終わった段階で、オリジナルも含めた総容量は差分バックアップで80GB、増分バックアップで65GBということになります。容量の節約という意味では増分バックアップに分がありそうです。
しかしいざリストアということになると、差分バックアップが直近のフルバックアップ分と直近の差分バックアップ分をリストアすれば良いのに対し、増分バックアップのリストアは直近のフルバックアップをまずリストアし、増分を順番に追ってリストアしなくてはなりません。3日や4日ぐらいだったらなんてことはないでしょうが、週・月単位になってきますと結構な手間です。手間がかかるだけならまだしも、どこかの増分バックアップが上手く行っていなかったとすると、それ以降は諦めなければいけません。
要は手間とメディアの容量を節約するのかどうかという話になると思うのですが、弊社では差分を前提としており増分バックアップに関しましては要相談とさせていただいております。ご了承下さい。
ローカルバックアップとリモートバックアップ
これに関しましてはもう説明不要だと思うのですが、自分のローカルでバックアップするか、あるいはせいぜい建物の中のLAN程度のバックアップにするのか、オンラインで遠隔地にバックアップするのかの違いです。ネットワークを介してのバックアップにも、Linuxは非常に強みを持っています。
オンラインバックアップとオフラインバックアップ
これもいままでずっとお話を致しておりました内容になりますが、データを利用しながらバックアップを取るのがオンラインバックアップまたはホットバックアップで、データの利用を止めてバックアップするのがオフラインバックアップまたはコールドバックアップです。Linuxでは両方に対応しています。
データバックアップとシステムバックアップ
データバックアップというのはわかりやすいと思います。簡単に言えばOSからファイルとして参照できるもののバックアップとお考え下さい。
一方でシステムというのは、必ずしもファイルとして参照することができないものが動くことによって成り立っています。Linuxではこのシステムをイメージとしてバックアップすることができます。
イメージというのは以前にLinuxを使ってみたのお話の時に少しご説明したと思うのですが、起動メディア(光ディスクやHDD等)を、そっくりそのままひとつのファイルとしてまとめてしまったものとお考え下さい。非常に便利ではありますが、そのイメージの中のファイルをひとつ取り出したいというようなときには全体を1回展開する必要があり、時間と手間がかかります。
弊社ではイメージバックアップをお預かりしましたら即時に展開し、ご利用いただいております会社様の起動メディアがトラブルで使えなくなったような事態ではリプレースしてすぐにそれまでどおりご利用いただけるようにして管理しております。
バックアップの自動化
cronというスケジューラーがLinuxでは標準的に使えますので、バックアップを自動化できます。バックアップ処理を休日や夜間に設定するのも容易です。
豊富なバックアップソフトウェア
BuckupPC、rsnapshotなど、バックアップ特化型のソフトウェアが多数存在します。
Linuxで実現できるバックアップ戦略について、ザックリと説明申し上げましたがそれでもこれだけ豊富なオプションが用意されております。
また、ご利用のLinuxディストリビューションの開発元宛てを中心に「こんな機能が欲しい」みたいなことをメッセージとして発信し続けたら、実際にそういうソフトを作ってくれる人が現れないとも限らないというのがLinuxの面白いところでもあります。Windowsの「マイクロソフトが作って自社製品として販売している」という形態とは違う形で発展しているLinuxならではと言えるでしょう。見る人が見たら「無法地帯」にも見えるかも知れませんが。
小括
というわけで、Linuxというのはメーカーが責任を持って開発して、責任を持ってサポートも行うという体制ではなく、めいめいがいろんなソフトウェアをネット上に公開しているという性質のものなのでOSそのものもその上で動くアプリケーションも非常にたくさんの種類に及びます。
一方でそれは誰も動作保証をしてくれないという欠点にも繋がるわけですが、いろんなところにいろんなコミュニティがありますので「誰か教えて?」と問えば誰かが答えてくれるという、ある意味平和な世界が成立しています。
NASなどには特におすすめのOSですし、個人用としてもいじっているとなかなか面白いものですよ。
遊びから実用まで、使用するOSの候補には立派に入ってくるものだと考えています。
では今日はこのあたりで失礼いたします。
目次
クラウドストレージが持つ特有のリスク
クラウドストレージが持つ特有の脆弱性
クラウドストレージと遠隔地バックアップの相互補完性
クラウドストレージのデータ消失に関する責任の所在
Windowsからの乗り換え先になるか? Linux MintとChrome OS Flex
この記事が気に入ったらサポートをしてみませんか?