262 lines
6.6 KiB
Groff
262 lines
6.6 KiB
Groff
.\" %NetBSD: fsdb.8,v 1.2 1995/10/08 23:18:08 thorpej Exp %
|
|
.\"
|
|
.\" Copyright (c) 1995 John T. Kohl
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" 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. The name of the author may not be used to endorse or promote products
|
|
.\" derived from this software without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR `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 AUTHOR 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.
|
|
.\"
|
|
.\" %FreeBSD: src/sbin/fsdb/fsdb.8,v 1.26 2004/07/02 21:45:02 ru Exp %
|
|
.\"
|
|
.\" $FreeBSD$
|
|
.Dd September 14, 1995
|
|
.Dt FSDB 8
|
|
.Os
|
|
.Sh 名称
|
|
.Nm fsdb
|
|
.Nd FFS デバッグ/編集ツール
|
|
.Sh 書式
|
|
.Nm
|
|
.Op Fl d
|
|
.Op Fl f
|
|
.Op Fl r
|
|
.Ar fsname
|
|
.Sh 解説
|
|
.Nm
|
|
ユーティリティは
|
|
.Ar fsname
|
|
(通常は raw ディスクパーティション) を open し、そのファイルシステムの
|
|
inode データを操作するためのコマンドを受け付けます。
|
|
コマンドは
|
|
.Ic "fsdb (inum X)>"
|
|
のプロンプトに対して入力します。ここでの
|
|
.Va X
|
|
は現在選択されている i-number となります。
|
|
最初に選択されている inode はファイルシステムのルート (i-number 2) となります。
|
|
コマンドプロセッサには
|
|
.Xr editline 3
|
|
ライブラリを使用しており、コマンド行を編集することによってタイピングの
|
|
量を減らすことができます。
|
|
コマンドループから抜けて終了する時には、ファイルシステムのスーパブロック
|
|
が dirty とマークされ、バッファリングされているブロックがあれば
|
|
ファイルシステムに書き込まれます。
|
|
.Pp
|
|
以下のオプションを使用可能です:
|
|
.Bl -tag -width indent
|
|
.It Fl d
|
|
デバッグ情報 (元は
|
|
.Xr fsck 8
|
|
のコードに由来するもの) を出力します。
|
|
.It Fl f
|
|
歴史的な理由により残されているもので、特に意味は持ちません。
|
|
.It Fl r
|
|
ファイルシステムを読み取り専用でオープンし、
|
|
書き込みを行うコマンドを抑止します。
|
|
.El
|
|
.Sh コマンド
|
|
組み込みの
|
|
.Xr editline 3
|
|
のコマンドの他に
|
|
.Nm
|
|
は以下のコマンドをサポートしています:
|
|
.Pp
|
|
.Bl -tag -width indent -compact
|
|
.It Cm help
|
|
入力できるコマンドのリストを表示します。
|
|
.Pp
|
|
.It Cm inode Ar i-number
|
|
新しい現在の inode として
|
|
inode
|
|
.Ar i-number
|
|
を選択します。
|
|
.Pp
|
|
.It Cm back
|
|
以前の inode に戻ります。
|
|
.Pp
|
|
.It Cm clri Ar i-number
|
|
.Ar i-number
|
|
をクリアします。
|
|
.Pp
|
|
.It Cm lookup Ar name
|
|
.It Cm cd Ar name
|
|
.Ar name
|
|
を現在のディレクトリの中で探し、その inode を現在の inode に設定します。
|
|
.Ar name
|
|
はマルチコンポーネントの名前か、スラッシュで始めて
|
|
検索をルートの inode から始めることを指定できます。
|
|
パス名の中のコンポーネントが見つからない場合、
|
|
最後に有効であったディレクトリがアクティブな inode として使われます。
|
|
このコマンドは開始する inode がディレクトリの場合のみ有効です。
|
|
.Pp
|
|
.It Cm active
|
|
.It Cm print
|
|
アクティブな inode を表示します。
|
|
.Pp
|
|
.It Cm blocks
|
|
アクティブな inode のブロックリストを表示します。
|
|
大きなファイルに対しては表示出力が長くなることに注意してください。
|
|
すべての間接ブロックポインタもまた表示されるからです。
|
|
.It Cm uplink
|
|
アクティブな inode のリンク数をインクリメントします。
|
|
.Pp
|
|
.It Cm downlink
|
|
アクティブな inode のリンク数をデクリメントします。
|
|
.Pp
|
|
.It Cm linkcount Ar number
|
|
アクティブな inode のリンク数を
|
|
.Ar number
|
|
に設定します。
|
|
.Pp
|
|
.It Cm ls
|
|
現在の inode のディレクトリエントリをリストします。
|
|
このコマンドは現在の inode がディレクトリである場合のみ有効です。
|
|
.Pp
|
|
.It Cm rm Ar name
|
|
.It Cm del Ar name
|
|
現在のディレクトリ inode からエントリ
|
|
.Ar name
|
|
を取り除きます。
|
|
このコマンドは現在の inode がディレクトリである場合のみ有効です。
|
|
.Pp
|
|
.It Cm ln Ar ino Ar name
|
|
現在のディレクトリ inode に
|
|
inode
|
|
.Ar ino
|
|
へのリンクを
|
|
.Ar name
|
|
の名前で作成します。
|
|
このコマンドは現在の inode がディレクトリである場合のみ有効です。
|
|
.Pp
|
|
.It Cm chinum Ar dirslot Ar inum
|
|
ディレクトリエントリ
|
|
.Ar dirslot
|
|
中の i-number を
|
|
.Ar inum
|
|
に変更します。
|
|
.Pp
|
|
.It Cm chname Ar dirslot Ar name
|
|
ディレクトリエントリ
|
|
.Ar dirslot
|
|
中の名前を
|
|
.Ar name
|
|
に変更します。
|
|
このコマンドではディレクトリエントリを拡張することはできません。
|
|
名前が現在存在するディレクトリスロットに収まる場合にのみ、
|
|
エントリの名前の変更が可能です。
|
|
.Pp
|
|
.It Cm chtype Ar type
|
|
現在の inode のタイプを
|
|
.Ar type
|
|
に変更します。
|
|
.Ar type
|
|
には
|
|
.Em file ,
|
|
.Em dir ,
|
|
.Em socket ,
|
|
.Em fifo
|
|
のいずれかが指定できます。
|
|
.Pp
|
|
.It Cm chmod Ar mode
|
|
現在の inode のモードビットを
|
|
.Ar mode
|
|
に変更します。
|
|
このサブコマンドではファイルのタイプを変更することはできません。その場
|
|
合は
|
|
.Ic chtype
|
|
を使ってください。
|
|
.Pp
|
|
.It Cm chflags Ar flags
|
|
現在の inode のファイルフラグを
|
|
.Ar flags
|
|
に変更します。
|
|
.Pp
|
|
.It Cm chown Ar uid
|
|
現在の inode の所有者を
|
|
.Ar uid
|
|
に変更します。
|
|
.Pp
|
|
.It Cm chgrp Ar gid
|
|
現在の inode のグループを
|
|
.Ar gid
|
|
に変更します。
|
|
.Pp
|
|
.It Cm chgen Ar gen
|
|
現在の inode の世代番号 (generation number) を
|
|
.Ar gen
|
|
に変更します。
|
|
.Pp
|
|
.It Cm mtime Ar time
|
|
.It Cm ctime Ar time
|
|
.It Cm atime Ar time
|
|
それぞれ、現在の inode の修正時間、変更時間、アクセス時間を
|
|
.Ar time
|
|
に変更します。
|
|
.Ar time
|
|
は
|
|
.Em YYYYMMDDHHMMSS[.nsec]
|
|
の形式でなければなりません。ここで、
|
|
.Em nsec
|
|
はオプションで指定できるナノ秒の値となります。
|
|
もし、ナノ秒が指定されていないと、
|
|
.Va mtimensec ,
|
|
.Va ctimensec ,
|
|
.Va atimensec
|
|
のそれぞれのフィールドには 0 がセットされます。
|
|
.Pp
|
|
.It Cm quit, q , exit , Em <EOF>
|
|
プログラムを終了します。
|
|
.El
|
|
.Sh 関連項目
|
|
.Xr editline 3 ,
|
|
.Xr fs 5 ,
|
|
.Xr clri 8 ,
|
|
.Xr fsck 8
|
|
.Sh バグ
|
|
``short'' のシンボリックリンクの操作は動作しません。(特に、
|
|
シンボリックリンクのタイプは変更しないでください。)
|
|
.Pp
|
|
モードはシンボル名ではなく数字で指定してください。
|
|
.Pp
|
|
多分
|
|
.Nm
|
|
に実装されていないことで、もっとやりたいことが沢山あるでしょう。
|
|
.Sh 歴史
|
|
.Nm
|
|
ユーティリティは
|
|
.Xr fsck 8
|
|
のソースコードを使ってファイルシステムの操作のコードのほとんどを実装しています。
|
|
.Nm
|
|
の残りの部分は、最初
|
|
.Nx
|
|
において
|
|
.An John T. Kohl
|
|
によって書かれました。
|
|
.Pp
|
|
.Fx
|
|
への移植は
|
|
.An Peter Wemm
|
|
によって行われました。
|
|
.Sh 警告
|
|
このツールは最大限に注意を払って使って下さい。
|
|
.Xr fsck 8
|
|
を使っても修復できないほど FFS ファイルシステムを壊す恐れがあります。
|