14. ディクスの使用
無限の量のデータを保てるディスクはありません.これらのコマンドは,ディ
スクストレージの使用や利用可能な量を報告します.(これはメインメ
モリ,すなわち,プログラムが実行時に使用するRAMの量に対しては重要なこ
とはしません.そのため,ps
やpstat
やswap
やそのよう
なコマンドが必要です.)
14.1 df
: ファイルシステムのディスクスペースの使用の報告
df
は,ファイルシステムの使用されているディスクスペースと利用
可能なディスクスペースの量を報告します.概要です.
引数を用いない場合,df
は現在マウントされている(すべての形式
の)すべてのファイルシステムの使用されている,そして利用可能な空間を報
告します.それ以外では,df
はそれぞれの引数のfileを含む
ファイルシステム上の内容を報告します.
通常ディスクスペースは1024バイト単位で出力されますが,これに優先するこ
とも可能です(see section 2.3 ブロックサイズ).整数ではない量は,次の単位まで切り上
げられます.
引数のfileがマウントされているファイルシステムを含むディスクデバ
イスファイルの場合,df
はデバイスノードを含むファイルシステム
(すなわちルートファイルシステム)ではなく,そのファイルシステムの利用可
能な空間を表示します.GNU df
では,マウントしていないファ
イルシステムのディスクの使用を決定することは,ファイルシステム構造のほ
とんどのシステム間での極めて移植性のない緻密な知識が必要になるので,そ
うしようとしません.
プログラムは以下のオプションも受け入れます.2. 共通のオプションも参照
してください.
- `-a'
- `--all'
-
0ブロックの大きさのファイルシステムをリストに含め,それはデフォルトで
は省略されます.そのようなファイルシステムは,通常はオートマウントエン
トリーのような,特定の目的の疑似ファイルシステムです.また,サポートさ
れているシステムもある"ignore"や"auto"形式のファイルシステムは,こ
のオプションが指定されたときだけ含まれます.
- `-B size'
- `--block-size=size'
-
表示する前に,sizeで大きさを計ります(see section 2.3 ブロックサイズ).例えば,
`-BG'では,1,073,741,824バイト単位で大きさを表示します.
- `-h'
- `--human-readable'
-
それぞれのサイズに,メガバイトに対する`M'のようなサイズ文字を追加
します.1024倍が使用され,1000ではありません.`M'は1,048,576バイ
トを意味します.1000倍を好む場合は`-H'や`--si'オプション
を使用してください.
- `-H'
- `--si'
-
それぞれのサイズに,メガバイトに対する`MB'のようなSI形式の略語を
追加します.1000倍が使用され,1024ではありません.`MB'は1,000,000
バイトを意味します.1024倍を好む場合は`-h'や
`--human-readable'オプションを使用してください.
- `-i'
- `--inodes'
-
ブロックの使用の代わりに,inode使用の情報をリストアップします.
inode(index nodeの省略)は,ファイルに関する,所有者,許可,タイムスタ
ンプ,そしてディスクの位置のような情報を含みます.
- `-k'
-
1024バイトブロックで出力し,デフォルトのブロックサイズに優先します
(see section 2.3 ブロックサイズ).このオプションは,`--block-size=1K'と等価
です.
- `-l'
- `--local'
-
ローカルファイルシステムのリストだけに制限します.デフォルトではリモー
トファイルシステムもリストアップされます.
- `--no-sync'
-
使用データを取得する前に
sync
システムコールを呼び出しません.こ
れは多くのディスクを持つシステム上でdf
の実行をかなり速くする
かもしれませんが,システム(特にSunOS)によっては,結果が若干古いものに
なるかもしれません.これはデフォルトです.
- `-P'
- `--portability'
-
POSIX出力形式を使用します.これは,以下を除いてデフォルトの
書式に似ています.
-
それぞれのファイルシステムの情報は常に正確に一行で出力されます.マウン
トデバイスはその行に書かれません.これはマウントデバイスの名前が20文字
以上(例えば,いくつかのネットワークマウント)の場合,列がきちんと並ばな
いことを意味します.
-
ヘッダ出力行のラベルは,POSIXに従い変更されます.
- `--sync'
-
あらゆる使用データの取得前に
sync
システムコールを呼び出します.
システム(特にSunOS)によってはこうすることで結果がより新しいものになり
ますが,一般的に言って,特に多くの,または非常に忙しいファイルシステム
があるとき,このオプションでdf
はかなり遅くなります.
- `-t fstype'
- `--type=fstype'
-
fstype形式のファイルシステムのリストにだけ制限します.複数のファ
イルシステム形式は,複数の`-t'オプションを与えることで指定する
ことが可能です.デフォルトでは何も省略されません.
- `-T'
- `--print-type'
-
それぞれのファイルシステムの形式を出力します.ここで出力される形式は,
`-t'と`-x'オプションで含めたり除外したりすることが可能な
ものと同じです.出力される特定の形式は,システムでサポートしているもの
すべてです.ここに共通の名前がいくつかあります(このリストはもちろん網
羅的なものではありません).
- `nfs'
-
NFSファイルシステム,すなわち,他のマシンからネットワークでマウントさ
れたものです.これは,すべてのシステムで同じように使用されると思われる,
一つの形式の名前です.
- `4.2, ufs, efs...'
-
ローカルにマウントされたハードディスクのファイルシステムです.(システ
ムはこれらの一つ以上のものをサポートするかもしれません.Linuxはそうで
す.)
- `hsfs, cdfs'
-
CD-ROMドライブのファイルシステムです.HP-UXは`cdfs'を使用し,その
他のほとんどのシステムは`hsfs' (`hs'は"High Sierra"です)を
使用します.
- `pcfs'
-
MS-DOSのファイルシステムで,通常ディスケット上です.
- `-x fstype'
- `--exclude-type=fstype'
-
fstype形式でないファイルシステムにリストを制限します.複数のファ
イルシステムの形式は,複数の`-x'オプションを使用することで排除
することが可能です.デフォルトでは省略されるファイルシステム形式はあり
ません.
- `-v'
- 無視されます.System V版の
df
への互換性のためです.
14.2 du
: ファイルスペースの使用を推定
du
は,指定されているファイルとそれぞれの(ディレクトリ引数の)
サブディレクトリが使用しているディスクスペースの量を報告します.概要で
す.
引数を用いない場合,du
は現在のディレクトリのディスクスペース
を報告します.通常,ディスクスペースは1024バイト単位で出力されますが,
これに優先することも可能です(see section 2.3 ブロックサイズ).整数ではない量は,次
に大きな単位に切り上げられます.
プログラムは以下のオプションも受け入れます.2. 共通のオプションも参照
してください.
- `-a'
- `--all'
-
ディレクトリだけでなく,すべてのファイルを数えたものを表示します.
- `--apparent-size'
-
ディスクを使用している大きさではなく見かけ上の大きさを出力します.ファ
イルの見かけ上の大きさは,通常のファイルに対し
wc -c
,またはより
一般的に,ls -l --block-size=1
やstat --format=%s
で報告さ
れるバイト数です.例えば,改行が無い単語`zoo'を含んでいるファイル
はもちろん,見かけ上の大きさは3になります.そのような小さなファイルで
も,ファイルが存在するファイルシステムの形式や設定によっては,ゼロから
16バイト,またはより大きなキロバイトのディスク領域が必要かもしれません.
しかし,以下のコマンドで作成される疎らなファイルを考えてみます.
| : | dd bs=1 seek=`echo '2^31'|bc` of=big
|
これは,見かけ上2ギガバイトですが,最近のほとんどのシステムでは,実際
にはほとんどディスク領域を使用しません.
- `-b'
- `--bytes'
-
--apparent-size --block-size=1
と同じです.
- `-B size'
- `--block-size=size'
-
大きさを出力する前にsizeで計測します(see section 2.3 ブロックサイズ).例えば,
`-BG'では1,073,741,824バイト単位で出力します.
- `-c'
- `--total'
-
すべての引数を処理した後,すべての引数の合計を出力します.これは,与え
られたファイルやディレクトリの集合の,ディスク使用の合計を知るために使
用することが可能です.
- `-D'
- `--dereference-args'
-
コマンドライン引数のシンボリックリンクを間接参照します.その他のシンボ
リックリンクには影響しません.これは,`/usr/tmp'のように,シンボ
リックリンクにされることが多いディレクトリのディスクの使用状況を知りた
いとき役に立ちます.
- `-h'
- `--human-readable'
-
それぞれのサイズに,メガバイトに対する`M'のようなサイズ文字を追加
します.1000倍ではなく1024倍が使用されます.`M'は1,048,576バイト
を意味します.1000倍を好む場合,`-H'や`--si'オプションを
使用してください.
- `-H'
- `--si'
-
それぞれのサイズに,メガバイトに対する`MB'のようなサイズ文字を追
加します.(SIは国際単位系で,それはこれらの文字をの接頭辞として定義し
ています.)1024倍ではなく1000倍が使用されます.`MB'は1,000,000バ
イトを意味します.1024倍を好む場合,`-h'や
`--human-readable' オプションを使用してください.
- `-k'
-
1024バイトブロックで出力し,デフォルトのブロックサイズに優先します
(see section 2.3 ブロックサイズ).このオプションは,`--block-size=1K'と等価
です.
- `-l'
- `--count-links'
-
すでに(ハードリンクとして)現れている場合でも,すべてのファイルのサイズ
を計算します.
- `-L'
- `--dereference'
-
シンボリックリンクを間接参照します(リンクで使用しているスペースの代わ
りに,リンクが示すファイルやディレクトリが使用しているディスクスペース
を表示します).
- `--max-depth=DEPTH'
-
階層のルートから最大MAX_DEPTHレベルまで降りて,それぞれのディレクトリ
(そして`--all'の場合はファイル)の合計を表示します.ルートはレベル
0なので,
du --max-depth=0
はdu -s
と同じです.
- `-s'
- `--summarize'
-
それぞれの引数の合計のみ表示します.
- `-S'
- `--separate-dirs'
-
サブディレクトリのサイズを含めず,それぞれのディレクトリのサイズを別々
に報告します.
- `-x'
- `--one-file-system'
-
処理を開始した引数のディレクトリと異なるファイルシステムを省略します.
- `--exclude=PATTERN'
-
再帰的なとき,PATTERNにマッチするサブディレクトリやファイルを省
略します.例えば,
du --exclude='*.o'
は`.o'で終わる名前のファ
イルを除外します.
- `-X FILE'
- `--exclude-from=FILE'
-
除外するパターンをFILEから受け取る以外,`--exclude'に似て
います.FILEが`-'の場合,標準入力からパターンを受け取ります.
BSDシステムでは,HP-UXシステムからのNFSマウントされているファイルの正
しい値の半分のサイズを,du
は報告します.HP-UXシステムでは,
BSDシステムからのNFSマウントされているファイルの正しい値の二倍のサイズ
を報告します.これはHP-UXの欠陥です.それはHP-UX du
プログラ
ムにも影響します.
14.3 stat
: ファイルやファイルシステムのステータスを報告
stat
は,指定したファイルの情報を表示します.概要です.
| stat [option]... [file]...
|
オプションを用いていない場合,stat
は与えられたファイルのすべ
ての情報を報告します.しかし,与えられたファイルが存在するファイルシス
テムの情報だけを報告するために使用することも可能です.ファイルがリンク
の場合,stat
はリンク先のファイルの情報も与えてくれます.
- `-f'
- `--filesystem'
-
与えられたファイル自身の情報ではなく,ファイルが存在しているファイルシ
ステムの情報を報告します.
- `-L'
- `--dereference'
-
stat
のシンボリックリンクの処理方法を変更します.このオプショ
ンを用いると,stat
はそれぞれのシンボリックリンク引数の参照先
のファイルで動作します.そうでなければ,stat
はシンボリックリ
ンクで直接動作します.
- `-t'
- `--terse'
-
他のプログラムでパースするのに適した,簡潔な方式で情報を出力します.
- `-c'
- `--format'
-
ユーザ指定の出力書式を可能にします.
ファイルのステータスとして解釈されるものです.
- %a - アクセス許可の八進数
- %A - アクセス許可の人間が読める形式
- %b - 領域のブロック数 (see `%B')
- %B - `%b'で報告されるそれぞれのブロックのバイト数
- %d - 十進数のデバイス番号
- %D - 16進数のデバイス番号
- %f - 16進数のraw mode
- %F - ファイル形式
- %g - 所有者のグループId
- %G - 所有者のグループ名
- %h - ハードリンク数
- %i - inode番号
- %n - ファイル名
- %N - シンボリックリンクの場合,間接参照した引用符で囲まれたファイル名
- %o - IOブロックサイズ
- %s - バイト単位の全体の大きさ
- %t - 16進数のメジャーデバイス形式
- %T - 16進数のマイナーデバイス形式
- %u - 所有者のユーザId
- %U - 所有者のユーザ名
- %x - 最後にアクセスした時間
- %X - 最後にアクセスしたEpoch以来の秒数
- %y - 最後に編集した時間
- %Y - 最後に編集したEpoch以来の秒数
- %z - 最後に変更した時間
- %Z - 最後に変更したEpoch以来の秒数
ファイルシステムのステータスとして解釈されるものです.
- %n - ファイル名
- %i - 16進数のファイルシステムid
- %l - ファイル名の最大長さ
- %t - 16進数の形式
- %T - 人間が読める形式
- %b - ファイルシステム全体のデータブロック
- %f - ファイルシステムの空きブロック
- %a - スーパーユーザ以外が利用可能な空きブロック
- %s - 最適に移動されるブロックサイズ
- %c - ファイルシステム全体のファイルノード
14.4 sync
: ディスクのデータとメモリの同期
sync
は,メモリに蓄えられているデータをすべてディスクに書き出
します.これは,(制限はあるものの)編集されたスーパーブロック,編集され
たinode,そして遅延された読み書きが含まれます.これはカーネルで実装さ
れている必要があります.sync
プログラムは,sync
システ
ムコールの呼び出し以外,何もしません.
カーネルは,(相対的に遅い)ディクスの読み書きを避けるため,メモリのデー
タをそのままにします.これはパフォーマンスを改善しますが,コンピュータ
が壊れた場合,結果としてデータが失われたり,ファイルシステムが壊れるか
もしれません.sync
は,メモリにあるものすべてを確実にディスク
に書き込みます.
単独の`--help'や`--version' (see section 2. 共通のオプション)以外
のあらゆるオプションは無視されます.
This document was generated
by Akihiro Sagawa on February, 25 2004
using texi2html