2009年 1月 18日 日曜日
|
|
Messages in cipher reflected in the looking glass [ Yasuhiro Fujitsuki's Weblog ] |
(JA) Solaris Express (nevada) b105 : USB ZFS boot
前回に続き、Solaris Express を ZFSブート化した場合の rmformat , df -k , /var/adm/messages の出力です。
ちなみにテスト環境はこんな感じです。一応、メインの被写体はPCではなくUSBメモリです。
余計なものが微妙に写りこんでいますが、詮索しないでください。f(^-^;
(ログの日付でいつ、どこで作業しているかは大体想像できるかと思いますし。)
Solaris をテキストインストーラで起動して、USBにZFS環境を構築しているところです。
X-Windowが表示されているので、別途端末エミュレータを表示させて、
裏で zpool や zfs の出力を見てたり、インストーラの画面を取り込んでいました。
インストール中は /a にマウントされます。rootユーザのホームディレクトリは
/a/root となっているので、この辺にインストール時のログ等を取った場合、
置いておくと良かったりします。
hbash-3.2# rmformat
デバイスを探しています...
1. Logical Node: /dev/rdsk/c0t2d0p0
Physical Node: /pci@0,0/pci1462,6510@1f,2/cdrom@2,0
Connected Device: TEAC DV-W28S-R F.0B
Device Type: DVD Reader/Writer
Bus: <Unknown>
Size: <Unknown>
Label: <Unknown>
Access permissions: <Unknown>
2. Logical Node: /dev/rdsk/c1t0d0p0
Physical Node: /pci@0,0/pci1462,6510@1d,7/storage@2/disk@0,0
Connected Device: Patriot Memory PMAP
Device Type: Removable
Bus: USB
Size: 30.6 GB
Label: <None>
Access permissions: <Unknown>
bash-3.2# df -k
ファイルシステム kbytes 使用済み 使用可能 容量 マウント先
rpool/ROOT/snv_105 30707712 7499809 20059944 28% /
/devices 0 0 0 0% /devices
/dev 0 0 0 0% /dev
ctfs 0 0 0 0% /system/contract
proc 0 0 0 0% /proc
mnttab 0 0 0 0% /etc/mnttab
swap 3607736 524 3607212 1% /etc/svc/volatile
objfs 0 0 0 0% /system/object
sharefs 0 0 0 0% /etc/dfs/sharetab
/usr/lib/libc/libc_hwcap1.so.1
27559753 7499809 20059944 28% /lib/libc.so.1
fd 0 0 0 0% /dev/fd
swap 3607292 80 3607212 1% /tmp
swap 3607260 48 3607212 1% /var/run
rpool/export 30707712 19 20059944 1% /export
rpool/export/home 30707712 18 20059944 1% /export/home
rpool 30707712 30 20059944 1% /rpool
# cat /var/adm/messages
Jan 11 14:41:39 unknown npe: [ID 236367 kern.info] PCI Express-device: pci1462,6510@1d,7, ehci1
Jan 11 14:41:39 unknown genunix: [ID 936769 kern.info] ehci1 is /pci@0,0/pci1462,6510@1d,7
Jan 11 14:41:40 unknown usba: [ID 912658 kern.info] USB 2.0 device (usb13fe,1f00) operating at hi speed (USB 2.x) on USB 2.0
root hub: storage@2, scsa2usb0 at bus address
Jan 11 14:41:40 unknown usba: [ID 349649 kern.info] Patriot Memory 078C0EAB038F
Jan 11 14:41:40 unknown genunix: [ID 936769 kern.info] scsa2usb0 is /pci@0,0/pci1462,6510@1d,7/storage@2
Jan 11 14:41:40 unknown genunix: [ID 408114 kern.info] /pci@0,0/pci1462,6510@1d,7/storage@2 (scsa2usb0) online
Jan 11 14:41:40 unknown scsi: [ID 193665 kern.info] sd2 at scsa2usb0: target 0 lun 0
Jan 11 14:41:40 unknown genunix: [ID 936769 kern.info] sd2 is /pci@0,0/pci1462,6510@1d,7/storage@2/disk@0,0
Jan 11 14:41:40 unknown genunix: [ID 408114 kern.info] /pci@0,0/pci1462,6510@1d,7/storage@2/disk@0,0 (sd2) online
Jan 11 14:41:44 unknown genunix: [ID 308332 kern.info] root on rpool/ROOT/snv_105 fstype zfs
下記はインストール直後の zpool, zfs の出力。
bash-3.2# zpool list NAME SIZE USED AVAIL CAP HEALTH ALTROOT rpool 29.8G 8.18G 21.6G 27% ONLINE - bash-3.2# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 10.2G 19.1G 30.5K /rpool rpool/ROOT 7.15G 19.1G 18K legacy rpool/ROOT/snv_105 7.15G 19.1G 7.15G / rpool/dump 1.00G 19.1G 1.00G - rpool/export 37K 19.1G 19K /export rpool/export/home 18K 19.1G 18K /export/home rpool/swap 2G 21.1G 24.0M -
ZFSブートを行う場合のテキストインストーラのログを載せておきます。
下記はディスクの選択ですが、デフォルトでは HDD がブートデバイスとしても選択されています。
(「**」がついています)
ここでは、USBメモリ c1t0d0 を選択し、HDD c0t0d0 のチェックをはずしています。
ディスクの選択
On this screen you must select the disks for installing Solaris software.
Start by looking at the Suggested Minimum field; this value is the
approximate space needed to install the software you've selected. For ZFS,
multiple disks will be configured as mirrors, so the disk you choose, or the
slice within the disk must exceed the Suggested Minimum value.
NOTE: ** denotes current boot disk
ディスクデバイス 空き領域
=============================================================================
[ ] ** c0t0d0 37973 MB
[X] c1t0d0 30553 MB (F4 で編集)
Maximum Root Size: 30553 MB
推奨する最小値: 9206 MB
F2_継続 F3_前に戻る F4_編集 F5_終了 F6_ヘルプ
上記のようにするとブートデバイスが選択されていない状態になるので、
ブートデバイスを選択する必要があります。
今回は USB メモリにブート用の Grub もインストールしますので、
F3 キーを入力して選択画面に移動します。
ブートデバイス未選択
デフォルトのブートデバイス (c0t0d0) を選択していません。
前に戻って、デフォルトのブートデバイスを選択しない場合、
システムは以下で選択したオプションに従って、常に別の
デバイスから Solaris をリブートします。
> Solaris インストールプログラムにブートデバイスの構成を
まかせるには、「了解」を選択してください。
> 別のブートデバイスを構成するには、「選択」を選択して
ください。
F2_了解 F3_選択 F5_取消し
USBメモリしか表示されませんので、そのまま進みます。
ブートディスクの選択
この画面では、システムをブートするディスクを選択します。
ブートディスクに x86BOOT パーティションが含まれている場合、
ルート (/) パーティションは、どのディスクに配置してもかまいません。
x86BOOT パーティションを使用する場合、ルート (/) パーティションは
ブートディスク上に配置されます。
元のブートディスク : c0t0d0
ディスク
==============================
[X] c1t0d0
F2_了解 F5_取消し F6_ヘルプ
ZFSのコンフィギュレーションに移るので、必要に応じて変更します。
Configure ZFS Settings
Specify the name of the pool to be created from the disk(s) you have chosen.
Also specify the name of the dataset to be created within the pool that is
to be used as the root directory for the filesystem.
ZFS Pool Name: rpool
ZFS Root Dataset Name: snv_105
ZFS Pool Size (in MB): 30554
Size of Swap Area (in MB): 2048
Size of Dump Area (in MB): 1024
(Pool size must be between 9206 MB and 30554 MB)
[X] Keep / and /var combined
[ ] Put /var on a separate dataset
F2_継続 F3_前に戻る F5_終了 F6_ヘルプ
インストールの最終確認時に表示されるプロファイルです。
プロファイル
以下の情報は Solaris をインストールするために必要なプロファイルです。
前の画面で行なった選択が反映されています。
注: デフォルトのブートデバイスを変更したため、BIOS を変更
する必要があります。
============================================================================
インストールオプション: 初期
ブートデバイス: c1t0d0
Root File System Type: ZFS
クライアントサービス: なし
ロケール: [日本語 EUC (ja)]
[日本語 PC 漢字 (ja_JP.PCK)]
[日本語 UTF-8 (ja_JP.UTF-8)]
システムのロケール: [日本語 UTF-8 (ja_JP.UTF-8)] ( ja_J
ソフトウェア: Solaris 11, 全体ディストリビューションサポ
Pool Name: rpool
Boot Environment Name: snv_105
Pool Size: 30554 MB
Devices in Pool: c1t0d0
F2_インストールを開始 F4_変更 F5_終了 F6_ヘルプ
上記で F2 キーを押して、インストールを開始する場合、 下記のような警告が出てきます。 これはブートデバイスの変更に伴うことなので、 F2 キーを押してそのままインストールを行います。
警告
次のディスク構成状態が検出されました。確実にインストールを
行うためには、エラーを修正する必要があります。警告について
は無視できます (インストールが 失敗することはありません)。
警告: デフォルトのブートデバイスの変更
システムが、指定したブートデバイスから常に Solaris
をリブートするようにしたい場合には、Solaris
ソフトウェアをインストールしたあとで、システムの BIOS
デフォルトブートデバイスを変更する必要があります。
F2_了解 F5_取消し
これでインストールが開始されます。
あとは下記のような感じで出力され、インストールが行われます。
Patriot Memory Patriot USB Xporter XT Boost 32GB を使っていますが、
Entire(全体ディストリビューション)インストールで、ここから2時間ほど時間がかかります。
Solaris をインストールするためにシステムを準備しています
ディスク (c1t0d0) を構成中です
- fdisk パーティションテーブルを作成中です
- Solaris ディスクラベル (VTOC) を作成中です
- Creating pool rpool
- Creating swap zvol for pool rpool
- Creating dump zvol for pool rpool
Solaris 11 ソフトウェアのインストールが完了しました
システムファイルをカスタマイズ中です
- マウントポイントテーブル (/etc/vfstab)
- 選択されていないディスクのマウントポイント (/var/sadm/system/data/vfstab.unselected)
- ネットワークホストアドレス (/etc/hosts)
- 環境変数 (/etc/default/init)
デバイスをクリーンアップ中です
システムデバイスをカスタマイズ中です
- 物理デバイス (/devices)
- 論理デバイス (/dev)
ブート情報をインストール中です
bootadm: biosdev command failed for disk: /dev/dsk/c1t0d0s0.
bootadm: is_bootdisk(): cannot determine BIOS disk ID 'hd?' for disk: /dev/dsk/c1t0d0s0
bootadm: get_grubroot(): cannot get (hd?,?,?) for menu. menu not on bootdisk: /dev/rdsk/c1t0d0s0
- ブートブロック (c1t0d0) をインストール中です
- ブートブロック (/dev/rdsk/c1t0d0s0) をインストール中です
上記のインストール方法では、Grub は USBメモリにインストールされます。
この方法では、HDD側には Grub がインストールされませんので、
Linux 等がすでにインストールされていても影響を与えません。
また、USBメモリを挿せば Solaris 、はずせば Windows/Linux 等が起動できるようになります。
最近、USBメモリは 8GB で 2000-3000円台で買えますし、
16GBも 4000円前後で買えます。
OpenSolarisの推奨は9GBとなっているのですが、
8GBであれば普通に使えますし、IPS等のアップデート等のテストなら
16GBあれば足りるのではないかと。
Solaris Express でも 16GB 以上あれば十分全体ディストリビューションで
インストールできますので、
HDDにはSolarisをインストールせずに USBメモリで済ませてしまうということもできそうです。
(PCがUSBメモリからのブートに対応していることが前提ですが)
Posted at 10:11午前 1 18, 2009 by Yasuhiro Fujitsuki in Linux & Solaris |