aboutsummaryrefslogblamecommitdiff
path: root/ja_JP.eucJP/man/man8/vnconfig.8
blob: 16d0042c3a5790acbc99e6a1362522c8b5244855 (plain) (tree)




































                                                                              
                                                                                       
   
                                                                                           





                
                                                
        
   
               
                     
                               
                     
                               
                 
                                   
                 
   
     


                  

                       
   
                                                                  
                                      






                                                                      


                                                                


                             


                                                           






                              


           
                                









                            

                       
                                  

                               

                
                  

                                       
             
                                     














                                                        
             
        
                                  
            
        
                                  
         
        
                                 
          
                              
           
                              


                
                


                        






                    


















                                                                  















                                             
                                          

                    
                                     
                



                                
                                     
                



                                
                                   


                         
                                                                   




                                                   
                                                




                                   
                                            

          
                                




                      
                                       




                                                    
                                            


                      
                                                 




                                                            




















                                                                      
                   















                                                                     



               
        
.\" Copyright (c) 1993 University of Utah.
.\" Copyright (c) 1980, 1989, 1991, 1993
.\"	The Regents of the University of California.  All rights reserved.
.\"
.\" This code is derived from software contributed to Berkeley by
.\" the Systems Programming Group of the University of Utah Computer
.\" Science Department.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"	This product includes software developed by the University of
.\"	California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\"    may be used to endorse or promote products derived from this software
.\"    without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\"     @(#)vnconfig.8	8.1 (Berkeley) 6/5/93
.\" %FreeBSD: src/usr.sbin/vnconfig/vnconfig.8,v 1.14.2.6 2001/04/25 09:27:46 nik Exp %
.\"
.\" $FreeBSD: doc/ja_JP.eucJP/man/man8/vnconfig.8,v 1.15 2001/04/30 03:48:37 horikawa Exp $
.\"
.Dd July 8, 1993
.Dt VNCONFIG 8
.Os BSD 4
.Sh 名称
.Nm vnconfig
.Nd vnode ディスクを構築して利用できるようにする
.Sh 書式
.Nm
.Op Fl cdeguvTZ
.Oo Fl s Ar option Ns
.Op , Ns Ar option Ns Ar ... Oc
.Oo Fl r Ar option Ns
.Op , Ns Ar option Ns Ar ... Oc
.Op Fl S Ar value
.Ar special_file Op Ar regular_file
.Oo Ar feature Oc
.Nm
.Fl a
.Op Fl cdeguv
.Op Fl s Ar option
.Op Fl r Ar option
.Op Fl f Ar config_file
.Sh 解説
.Nm
コマンドは、vnode 疑似ディスクデバイスを構築して使用可能にします。
コマンドの最初の書式では、特殊ファイル
.Ar special_file
を通常ファイル
.Ar regular_file
に結びつけ、
後で通常ファイルをディスクであるかのようにアクセスできるようにします。
これによりファイルシステム中の通常ファイルを、
スワップや、名前空間にマウントされるファイルシステムと出来ます。
もしファイルの代わりにスワップ領域を使用したい場合には、
regular_fileを指定せずに -S オプションを用いてブロックデバイスの
大きさを指定することができます。
.Pp
オプションは動作を指定します:
.Bl -tag -width indent
.It Fl a
コマンドファイルを読み込み、
各デバイス/ファイルの組に対して指定された動作を実行します。
.It Fl c
デバイスを構築します。
成功すると、
.Ar special_file
への参照は、
.Ar regular_file
の内容へのアクセスとなります。
.It Fl d
指定した
.Ar feature
を (可能であれば) 無効にします。
.It Fl e
デバイスを構築し、指定された
.Ar feature
を有効にします。
.Ar feature
が指定されないと、
.Fl e
は
.Fl c
と同じ意味になります。
.It Fl f Ar config_file
.Ar config_file
を設定ファイルの代りに使用します。
.It Fl g
global オプションを制御します。
.It Fl r Ar flag
.Ar flag
をリセットします。
利用可能なフラグと意味は以下の通りです:
.Bl -tag -width "follow"
.It Ar labels
ディスク/スライスラベルを使用します。
.It Ar reserve
ファイルやスワップ領域をあらかじめ予約します。
現在のところスワップ領域のみ利用可能です。
またこのオプションは
(例えば大きなファイルを削除した際のような)
内在する記憶領域を on-the-fly で
開放しないようにします。
このオプションは記憶領域中で長い間フラグメンテーションを
発生させたくない場合に使用してください。
このオプションを使用した場合、記憶領域の初期の値は
必ずしも 0 でないことに注意してください。
システムがスワップを割り当てる前に VN デバイスが
設定されていた場合、
リブートされてもスワップを用いた VN の
内容を回復する事ができます。
.It Ar follow
.Xr vn 4
ドライバのフローをデバッグします。
.It Ar debug
.Xr vn 4
ドライバのデータをデバッグします。
.It Ar io
.Xr vn 4
ドライバの I/O をデバッグします。
.It Ar all
すべてのフラグをオンにします。
.It Ar none
すべてのフラグをオフにします。
.El
.It Fl s Ar flag
.Ar flag
をセットします。
利用可能なフラグと意味は
.Fl r
と同じです。
.It Fl S Xo
.Sm off
.Ar value
.Es \&{ \&}
.En Cm k , m , g , t
.Sm on
.Xc
通常ファイルが指定されなかった場合、
VN は記憶領域としてスワップを使用します。
このオプションはデバイスのサイズを指定します。
例えば '23m' は 23 メガバイトを意味します。
VN デバイスはサイズをマシンのページ境界に切り上げます。
ファイルシステムは 7.9 テラバイトまでサポートされています。
通常ファイルと共に指定した場合、
このオプションは VN が認識する通常ファイルのサイズを上書きします。
.It Fl T
通常ファイルが指定された場合、
VN はまず ftruncate() によりファイルのサイズを 0 にします。
通常 -S オプションによりファイルの大きさを指定することができます。
もしファイルが存在しない場合にはファイルが作成されます。
このオプションは -S オプションが指定された時のみ意味を持ちます。
.It Fl Z
通常ファイルが指定された場合、
VN は確実にファイルシステムにより全てのブロックが確保させるために
ファイルの内容を 0 に設定します。
このオプションは -S オプションが指定された時のみ意味を持ちます。
.It Fl u
デバイスを無効にし、``無構築状態'' にします。
.It Fl v
実行される動作の内容を標準出力に表示します。
.El
.Pp
動作を指定するオプションがない場合には、
.Fl c
が指定されたものと見なします。
.Pp
.Ar feature
引数は、
.Fl e
によって有効になる機能を指定します。
.Bl -tag -width indent
.It Dv swap
特殊ファイル上でのスワップを有効にします。
.Xr swapon 2
を参照してください。
.It Dv mountro Ns = Ns Pa mount_point
特殊ファイルは、
.Ar mount_point
へ読み込み専用マウントされます。
.Xr mount 2
を参照してください。
.It Dv mountrw Ns = Ns Pa mount_point
特殊ファイルは、
.Ar mount_point
へ読み書き可能マウントされます。
.Xr mount 2
を参照してください。
.It Dv mount Ns = Ns Pa mount_point
``mountrw='' と同じです。
.El
.Pp
設定ファイルは、1 行にデバイスとファイル名の組を次の形式で持ちます:
.Bd -literal
	special_file	regular_file	[ feature ]
.Ed
.Pp
ここでは各フィールドはスペースで分割されます。
設定ファイル中のすべてのデバイスの動作に関して、
前述の動作オプションが有効です。
.Sh 関連ファイル
.Bl -tag -width /etc/vntab -compact
.It Pa /etc/vntab
.Fl a
オプションで使われるデフォルトの設定ファイル
.El
.Sh 使用例
.Dl vnconfig vn0c /tmp/diskimage
.Pp
vnode ディスクデバイス
.Pa vn0c
を構築します。
.Pp
.Dl vnconfig -e vn0c /var/swapfile swap
.Pp
vnode ディスクデバイス
.Pa vn0c
を構築し、それをスワップ領域として使うようにします。
.Pp
.Dl vnconfig -d vn0c myfilesystem mount=/mnt
.Pp
vnode ディスクデバイス
.Pa vn0c
のマウントを解除します (また無構築状態にします)。
.Pp
.Dl vnconfig -ae
.Pp
.Pa /etc/vntab
に記述されているすべてのデバイスを構築して使用可能にします。
.Pp
.Dl vnconfig -s labels -c vn0 somebackingfile
.Dl disklabel -r -w vn0 auto
.Dl disklabel -e vn0
.Pp
ファイルのファイルを用いた VN ディスクを構築し、
ディスクラベルを使用して
初期化しラベルを編集する例です。
いったんラベルを作成すれば、
VN ディスクに対してパーティションを作成したり、
作成したあるパーティションでファイルシステムを作成することができます。
ファイルを記憶領域として使用した場合、
同じファイルを vnconfig で設定することで
ラベルを再編集したりファイルシステムを再構築せず、
またファイル中に保存されている VN の設定を使用して
クラッシュ後に VN ディスクを回復することができます。
またファイルシステムを含んでいた VN パーティションに
fsck を実行することも可能です。
.Pp
.Dl vnconfig -e -s labels,reserve -S 400m vn1
.Dl disklabel -r -w vn1 auto
.Dl newfs /dev/vn1c
.Dl mount /dev/vn1c /usr/obj
.Pp
スワップを用いた VN ディスクの設定例です。
この例では少なくとも 400 メガバイト (もしくはそれ以上が望ましい)の
空きがスワップにあると仮定しています。
スワップ領域は最大のパフォーマンスを得るために
あらかじめ予約されます。
その後ディスクに対してラベルを作成し、
newfs を実行し、/usr/obj にマウントします。
スワップを用いた VN デバイスはクラッシュ後
(A) reserve フラグを指定している、
(B) 前回と同じスワップが確保されている、つまりvnconfig が rc.local で
起動されている場合回復可能です。
しかしながら一般的にスワップを用いた VN デバイスは
リブート時に失われても構わないようなデータを保存するために
使用します。
.Sh 関連項目
.Xr mount 2 ,
.Xr swapon 2 ,
.Xr unmount 2 ,
.Xr vn 4