2012年6月21日木曜日

SLES11SP2 新機能 「Snapper」

ごきげんいかがですか。サイオステクノロジーの稲垣です。

最近、遅ばせながら SLES11SP2 を触っています。

今回は、その SLES11SP2 にて導入された新機能「Snapper」について紹介したいと思います。

SLES11SP2 では、新たに Btrfs というファイルシステムがサポートされました。

Btrfs の主な機能の 1 つとしてスナップショットを使用できる点が挙げられますが、そのスナップショットを GUI で管理できるようにする機能が Snapper となります。

今回は、スナップショットと Snapper を使用して、PostgreSQL をインストールした後にインストール前の状態に戻すという作業を行なってみます。

※今回の環境は、OS インストール時にシステムディレクトリを Btrfs にフォーマットしています。

では、早速使用してみましょう。

作業を始める前に、以下のコマンドを使用して Snapper の GUI を表示して、現在のスナップショットの取得状況を確認します。

# yast2 snapper

まだスナップショットが作成されていない場合は、この画像のような表示となります。

では、本作業に入って行きましょう。

まずは、PostgreSQL がインストールされていないことを確認します。

# rpm -qa | grep postgre
#

次に、zypper コマンドを使用して、PostgreSQL をインストールします。

# zypper in postgresql
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following NEW packages are going to be installed:
  postgresql postgresql-libs

The following packages need additional customer contract to get support:
  postgresql postgresql-libs

2 new packages to install.
Overall download size: 1.2 MiB. After the operation, additional 5.0 MiB will be
used.
Continue? [y/n/?] (y): y
Retrieving package postgresql-libs-8.3.18-0.3.1.x86_64 (1/2), 191.0 KiB (575.0 KiB unpacked)
Retrieving: postgresql-libs-8.3.18-0.3.1.x86_64.rpm [done]
Retrieving package postgresql-8.3.18-0.3.1.x86_64 (2/2), 1.0 MiB (4.5 MiB unpacked)
Retrieving: postgresql-8.3.18-0.3.1.x86_64.rpm [done]
Installing: postgresql-libs-8.3.18-0.3.1 [done]
Installing: postgresql-8.3.18-0.3.1 [done]

PostgreSQL がインストールされていることを確認します。

# rpm -qa | grep postgre
postgresql-libs-8.3.18-0.3.1
postgresql-8.3.18-0.3.1

その後、Snapper の GUI を確認します。

スナップショットが 2 つ作成されています。

1 つめは "yast snapper" コマンドを実行した際のスナップショット、2 つめは zypper コマンドで PostgreSQL をインストールした際のスナップショットとなります。

ちなみに、スナップショットが作成されるタイミングは、以下のとおりです。

  • zypper コマンドが使用されたタイミング
  • YaST コマンドが使用されたタイミング
  • cron.hourly が実行されたタイミング

そのため、rpm コマンドを使用してインストールを行う場合には、事前にコマンドを使用してスナップショットを作成しておく必要があります。

スナップショットの作成コマンドは、snapper コマンドを使用します。

# snapper create

※snapper コマンドの詳細については、"man snapper" を確認してください。

PostgreSQL パッケージをインストールする直前に戻るため、2 つめのスナップショットを選択し、[変更点の表示] をクリックします。

クリックすると、以下の画面が表示されます。

これは全てのツリーを開いて表示した状態です。

この画面に表示されているものが、新規で追加されたファイル、変更があったファイルとなります。

インストール前に戻すので、全てにチェックを付けて [選択したものを復元] をクリックします。

最後に、選択した内容が正しいかを確認されるので、確認した後に [はい] をクリックします。

[はい] をクリックすると、スナップショットからの復元が開始されます。下部に表示されているバーが 100% になれば完了です。

完了したら、PostgreSQL パッケージがインストールされているか確認してみます。

# rpm -qa | grep postgre
#

インストール前に無事に戻っていましたね。

この他にも、SLES11SP2 には様々な追加要素があるので、今後も色々いじってみます。

今後の報告をお待ち下さい!

以上、稲垣でした。

0 件のコメント:

コメントを投稿