doc/documentation/manual-pages/ja/man8/fsdb.8
Sergio Carlavilla Delgado 989d921f5d Migrate doc to Hugo/AsciiDoctor
I'm very pleased to announce the release of
our new website and documentation using
the new toolchain with Hugo and AsciiDoctor.

To get more information about the new toolchain
please read the FreeBSD Documentation Project Primer[1],
Hugo docs[2] and AsciiDoctor docs[3].

Acknowledgment:
Benedict Reuschling <bcr@>
Glen Barber <gjb@>
Hiroki Sato <hrs@>
Li-Wen Hsu <lwhsu@>
Sean Chittenden <seanc@>
The FreeBSD Foundation

[1] https://docs.FreeBSD.org/en/books/fdp-primer/
[2] https://gohugo.io/documentation/
[3] https://docs.asciidoctor.org/home/

Approved by:    doceng, core
2021-01-26 00:31:29 +01:00

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.2.1 2005/02/23 01:33:12 trhodes 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 ファイルシステムを壊す恐れがあります。