新城@筑波大学です。こんにちは。

ZFS を使っている Solaris 10 を動かしている機械のハードウェア
がおかしくなって、新しい機械にOSを再インストールして引越しま
した。引越し後に古い機械からハードディスクをとり時して新しい
機械に接続したのですが、いろいろトラブルがありました。

まず、古いシステムの接続です。zpool import がうまくいきません。
普通なら、

    zpool import

で良いことになっています。import の時に disk の名前の c1d1s0
とか入れたくなるけけど、それは要らないというか、それる方法が
ありません。でも、pool の名前が衝突していると、失敗します。元
のシステムも新しいシステムもSolaris 10 のデフォルトの rpool
になってました。

こんな時には、id で名前を変えながら import できます。

    zpool import id poolname

これで、poolname は新しい名前です。id は、zpool import で失敗
した時に表示されます。あと、import する前には、実は export し
てないとダメというルールもありますが、システムがクラッシュし
た時にそんなことはできません。そんな時は、-f が必要です。あと、
次のようなことで fsck 的なことをしました。

    zpool clear poolname
    zpool scrub poolname

その後困ったのが、マウントポイントの衝突です。このままの状態
で一度再起動したら、新旧2つのシステムが混ざった状態でマウン
トされて、ひどいことになりました。それで、zfs set で設定します。

    zfs set mountpoint=/mnt/prev-export poolname/export

なんか、マウントポイントをディスク自体が覚えているという考え
方は、今ひとつ馴染めない所があります。removable disk なら困る
でしょう。

\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報       \\