名前 | 形式 | 機能説明 | オプション | オペランド | 使用例 | 環境 | 終了ステータス | 属性 | 関連項目 | 注意事項
/usr/sbin/lofiadm -a file [device]
/usr/sbin/lofiadm -d file | device
/usr/sbin/lofiadm [file | device]
lofiadm は、lofi(7D) (ループバックファイルドライバ) を管理します。lofi(7D) は、ファイルをブロックデバイスに関連付けることを可能にします。関連付けられたファイルは、ブロックデバイスからアクセスできます。ブロックデバイスはファイルシステムのマウント、検査、または修復のために通常のシステムユーティリティーと一緒に使用できるため、これは、ファイルにファイルシステムのイメージ (フロッピーや CD-ROM のイメージなど) が含まれている場合に役立ちます。fsck(1m) および mount(1M) を参照してください。
lofiadm を使用して、ファイルをループバックデバイスとして追加したり、そのような関連付けを削除したり、現在の関連付けに関する情報を表示したりします。
サポートしているオプションは、以下のとおりです。
file をブロックデバイスとして追加します。
device が指定されていない場合、使用可能なデバイスが1つ選択されます。
device が指定されている場合、lofiadm はそのデバイスの file への割り当てを試みます。device は使用可能である必要があり、そうでない場合は lofiadm は失敗します。デバイスを指定する機能は、関連付けの特定のセットを再設定するスクリプトで使用するために提供されています。
関連付けられたブロックデバイスがビジー状態ではない場合は、file または device 名で指定された関連付けを削除し、ブロックデバイスの割り当てを解除します。
次のオペランドがサポートされています。
file に関連付けられているブロックデバイスを表示します。
ブロックデバイス device に関連付けられているファイル名を表示します。
引数が指定されていない場合、現在の関連付けのリストを一覧表示します。ファイル名は有効な絶対パス名である必要があります。
ファイルが追加されると、root による読み取りまたは書き込みのためにファイルが開かれます。すべての制限が適用されます (NFS 上のルートアクセスの制限など)。ファイルは、関連付けが削除されるまで開かれたままになります。ブロックデバイスが使用されるまでファイルは実際にアクセスされないため、ブロックデバイスが読み取り専用で開かれた場合はファイルに書き込まれません。
CD を作成する前に、Solaris がイメージを認識することを確認する必要があります。lofi を使用すればイメージをマウントでき、これが機能するかどうかを確認できます。
この例では、インターネットからダウンロードした Red Hat 6.0 CD の既存の CD-ROM イメージ (sparc.iso) をマウントします。これはインターネットから入手した mkisofs ユーティリティーで作成されました。
次のように lofiadm を使用して、これにブロックデバイスを接続します。
# lofiadm -a /home/mike_s/RH6.0/sparc.iso /dev/lofi/1 |
lofiadm はデバイスを選択し、デバイス名を標準出力に表示します。次のコマンドを実行して、lofiadm を再度実行できます。
# lofiadm Block Device File /dev/lofi/1 /home/mike_s/RH6.0/sparc.iso |
または、次のコマンドを実行して一方の名前を指定し、もう一方の名前を要求できます。
# lofiadm /dev/lofi/1 /home/mike_s/RH6.0/sparc.iso |
mount コマンドを使用してイメージをマウントします。
# mount -F hsfs -o ro /dev/lofi/1 /mnt |
Solaris がイメージを認識することを確認します。
# df -k /mnt Filesystem kbytes used avail capacity Mounted on /dev/lofi/1 512418 512418 0 100% /mnt # ls /mnt ./ RedHat/ doc/ ls-lR rr_moved/ ../ TRANS.TBL dosutils/ ls-lR.gz sbin@ .buildlog bin@ etc@ misc/ tmp/ COPYING boot/ images/ mnt/ usr@ README boot.cat* kernels/ modules/ RPM-PGP-KEY dev@ lib@ proc/ |
Solaris は CD-ROM イメージをマウントし、ファイル名を認識できます。イメージが正しく作成されたため、確信をもって CD-ROM を作成できます。
最終ステップとして、イメージのマウント解除および切り離しを行います。
# umount /mnt # lofiadm -d /dev/lofi/1 # lofiadm Block Device File |
これは例 1 と似ています。
フロッピーディスクに必要なファイルが含まれているが、使用するマシンにフロッピードライブがない場合、lofi を使用してフロッピーイメージを含むファイルをマウントすると便利です。dd コマンドを使用してイメージをフロッピーにコピーするのに時間をかけたくない場合にも便利です。
これは、x86 プラットフォーム上で Solaris 用の MDB フロッピーを取得する例です。
# lofiadm -a /export/s28/MDB_s28x_wos/latest/boot.3 /dev/lofi/1 # mount -F pcfs /dev/lofi/1 /mnt # ls /mnt ./ COMMENT.BAT* RC.D/ SOLARIS.MAP* ../ IDENT* REPLACE.BAT* X/ APPEND.BAT* MAKEDIR.BAT* SOLARIS/ # umount /mnt # lofiadm -d /export/s28/MDB_s28x_wos/latest/boot.3 |
UFS ファイルシステムをファイル上に作成すると、特にテストスイートに新しいファイルシステムが必要な場合に便利です。テストスイートのためだけにディスクをパーティションに再分割するのは手間がかかりますが、その必要はありません。lofi を使用するとファイルに newfs を実行できます
ファイルを作成します。
# mkfile 35m /export/home/test |
作成したファイルをブロックデバイスに接続します。newfs に必要な文字デバイスも取得するため、newfs は次のようになります。
# lofiadm -a /export/home/test /dev/lofi/1 # newfs /dev/rlofi/1 newfs: construct a new file system /dev/rlofi/1: (y/n)? y /dev/rlofi/1: 71638 sectors in 119 cylinders of 1 tracks, 602 sectors 35.0MB in 8 cyl groups (16 c/g, 4.70MB/g, 2240 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, 9664, 19296, 28928, 38560, 48192, 57824, 67456, |
ufs はファイル全体を使用できない場合があります。ファイルシステムをマウントおよび使用します。
# mount /dev/lofi/1 /mnt # df -k /mnt Filesystem kbytes used avail capacity Mounted on /dev/lofi/1 33455 9 30101 1% /mnt # ls /mnt ./ ../ lost+found/ # umount /mnt # lofiadm -d /dev/lofi/1 |
次に示す一連のコマンドは、FAT ファイルシステムを UNIX ファイル上に作成します。ファイルは lofiadm によって作成されたブロックデバイスに関連付けられています。
# mkfile 10M /export/test/testfs # lofiadm -a /export/test testfs /dev/lofi/1 (次のコマンドでは「lofi」ではなく「rlofi」を使用します)。 # mkfs -F pcfs -o nofdisk,size=20480 /dev/rlofi/1 Construct a new FAT file system on /dev/rlofi/1: (y/n)? y # mount -F pcfs /dev/lofi/1 /mnt # cd /mnt # df -k . Filesystem kbytes used avail capacity Mounted on /dev/lofi/1 10142 0 10142 0% /mnt |
lofiadm の実行に影響を与える次の環境変数の詳細については、environ(5) を参照してください。LC_CTYPE、LC_MESSAGES および NLSPATH。
次の属性については、attributes(5) を参照してください。
属性タイプ |
属性値 |
使用条件 |
SUNWcsu |
マウントされたファイルシステムを持つディスクデバイスに直接アクセスしないのと同様に、lofi ファイルドライバを使用する場合を除き、ブロックデバイスに関連付けられているファイルにアクセスしないようにしてください。また、そのようなアクセスを防止するために、適切なアクセス権をファイルに設定することもお勧めします。
関連付けはリブート後に持続されません。必要な場合は、スクリプトを使用して関連付けを再設定できます。
lofiadm の機能およびこの機能を使用できるユーザーは、/dev/lofictl のアクセス権によって制御されます。読み取りアクセス権は、すべての関連付けの表示などのクエリー操作を可能にします。書き込みアクセス権は、関連付けの追加などの状態変更操作の実行に必要です。出荷時の /dev/lofictl は、root によって所有され、グループ sys に所属し、モード 0644 に設定されているため、すべてのユーザーがクエリー操作を実行できますが、変更操作はルートのみに可能です。管理者は、ユーザーに書き込みアクセスを与えて、関連付けの追加または削除を許可することができますが、これはセキュリティーホールになる可能性が非常に高いため、信頼できるグループにのみ与えるようにしてください。
ファイルシステムイメージをマウントする場合は、適切なマウントオプションを使用するように注意してください。特に、出所が不明な UFS イメージには、nosuid マウントオプションが適切な場合があります。また、UFS に logging や forcedirectio を使用する場合のように、いくつかのオプションは役に立たなかったり適切でなかったりすることがあります。互換性を保つために、raw デバイスもブロックデバイスと一緒にエクスポートされます。 たとえば、newfs(1M) にはこれが必要です。
lofiadm (引数なし) の出力は、将来のリリースで変更される可能性があります。
名前 | 形式 | 機能説明 | オプション | オペランド | 使用例 | 環境 | 終了ステータス | 属性 | 関連項目 | 注意事項