Solaris のシステム管理 (デバイスとファイルシステム)

USB 大容量ストレージデバイスのホットプラグ

デバイスのホットプラグとは、オペレーティングシステムをシャットダウンすることなくあるいはシステムの電源を切ることなく、デバイスを追加したり取り外したりすることを指します。USB デバイスはすべてホットプラグ対応です。

リムーバブルメディアマネージャーがホットプラグ対応のデバイスを認識するようになりました。デバイスをプラグインするだけで、数秒でマウントされます。何も起こらない場合はデバイスがマウントされているどうかを確認してください。

リムーバブルメディアサービスが動作していることを確認します。


# svcs volfs
STATE          STIME    FMRI
online         10:39:12 svc:/system/filesystem/volfs:default

# svcs hal dbus rmvolmgr
STATE          STIME    FMRI
online         May_03   svc:/system/dbus:default
online         May_03   svc:/system/hal:default
online         May_03   svc:/system/filesystem/rmvolmgr:default

デバイスが有効で認識されている場合は、デバイスからファイルシステムをマウントできます。

マウントに失敗した場合は、vold を停止します。


# svcadm disable volfs

デバイス上のファイルシステムが自動的にマウントされない場合は、手動によるマウントを試みます。

デバイスをホットリムーブする前に、eject -l コマンドの別名からそのデバイスの名前を探します。次に、デバイスのメディアを取り出します。この処理を行わない場合でも、デバイスが解放されてポートが使用できる状態に戻りますが、デバイス上のファイルシステムが破損する場合があります。

USB デバイスは、ホットプラグを実行するとすぐにシステムのデバイス階層に表示されます (prtconf コマンドで確認可能)。USB デバイスを使用していないときにそのデバイスを取り外すと、システムのデバイス階層からそのデバイスが削除されます。

デバイスを取り外したときにそのデバイスを使用していた場合、デバイスノードは残りますが、このデバイスを制御しているドライバはデバイス上のすべての動作を停止します。このデバイスに発行されるすべての新しい入出力動作はエラーを返します。

このような状況で、 システムは元のデバイスを差し込むように要求します。デバイスが使用できない場合は、アプリケーションを停止してください。数秒後に、ポートが再び使用できるようになります。


注 –

動作中の、つまり開いているデバイスを削除すると、データの整合性が損なわれる可能性があります。デバイスを取り外す前には、必ずデバイスを閉じるようにしてください。ただし、接続されているキーボードとマウスは例外で、動作中でも移動することができます。


Procedurevold を使用しないで USB 大容量ストレージデバイスを追加する方法

  1. リムーバブルメディア管理を無効にする方法については、「リムーバブルメディアサービスを無効または有効にする方法」を参照してください。

  2. vold が動作していないことを確認します。


    # svcs volfs
    STATE          STIME    FMRI
    disabled       10:39:12 svc:/system/filesystem/volfs:default
  3. USB 大容量ストレージデバイスを接続します。

  4. USB デバイスが追加されたことを確認します。

    非 USB ストレージデバイスのデバイスリンクの間にあるかもしれない USB ディスクのデバイスリンクを、次のようにして確認します。


    $ rmformat
    Looking for devices...
    1. Logical Node: /dev/rdsk/c3t0d0p0
       Physical Node: /pci@0,0/pci108e,4131@2,1/storage@4/disk@0,0
       Connected Device: USB2.0   Flash Disk       2.00
       Device Type: Removable

ProcedureUSB カメラを追加する方法

カメラのメディアが PCFS ファイルシステムを使用している場合は、自動的にマウントされます。デバイスが scsa2usb ドライバにバインドされない場合は、libusb アプリケーションを使用して写真を転送します。詳細は、/usr/sfw/share/doc/libusb/libusb.txt を参照してください。

  1. スーパーユーザーになります。

  2. USB カメラを差し込んで電源を入れます。

    システムによって、カメラ用の論理デバイスが作成されます。カメラが差し込まれると、/var/adm/messages ファイルにメッセージが出力され、デバイスの接続が確認されます。システムでは、カメラはストレージデバイスとして扱われます。

  3. /var/adm/messages ファイルの出力を確認します。


    # more /var/adm/messages
    

    出力表示を確認すると、どの論理デバイスが作成されたかを確認でき、そのデバイスを使用してイメージにアクセスできます。出力表示は次のようになります。


    Jul 15 09:53:35 buffy usba: [ID 349649 kern.info]    OLYMPUS, C-3040ZOOM,
     000153719068
    Jul 15 09:53:35 buffy genunix: [ID 936769 kern.info] scsa2usb1 is 
    /pci@0,0/pci925,1234@7,2/storage@2
    Jul 15 09:53:36 buffy scsi: [ID 193665 kern.info] sd3 at scsa2usb1: 
    target 0 lun 0

    次のコマンドを実行して、デバイスをマウント可能な /dev/dsk リンクエントリに関連付けます。


    # ls -l /dev/dsk/c*0 | grep /pci@0,0/pci925,1234@7,2/storage@2
     lrwxrwxrwx   1 root     root          58 Jun 14  2010 c3t0d0p0 ->
     ../../devices/pci@0,0/pci925,1234@7,2/storage@2/disk@0,0:a
  4. USB カメラファイルシステムをマウントします。

    ほとんどの場合、カメラのファイルシステムは PCFS ファイルシステムです。ファイルシステムが PCFS の場合は、自動的にマウントされます。

    x86 システム上でファイルシステムを手動でマウントするには、次のような構文を使用します。


    # mount -F pcfs /dev/dsk/c3t0d0p0:c /mnt
    

    SPARC システム上でファイルシステムを手動でマウントするには、次のような構文を使用します。


    # mount -F pcfs /dev/dsk/c3t0d0s0:c /mnt
    

    ファイルシステムのマウント方法については、第 18 章ファイルシステムのマウントとマウント解除 (手順)を参照してください。

    さまざまな PCFS ファイルシステムのマウント方法については、mount_pcfs(1M) のマニュアルページを参照してください。

  5. イメージファイルが使用可能であることを確認します。

    次に例を示します。


    # ls /mnt/DCIM/100OLYMP/
    P7220001.JPG*  P7220003.JPG*  P7220005.JPG*
    P7220002.JPG*  P7220004.JPG*  P7220006.JPG*
  6. USB カメラが作成したイメージファイルを表示します。

    次に例を示します。


    # /usr/dt/bin/sdtimage P7220001.JPG &
    
  7. カメラを切り離す前に、ファイルシステムをマウント解除します。

    次に例を示します。


    # umount /mnt
    
  8. (省略可能) カメラの電源をオフにし、切り離します。

Procedurevold を使用しないで USB 大容量ストレージデバイスを取り外す方法

この手順は、リムーバブルメディアサービスが無効になっている状態で実行します。

  1. スーパーユーザーになります。

  2. リムーバブルメディアサービスを無効にする方法については、「リムーバブルメディアサービスを無効または有効にする方法」を参照してください。

  3. リムーバブルメディアサービスが動作していないことを確認します。


    # svcs volfs
    STATE          STIME    FMRI
    disabled       Sep_29   svc:/system/filesystem/volfs:default
  4. そのデバイスを使用しているアプリケーションを実行中の場合は、そのアプリケーションを停止します。

  5. デバイスをマウント解除します。

  6. デバイスを取り外します。