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

第 18 章 ファイルシステムのマウントとマウント解除 (手順)

この章では、Oracle Solaris OS でのファイルシステムのマウントとマウント解除の方法について説明します。

この章で説明する手順は次のとおりです。

ファイルシステムのマウントの概要

ファイルシステムを作成したら、そのファイルシステムをシステムで使用できるようにする必要があります。ファイルシステムを使用できるようにするには、マウントします。マウントしたファイルシステムは、システムのディレクトリツリー内の指定したマウントポイントに接続されます。ルート (/) ファイルシステムは、常にマウントされています。

次の表に、ファイルシステムをその用途に応じてマウントするためのガイドラインを示します。

必要なマウントの種類 

推奨されるマウント方法 

ローカルまたはリモートのファイルシステムをときどきマウントする 

コマンド行から手動で mount コマンドを入力します。

ローカルの UFS ファイルシステムを頻繁にマウントする。ローカルの ZFS ファイルシステムは、SMF サービスにより自動的にマウントされます。 

/etc/vfstab ファイルを使用して、システムがマルチユーザー状態でブートされたときに、自動的にファイルシステムをマウントします。

ホームディレクトリなどのリモートの UFS ファイルシステムを頻繁にマウントする 

  • /etc/vfstab ファイルを使用して、システムがマルチユーザーモードでブートされたときに、自動的にファイルシステムをマウントします。

  • autofs を使用して、ユーザーがアクセスするときに自動的にマウントします。その後、ファイルシステムから別のディレクトリに移動するときに自動的にマウント解除します。

ファイルシステムを含むリムーバブルメディアは、必要に応じてメディアをドライブに挿入し、volcheck コマンドを実行することによってマウントできます。リムーバブルメディアのマウント方法については、第 1 章リムーバブルメディアの管理 (概要)を参照してください。

UFS ファイルシステムのマウントとマウント解除に使用するコマンド

次の表に、UFS ファイルシステムのマウントとマウント解除に使用する /usr/sbin ディレクトリ内のコマンドを示します。

表 18–1 UFS ファイルシステムのマウントとマウント解除に使用するコマンド

コマンド 

説明 

マニュアルページ 

mount

ファイルシステムとリモートリソースをマウントします。 

mount(1M)

mountall

/etc/vfstab ファイルに指定されているすべてのファイルシステムをマウントします。システムがマルチユーザーモードになるときに、mountall コマンドが自動的に実行されます。

mountall(1M)

umount

ファイルシステムとリモートリソースをマウント解除します。 

mount(1M)

umountall

/etc/vfstab ファイルに指定されているすべてのファイルシステムをマウント解除します。

mountall(1M)

ZFS ファイルシステムをマウントおよびマウント解除する方法の詳細は、『Oracle Solaris ZFS 管理ガイド』を参照してください。

mount コマンドと mountall コマンドの使用時には、次の点に注意してください。

UFS の汎用マウントオプション

次の表に、mount -o オプションで指定できる汎用オプションを示します。複数のオプションを指定する場合は、コンマ (空白を入れない) で区切ります。たとえば、-o ro,nosuid のようになります。

各ファイルシステムタイプで指定可能なマウントオプションのリストについては、各マウントコマンドのマニュアルページ (mount_ufs(1M) など) を参照してください。ZFS ファイルシステムのマウントについては、zfs(1M) を参照してください。

表 18–2 -o で指定する汎用マウントオプション

mount オプション 

ファイルシステム 

説明 

bg | fg

NFS 

最初のマウントに失敗すると、バックグラウンド (bg) またはフォアグラウンド (fg) で再試行します。このオプションは重要でない vfstab エントリには安全です。デフォルトは fg です。

hard | soft

NFS 

サーバーが応答しない場合の手続きを指定します。soft オプションは、エラーが返されることを示します。hard オプションは、サーバーが応答するまで再試行要求が継続されることを示します。デフォルトは hard です。

intr | nointr

NFS 

ハードマウントされたファイルシステムに関する応答を待って実行を停止しているプロセスを、キーボード割り込みで強制終了できるかどうかを指定します。デフォルトは intr (割り込み可能) です。

largefiles | nolargefiles

UFS 

2G バイトを超えるファイルを作成できるようにします。largefiles オプションを使ってマウントされたファイルシステムには、2G バイトを超えるファイルを格納できます。nolargefiles オプションを指定した場合、UFS ファイルシステムは以前の Solaris バージョンが動作しているシステムにはマウントできません。デフォルトは largefiles です。

logging | nologging

UFS 

ファイルシステムのロギングを有効または無効にします。UFS ロギングとは、トランザクション (完全な UFS 処理を構成する変更) をログに保存してから、そのトランザクションを UFS ファイルシステムに適用するプロセスです。ロギングを使用すると、UFS ファイルシステムの整合性を保つことができます。つまり、fsck を省略できることを意味します。fsck を省略すると、システムがクラッシュしたとき、あるいはシステムをクリーンな状態でシャットダウンできなかったとき、システムをリブートする時間を省けます。

ログはファイルシステムの空きブロックから、1G バイトのファイルシステム領域ごとに約 1M バイトのサイズ (合計で 256M バイトまで) が割り当てられます。ファイルシステムに大量のシリンダグループが存在する場合、ログのサイズはこれより大きくなることがあります (最大で 512M バイトまで)。 

atime | noatime

UFS 

ファイルのアクセス時間更新を抑制します。ただし、最後にファイルの状態が変わった時間または最後にファイルが変更された時間に対する更新が同時に行われる場合を除きます。詳細は、stat(2) のマニュアルページを参照してください。このオプションによって、アクセス時間が重要でないファイルシステム (Usenet ニューススプールなど) でのディスクに対する動作が減ります。デフォルトでは、通常アクセス時間 (atime) が記録されます。

remount

すべて 

すでにマウントされているファイルシステムに関連付けられているマウントオプションを変更します。このオプションは、通常、ro 以外のオプションと併用できます。ただし、このオプションを使って変更できる内容は、ファイルシステムの種類によって異なります。

retry=n

NFS 

マウント処理に失敗した場合に再試行します。n は再試行回数です。

ro | rw

CacheFS、NFS、 PCFS、UFS、HSFS 

読み取り / 書き込み (rw) または読み取り専用 (ro) を指定します。このオプションを指定しない場合のデフォルトは rw です。HSFS のデフォルトのオプションは ro です。

suid | nosuid

CacheFS、HSFS、 NFS、UFS 

setuid 実行を許可または禁止します。デフォルトは、setuid 実行を許可します。

/etc/vfstab ファイルのフィールドの説明

/etc/vfstab ファイル内のエントリには、次の表に示すように 7 つのフィールドがあります。

表 18–3 /etc/vfstab ファイルのフィールドの説明

フィールド名 

説明 

device to mount

このフィールドは、次のいずれかを指定します。 

  • ローカル UFS ファイルシステム用のブロックデバイス名 (/dev/dsk/c0t0d0s0 など)。

  • リモートファイルシステム用のリソース名 (myserver:/export/home など)。NFS の詳細は、『Solaris のシステム管理 (IP サービス)』を参照してください。

  • スワップ空間用のスライスのブロックデバイス名 (/dev/dsk/c0t3d0s1 など)。

  • 仮想ファイルシステム用のディレクトリ。

device to fsck

device to mount」フィールドで指定した UFS ファイルシステムに対応する raw (キャラクタ型) デバイス名 (/dev/rdsk/c0t0d0s0 など)。このフィールドによって、fsck コマンドが使用する raw インタフェースが決まります。読み取り専用ファイルシステムやリモートファイルシステムなど、適用できるデバイスがない場合は、ダッシュ (-) を使用します。

マウントポイント

ファイルシステムのマウントポイントディレクトリ (/usr など) を指定します。

 

FS type

ファイルシステムのタイプを指定します。 

fsck pass

fsck コマンドが UFS ファイルシステムを検査するか決めるために使用するパス番号。このフィールドでダッシュ (-) を指定すると、ファイルシステムは検査されません。現在、/etc/vfstab ファイルの fsck pass 値はブートプロセスで無視されます。

このフィールドでゼロを指定すると、UFS ファイルシステムは検査されません。このフィールドに 0 より大きい値が指定されている場合、UFS ファイルシステムは常に検査されます。  

このフィールドに 1 が指定されている場合、すべての UFS ファイルシステムは vfstab ファイル内の順番どおりに 1 つずつ検査されます。このフィールドに 1 より大きな値が指定され、さらに preen (修復) オプション (-o p) が指定されている UFS ファイルシステムが複数ある場合、効率を最大限に高めるために、fsck コマンドは複数のディスク上のファイルシステムを自動的に並行して検査します。それ以外の場合、このフィールドの値は意味を持ちません。

mount at boot

システムのブート時にファイルシステムが mountall コマンドによって自動的にマウントされるかどうかを yes または no で設定します。このフィールドは autofs とは連動していません。ルート (/)、/usr/var のファイルシステムは最初は vfstab ファイルからマウントされません。これらのファイルシステムおよび /proc/dev/fd などのような仮想ファイルシステムの場合、このフィールドは常に no に設定するべきです。

mount options

ファイルシステムのマウントに使用されるオプションを (空白を入れずに) コンマで区切ったリスト。オプションなしを示すにはダッシュ (-) を使用します。よく使用されるマウントオプションの一覧については、表 18–2 を参照してください。


注 –

/etc/vfstab ファイル内の各フィールドには必ずエントリが必要です。フィールドに値を指定しない場合は、必ずダッシュ (-) を入力してください。ダッシュを入力しないと、システムが正常にブートしない可能性があります。同様に、フィールドの値に空白文字を使用しないでください。


ファイルシステムのマウント

次の節では、/etc/vfstab ファイルにエントリを追加するか、コマンド行から mount コマンドを使用して UFS ファイルシステムをマウントする方法について説明します。

どのファイルシステムがマウントされているかを調べる方法

どのファイルシステムがすでにマウント済みであるかを調べるには、mount コマンドを使用します。


$ mount [ -v ]

-v は、マウントされているファイルシステムのリストを冗長モードで表示します。


例 18–1 どのファイルシステムがマウントされているかを調べる

この例は、mount コマンドを使用して、現在マウントされているファイルシステムに関する情報を表示する方法を示しています。


$ mount
/ on /dev/dsk/c0t0d0s0 read/write/setuid/intr/largefiles/xattr/onerror=...
/devices on /devices read/write/setuid/dev=46c0000 on Thu Sep  ...
/system/contract on ctfs read/write/setuid/devices/dev=43c0001 ... 
/usr on /dev/dsk/c0t0d0s6 read/write/setuid/intr/largefiles/xattr/...
/proc on /proc read/write/setuid/dev=4700000 on Thu Sep  2 ...
/etc/mnttab on mnttab read/write/setuid/dev=47c0000 on Thu Sep  2 ...
/etc/svc/volatile on swap read/write/setuid/devices/xattr/dev=4480001 ...
/system/object on objfs read/write/setuid/devices/dev=44c0001 ...
/dev/fd on fd read/write/setuid/dev=4800000 on Thu Sep  2 ...
/var/run on swap read/write/setuid/xattr/dev=1 on Thu Sep  2 ...
/tmp on swap read/write/setuid/xattr/dev=2 on Thu Sep  2 ...
/stuff on /dev/dsk/c0t0d0s5 read/write/setuid/intr/largefiles/xattr...
/export/home on /dev/dsk/c0t0d0s7 read/write/setuid/intr/largefiles/...
/home/rimmer on pluto:/export/home/rimmer remote/read/write/setuid/xattr/...
$

この例は、zfs mount コマンドを使用して、現在マウントされている ZFS ファイルシステムに関する情報を表示する方法を示しています。


$ zfs mount
rpool/ROOT/zfs509BE            /
rpool/export                    /export
rpool/export/home               /export/home
rpool                           /rpool

Procedure/etc/vfstab ファイルにエントリを追加する方法

レガシーのマウント動作が必要な ZFS ファイルシステムが存在しない場合は、ここに示す手順に従ってブート時に非 ZFS ファイルシステムをマウントします。ZFS ファイルシステムをマウントする方法の詳細は、『Oracle Solaris ZFS 管理ガイド』を参照してください。

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. 必要に応じて、マウントするファイルシステムのマウントポイントを作成します。


    # mkdir /mount-point
    

    ファイルシステムをマウントするには、ローカルシステム上にマウントポイントを作成する必要があります。「マウントポイント」とは、マウントされるファイルシステムが接続されるディレクトリのことです。

  3. /etc/vfstab ファイルを編集し、エントリを追加します。次のことを確認してください。

    1. 各フィールドを空白 (空白文字またはタブ) で区切ります。

    2. フィールドで値を指定しない場合はダッシュ (-) を入力します。

    3. 変更を保存します。

    /etc/vfstab フィールドのエントリの詳細は、表 18–3 を参照してください。


    注 –

    ルート (/) ファイルシステムは、ブートプロセスの過程でカーネルによって読み取り専用としてマウントされます。そのため、remount オプション (および、remount と一緒に使用できるオプション) だけが /etc/vfstab ファイルのルート (/) エントリでは有効です。



例 18–2 /etc/vfstab ファイルにエントリを追加する

次の例は、ディスクスライス /dev/dsk/c0t3d0s7 を UFS ファイルシステムとして、マウントポイント /files1 にマウントする方法を示しています。「device to fsck」として raw キャラクタ型デバイス /dev/rdsk/c0t3d0s7 を指定します。「fsck pass」の値が 2 なので、ファイルシステムは順不同で検査されます。


#device           device             mount    FS       fsck   mount    mount
#to mount         to fsck            point    type     pass   at boot  options
#
/dev/dsk/c0t3d0s7 /dev/rdsk/c0t3d0s7 /files1  ufs      2      yes       -

次の例は、システム pluto 上のディレクトリ /export/man を、NFS ファイルシステムとしてマウントポイント /usr/man にマウントする方法を示しています。ファイルシステムが NFS であるため、「device to fsck」や「fsck pass」は指定されません。この例では、「mount options」は ro (読み取り専用) と soft になっています。


#device           device             mount    FS       fsck   mount    mount
#to mount         to fsck            point    type     pass   at boot  options
pluto:/export/man   -                /usr/man nfs      -      yes       ro,soft

次の例は、ルート (/) ファイルシステムをループバックマウントポイント /tmp/newroot にマウントする方法を示しています。LOFS ファイルシステムをマウントするときは、LOFS ファイルシステム内に入るファイルシステムを先にマウントし、その後で LOFS をマウントします。


#device           device             mount    FS       fsck   mount    mount
#to mount         to fsck            point    type     pass   at boot  options
#
/                   -                /tmp/newroot lofs -      yes       -                   

Procedure1 つのファイルシステムをマウントする方法 (/etc/vfstab ファイル)

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. /etc/vfstab ファイル内に列挙されているファイルシステムをマウントします。


    # mount /mount-point
    

    /mount-point は、/etc/vfstab ファイル内の「mount point」または「device to mount」フィールドのエントリを指定します。通常は、マウントポイントを指定するほうが簡単です。


例 18–3 1 つのファイルシステムをマウントする (/etc/vfstab ファイル)

次の例は、/etc/vfstab ファイル内に列挙されているファイルシステム /usr/dist をマウントする方法を示しています。


# mount /usr/dist


例 18–4 すべてのファイルシステムをマウントする (/etc/vfstab ファイル)

次に、ファイルシステムがすでにマウントされている状態で mountall コマンドを使用したとき表示されるメッセージの例を示します。


# mountall
/dev/rdsk/c0t0d0s7 already mounted
mount: /tmp already mounted
mount: /dev/dsk/c0t0d0s7 is already mounted, /export/home is busy,
        or the allowable number of mount points has been exceeded

mountall コマンドを実行すると、device to fsck エントリを持つすべてのファイルシステムが、マウント前に検査され、必要に応じて修正されます。

次の例は、/etc/vfstab ファイル内に列挙されているすべてのローカルシステムをマウントする方法を示しています。


# mountall -l
# mount
/ on /dev/dsk/c0t0d0s0 read/write/setuid/intr/largefiles/xattr/onerror=...
/devices on /devices read/write/setuid/dev=46c0000 on Thu Sep  ...
/system/contract on ctfs read/write/setuid/devices/dev=43c0001 ... 
/usr on /dev/dsk/c0t0d0s6 read/write/setuid/intr/largefiles/xattr/...
/proc on /proc read/write/setuid/dev=4700000 on Thu Sep  2 ...
/etc/mnttab on mnttab read/write/setuid/dev=47c0000 on Thu Sep  2 ...
/etc/svc/volatile on swap read/write/setuid/devices/xattr/dev=4480001 ...
/system/object on objfs read/write/setuid/devices/dev=44c0001 ...
/dev/fd on fd read/write/setuid/dev=4800000 on Thu Sep  2 ...
/var/run on swap read/write/setuid/xattr/dev=1 on Thu Sep  2 ...
/tmp on swap read/write/setuid/xattr/dev=2 on Thu Sep  2 ...
/stuff on /dev/dsk/c0t0d0s5 read/write/setuid/intr/largefiles/xattr...
/export/home on /dev/dsk/c0t0d0s7 read/write/setuid/intr/largefiles/...

次の例は、使用可能なすべての ZFS ファイルシステムをマウントする方法を示します。


# zfs mount -a

次の例は、/etc/vfstab ファイル内に列挙されているすべてのリモートファイルシステムをマウントする方法を示しています。


# mountall -r
# mount
/ on /dev/dsk/c0t0d0s0 read/write/setuid/intr/largefiles/xattr/onerror=...
/devices on /devices read/write/setuid/dev=46c0000 on Thu Sep  ...
/system/contract on ctfs read/write/setuid/devices/dev=43c0001 ... 
/usr on /dev/dsk/c0t0d0s6 read/write/setuid/intr/largefiles/xattr/...
/proc on /proc read/write/setuid/dev=4700000 on Thu Sep  2 ...
/etc/mnttab on mnttab read/write/setuid/dev=47c0000 on Thu Sep  2 ...
/etc/svc/volatile on swap read/write/setuid/devices/xattr/dev=4480001 ...
/system/object on objfs read/write/setuid/devices/dev=44c0001 ...
/dev/fd on fd read/write/setuid/dev=4800000 on Thu Sep  2 ...
/var/run on swap read/write/setuid/xattr/dev=1 on Thu Sep  2 ...
/tmp on swap read/write/setuid/xattr/dev=2 on Thu Sep  2 ...
/stuff on /dev/dsk/c0t0d0s5 read/write/setuid/intr/largefiles/xattr...
/stuff on /dev/dsk/c0t0d0s5 read/write/setuid/intr/largefiles/xattr...
/export/home on /dev/dsk/c0t0d0s7 read/write/setuid/intr/largefiles/...
/home/rimmer on pluto:/export/home/rimmer remote/read/write/setuid/xattr/...

ProcedureUFS ファイルシステムのマウント方法 (mount コマンド)

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. 必要に応じて、マウントするファイルシステムのマウントポイントを作成します。


    # mkdir /mount-point
    

    ファイルシステムをマウントするには、ローカルシステム上にマウントポイントを作成する必要があります。「マウントポイント」とは、マウントされるファイルシステムが接続されるディレクトリのことです。

  3. UFS ファイルシステムをマウントします。


    # mount [-o mount-options] /dev/dsk/device-name /mount-point
    
    -o mount-options

    UFS ファイルシステムのマウントに使用できるマウントオプションを指定します。オプションの一覧は、表 18–2 または mount_ufs(1M) のマニュアルページを参照してください。

    /dev/dsk/device-name

    ファイルシステムが含まれているディスクスライス用のディスクデバイス名 (/dev/dsk/c0t3d0s7 など) を指定します。ディスクのスライス情報を表示する方法については、「ディスクスライス情報を表示する方法」を参照してください。

    /mount-point

    ファイルシステムをマウントするディレクトリを指定します。


例 18–5 UFS ファイルシステムをマウントする (mount コマンド)

次の例は、/dev/dsk/c0t3d0s7/files1 ディレクトリにマウントする方法を示しています。


# mount /dev/dsk/c0t3d0s7 /files1

Procedure大規模ファイルを持たない UFS ファイルシステムをマウントする方法 (mount コマンド)

ファイルシステムのマウント時には、largefiles オプションがデフォルトで選択されます。このオプションにより、2G バイトを超えるファイルを作成できます。ファイルシステム内に大規模なファイルが存在する場合は、大規模ファイルをすべて削除し、fsck コマンドを実行して状態を「nolargefiles」にリセットしない限り、ファイルシステムを nolargefiles オプションを使って再マウントしたり、以前の Solaris バージョンが動作するシステムにマウントしたりすることはできません。

次の手順では、ファイルシステム用のエントリが /etc/vfstab ファイルにあるものとします。

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. 必要に応じて、マウントするファイルシステムのマウントポイントを作成します。


    # mkdir /mount-point
    

    ファイルシステムをマウントするには、ローカルシステム上にマウントポイントを作成する必要があります。「マウントポイント」とは、マウントされるファイルシステムが接続されるディレクトリのことです。

  3. ファイルシステム上に大規模ファイルが存在していないことを確認してください。


    # cd /mount-point
    # find . -xdev -size +20000000 -exec ls -l {} \;
    

    /mount-point には、大規模ファイルがあるかどうかを検査するファイルシステムのマウントポイントを指定します。

  4. 大規模ファイルが当該ファイルシステム内に存在する場合は、必要に応じてそのファイルを削除するか、ほかのファイルシステムに移動します。

  5. ファイルシステムをマウント解除します。


    # umount /mount-point
    
  6. ファイルシステムの状態をリセットします。


    # fsck /mount-point
    
  7. nolargefiles オプションを指定してファイルシステムを再マウントします。


    # mount -o nolargefiles /mount-point
    

例 18–6 大規模ファイルを持たないファイルシステムをマウントする (mount コマンド)

次の例は、/datab ファイルシステムを検査し、nolargefiles オプションを指定して再マウントする方法を示しています。


# cd /datab
# find . -xdev -size +20000000 -exec ls -l {} \;
# umount /datab 
# fsck /datab
# mount -o nolargefiles /datab

ProcedureNFS ファイルシステムのマウント方法 (mount コマンド)

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. 必要に応じて、マウントするファイルシステムのマウントポイントを作成します。


    # mkdir /mount-point
    

    ファイルシステムをマウントするには、ローカルシステム上にマウントポイントを作成する必要があります。「マウントポイント」とは、マウントされるファイルシステムが接続されるディレクトリのことです。

  3. リソース (ファイルまたはディレクトリ) がサーバーから使用可能かどうかを確認します。

    NFS ファイルシステムをマウントするには、share コマンドを使用し、サーバー上のリソースを使用可能にしておかなければなりません。リソースを共有する方法については、『Solaris のシステム管理 (ネットワークサービス)』「NFS サービスについて」を参照してください。

  4. NFS ファイルシステムをマウントします。


    # mount -F nfs [-o mount-options] server:/directory /mount-point
    
    -o mount-options

    NFS ファイルシステムのマウントに使用できるマウントオプションを指定します。よく使用される mount オプションの一覧については表 18–2、すべてのオプションの一覧については mount_nfs(1M) のマニュアルページを参照してください。

    server:/directory

    共有するリソースを持つサーバーのホスト名と、マウントするファイルまたはディレクトリへのパスを指定します。

    /mount-point

    ファイルシステムをマウントするディレクトリを指定します。


例 18–7 NFS ファイルシステムをマウントする (mount コマンド)

次の例は、サーバー pluto/export/packages ディレクトリを /mnt にマウントする方法を示しています。


# mount -F nfs pluto:/export/packages /mnt

Procedurex86: ハードディスクから PCFS (DOS) ファイルシステムをマウントする方法 (mount コマンド)

次の手順で、PCFS (DOS) ファイルシステムをハードディスクからマウントします。

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. 必要に応じて、マウントするファイルシステムのマウントポイントを作成します。


    # mkdir /mount-point
    

    ファイルシステムをマウントするには、ローカルシステム上にマウントポイントを作成する必要があります。「マウントポイント」とは、マウントされるファイルシステムが接続されるディレクトリのことです。

  3. PCFS ファイルシステムをマウントします。


    # mount -F pcfs [-o rw | ro] /dev/dsk/device-name:logical-drive /mount-point
    
    -o rw | ro

    PCFS ファイルシステムを読み取り / 書き込み (rw) または読み取り専用 (ro) にマウントできることを指定します。このオプションを指定しない場合のデフォルトは rw です。

    /dev/dsk/device-name

    ディスク全体のデバイス名を指定します (/dev/dsk/c0t0d0p0 など)。

    logical-drive

    DOS の論理ドライブ名 (c から z) またはドライブ番号 (1 から 24) を指定します。ドライブ c はドライブ 1 に相当し、ディスク上の基本 DOS スライスを表します。ほかのすべてのドライブ名やドライブ番号は、拡張 DOS スライス内の DOS 論理ドライブを表します。

    /mount-point

    ファイルシステムをマウントするディレクトリを指定します。

    「device-name」と「logical-drive」は、コロンで区切る必要があります。


例 18–8 x86: ハードディスクから PCFS (DOS) ファイルシステムをマウントする (mount コマンド)

次の例は、基本 DOS スライス内の論理ドライブを /pcfs/c ディレクトリにマウントする方法を示しています。


# mount -F pcfs /dev/dsk/c0t0d0p0:c /pcfs/c

次の例では、/mnt ディレクトリの拡張 DOS スライスに含まれる最初の論理ドライブを読み取り専用でマウントする方法を示します。


# mount -F pcfs -o ro /dev/dsk/c0t0d0p0:2 /mnt

UFS ファイルシステムをマウント解除する

UFS ファイルシステムをマウント解除すると、ファイルシステムがそのマウントポイントから削除され、そのエントリが /etc/mnttab ファイルから削除されます。マウントされているファイルシステム上では、一部のファイルシステム管理作業を実行できません。次の場合には、UFS ファイルシステムをマウント解除する必要があります。

緊急時は、umount -f コマンドで、使用中のファイルシステムを強制的にマウント解除できます。ファイルを開いた状態でファイルシステムをマウント解除すると、データが失われる可能性があるため、非常時以外はこの操作を行わないようにしてください。このオプションは、UFS と NFS のファイルシステムでのみ使用できます。

ファイルシステムをマウント解除する場合の前提条件

ファイルシステムをマウント解除する場合の前提条件は次のとおりです。

ファイルシステムのマウント解除を確認する方法

ファイルシステムをマウント解除したことを確認するには、mount コマンドからの出力を調べます。


$ mount | grep unmounted-file-system

Procedureファイルシステムを使用中のすべてのプロセスを終了させる方法

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. どのプロセスを終了させるかがわかるように、ファイルシステムを使用中のすべてのプロセスを表示します。


    # fuser -c [ -u ] /mount-point
    
    -c

    ファイルシステムのマウントポイントとなっているファイルと、マウントされているファイルシステム内のファイルがすべて表示されます。

    -u

    プロセス ID ごとにユーザーのログイン名が表示されます。

    /mount-point

    プロセスを終了させるファイルシステムの名前を指定します。

  3. ファイルシステムを使用しているすべてのプロセスを終了させます。


    # fuser -c -k /mount-point
    

    ファイルシステムを使用している各プロセスに SIGKILL が送信されます。


    注 –

    ユーザーのプロセスを終了させるときには、必ず事前に警告してください。


  4. ファイルシステムを使用しているプロセスがないことを確認します。


    # fuser -c /mount-point
    

例 18–9 あるファイルシステムを使用中のすべてのプロセスを終了させる

次の例は、/export/home ファイルシステムを使用中のプロセス 4006c を終了させる方法を示しています。


# fuser -c /export/home
/export/home:     4006c
# fuser -c -k /export/home
/export/home:     4006c
# fuser -c /export/home
/export/home: 

Procedure1 つのファイルシステムをマウント解除する方法

次の手順に従って、ファイルシステム (ルート (/)、/usr/var を除く) をマウント解除します。


注 –

ルート (/)、/usr、および /var ファイルシステムは、シャットダウン中にのみマウント解除可能です。これらのファイルシステムは、システムの機能上必須です。


  1. 「ファイルシステムをマウント解除する場合の前提条件」の前提条件を満たしているかどうかを確認します。

  2. ファイルシステムをマウント解除します。


    # umount /mount-point
    

    /mount-point は、マウント解除するファイルシステムの名前を示します。次のいずれかを指定できます。

    • ファイルシステムがマウントされているディレクトリ名

    • ファイルシステムのデバイス名パス

    • NFS ファイルシステムのリソース

    • LOFS ファイルシステムのループバックディレクトリ


例 18–10 ファイルシステムをアンマウントする

次の例は、ローカルのホームディレクトリから UFS ファイルシステムをマウント解除する方法を示しています。


# umount /export/home

次の例は、ローカルディスクの 7 番目のスライス上の UFS ファイルシステムをマウント解除する方法を示しています。


# umount /dev/dsk/c0t0d0s7

次の例は、UFS の /export ファイルシステムを強制的にマウント解除する方法を示しています。


# umount -f /export
# 

次の例は、/etc/vfstab ファイル内のすべての UFS ファイルシステム (ルート (/)、 /proc/var/usr を除く) をマウント解除する方法を示しています。


# umountall

次の例は、すべての ZFS ファイルシステムをマウント解除する方法を示しています。


# zfs umount -a

使用中のファイルシステムを除く、すべてのファイルシステムがマウント解除されます。