付録B GFS から GFS2 へのファイルシステム変換
Red Hat Enterprise Linux 6 リリースは GFS ファイルシステムには対応していません。既存の GFS ファイルシステムはすべて
gfs2_convert
コマンドを使って GFS2 ファイルシステムにアップグレードする必要があります。まず先に Red Hat Enterprise Linux 5 システム上で変換手順を行った後、Red Hat Enterprise Linux 6 にアップグレードする必要があるため注意してください。
警告
GFS ファイルシステムを変換する前に必ずバックアップを取っておいてください。変換処理は元に戻すことはできません。また変換中にエラーが発生するとプログラムが突然終了してファイルシステムが使用できなくなる恐れがあります。
GFS ファイルシステムを変換する前に、
gfs_fsck
コマンドを使用してファイルシステムをチェックしエラーを修正しておいてください。
GFS から GFS2 への変換が停電などによる問題で中断された場合は変換ツールを再起動してください。変換が完了するまでは絶対に
fsck.gfs2
コマンドを実行しないでください。
全ファイルシステムまたはほぼ全ファイルシステムを変換する場合は、GFS2 ファイルシステムの全データ構造を格納するのに十分な領域がない可能性があります。このような場合は、空き領域にすべてが収まるよう全ジャーナルのサイズが均一に縮小されます。
B.1. コンテキスト依存のパス名の変換
GFS2 ファイルシステムではコンテキスト依存のパス名 (CDPN) には対応していません (コンテキスト依存のパス名を使用すると可変のファイルやディレクトリーをポイントするシンボリックリンクを作成することが可能)。GFS2 では、
mount
コマンドの bind
オプションを使用すると同様の動作を行わせることができます。
gfs2_convert
コマンドはコンテキスト依存のパス名を特定し、同じ名前の空のディレクトリーに置き換えます。ただし、コンテキスト依存のパス名を bind を使ったマウントで行わせるようにする場合は、対象のコンテキスト依存のパス名を使ってリンクしている先のフルパスが必要となります。ファイルシステムを変換する前に、find
コマンドを使ってリンクを特定しておきます。
以下のコマンドは、
hostname
のコンテキスト依存のパス名をポイントしているシンボリックリンクを一覧表示します。
[root@smoke-01 gfs]# find /mnt/gfs -lname @hostname
/mnt/gfs/log
同様に、他のコンテキスト依存のパス名 (
mach
、os
、sys
、uid
、gid
, jid
) にも find
コマンドを実行します。コンテキスト依存のパス名は @hostname
または {hostname}
の形式をとる可能性があるためそれぞれに find
コマンドを実行する必要がある点に注意してください。
GFS2 ファイルシステムでの複数マウントの結合とコンテキスト依存のパス名についての詳細は 「複数マウントの結合とコンテキスト依存のパス名」 を参照してください。