[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

14. ディクスの使用

無限の量のデータを保てるディスクはありません.これらのコマンドは,ディ スクストレージの使用や利用可能な量を報告します.(これはメインメ モリ,すなわち,プログラムが実行時に使用するRAMの量に対しては重要なこ とはしません.そのため,pspstatswapやそのよう なコマンドが必要です.)


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

14.1 df: ファイルシステムのディスクスペースの使用の報告

dfは,ファイルシステムの使用されているディスクスペースと利用 可能なディスクスペースの量を報告します.概要です.

 
df [option]… [file]…

引数を用いない場合,dfは現在マウントされている(すべての形式 の)すべてのファイルシステムの使用されている,そして利用可能な空間を報 告します.それ以外では,dfはそれぞれの引数のfileを含む ファイルシステム上の内容を報告します.

通常ディスクスペースは1024バイト単位で出力されますが,これに優先するこ とも可能です(see section ブロックサイズ).整数ではない量は,次の単位まで切り上 げられます.

引数のfileがマウントされているファイルシステムを含むディスクデバ イスファイルの場合,dfはデバイスノードを含むファイルシステム (すなわちルートファイルシステム)ではなく,そのファイルシステムの利用可 能な空間を表示します.GNU dfでは,マウントしていないファ イルシステムのディスクの使用を決定することは,ファイルシステム構造のほ とんどのシステム間での極めて移植性のない緻密な知識が必要になるので,そ うしようとしません.

プログラムは以下のオプションも受け入れます.共通のオプションも参照 してください.

-a
--all

0ブロックの大きさのファイルシステムをリストに含め,それはデフォルトで は省略されます.そのようなファイルシステムは,通常はオートマウントエン トリーのような,特定の目的の疑似ファイルシステムです.また,サポートさ れているシステムもある“ignore”や“auto”形式のファイルシステムは,こ のオプションが指定されたときだけ含まれます.

-B size
--block-size=size

表示する前に,sizeで大きさを計ります(see section ブロックサイズ).例えば, ‘-BG’では,1,073,741,824バイト単位で大きさを表示します.

-h
--human-readable

メビバイトに対する‘M’のような,サイズ文字を追加します.1000倍では なく1024倍が使用されます.‘M’は1,048,576バイトを意味します.1000 倍を望む場合,‘--si’オプションを使用してください.

-H

--si’と等価です.

-i
--inodes

ブロックの使用の代わりに,inode使用の情報をリストアップします. inode(index nodeの省略)は,ファイルに関する,所有者,許可,タイムスタ ンプ,そしてディスクの位置のような情報を含みます.

-k

1024バイトブロックで出力し,デフォルトのブロックサイズに優先します (see section ブロックサイズ).このオプションは,‘--block-size=1K’と等価 です.

-l
--local

ローカルファイルシステムのリストだけに制限します.デフォルトではリモー トファイルシステムもリストアップされます.

--no-sync

使用データを取得する前にsyncシステムコールを呼び出しません.こ れは多くのディスクを持つシステム上でdfの実行をかなり速くする かもしれませんが,システム(特にSunOS)によっては,結果が若干古いものに なるかもしれません.これはデフォルトです.

-P
--portability

POSIX出力形式を使用します.これは,以下を除いてデフォルトの 書式に似ています.

  1. それぞれのファイルシステムの情報は常に正確に一行で出力されます.マウン トデバイスはその行に書かれません.これはマウントデバイスの名前が20文字 以上(例えば,いくつかのネットワークマウント)の場合,列がきちんと並ばな いことを意味します.
  2. ヘッダ出力行のラベルは,POSIXに従い変更されます.
--si

メガバイトに対する‘MB’のような,SI形式のサイズの略語を追加します. 1024倍ではなく1000倍が使用されます.‘MB’は1,000,000バイトを意味し ます.このオプションは,‘--block-size=si’と等価です.1024倍を望 む場合,‘-h’または‘--human-readable’オプションを使用して ください.

--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 [option]… [file]…

引数を用いない場合,duは現在のディレクトリのディスクスペース を報告します.通常,ディスクスペースは1024バイト単位で出力されますが, これに優先することも可能です(see section ブロックサイズ).整数ではない量は,次 に大きな単位に切り上げられます.

プログラムは以下のオプションも受け入れます.共通のオプションも参照 してください.

-a
--all

ディレクトリだけでなく,すべてのファイルを数えたものを表示します.

--apparent-size

ディスクを使用している大きさではなく見かけ上の大きさを出力します.ファ イルの見かけ上の大きさは,通常のファイルに対しwc -c,またはより 一般的に,ls -l --block-size=1stat --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 ブロックサイズ).例えば, ‘-BG’では1,073,741,824バイト単位で出力します.

-c
--total

すべての引数を処理した後,すべての引数の合計を出力します.これは,与え られたファイルやディレクトリの集合の,ディスク使用の合計を知るために使 用することが可能です.

-D
--dereference-args

コマンドライン引数のシンボリックリンクを間接参照します.その他のシンボ リックリンクには影響しません.これは,‘/usr/tmp’のように,シンボ リックリンクにされることが多いディレクトリのディスクの使用状況を知りた いとき役に立ちます.

-h
--human-readable

メビバイトに対する‘M’のような,サイズ文字を追加します.1000倍では なく1024倍が使用されます.‘M’は1,048,576バイトを意味します.1000 倍を望む場合,‘--si’オプションを使用してください.

-H

現在は,‘-H’で警告される以外は‘-H’は‘--si’と同じ です.このオプションは変更され,‘--dereference-args’ (‘-D’)と等価になっています.

-k

1024バイトブロックで出力し,デフォルトのブロックサイズに優先します (see section ブロックサイズ).このオプションは,‘--block-size=1K’と等価 です.

-l
--count-links

すでに(ハードリンクとして)現れている場合でも,すべてのファイルのサイズ を計算します.

-L
--dereference

シンボリックリンクを間接参照します(リンクで使用しているスペースの代わ りに,リンクが示すファイルやディレクトリが使用しているディスクスペース を表示します).

-P
--no-dereference

duが見つけたそれぞれのシンボリックリンクを,シンボリックリン クが使用しているディスクスペースと考えます.

--max-depth=DEPTH

階層のルートから最大MAX_DEPTHレベルまで降りて,それぞれのディレクトリ (そして‘--all’の場合はファイル)の合計を表示します.ルートはレベル 0なので,du --max-depth=0du -sと同じです.

-0
--null

それぞれの行の終りに,改行ではなくゼロバイト(NUL)を出力します. このオプションで,出力に改行が含まれているファイル名が含まれているとき でも,他のプログラムがduの出力を構文解析することが可能になり ます.

--si

メガバイトに対する‘MB’のような,SI形式のサイズの略語を追加します. 1024倍ではなく1000倍が使用されます.‘MB’は1,000,000バイトを意味し ます.1024倍を望む場合,‘-h’または‘--human-readable’オプ ションを使用してください.

-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

ユーザ指定の出力書式を可能にします.

ファイルのステータスとして解釈されるものです.

ファイルシステムのステータスとして解釈されるものです.

終了ステータスのゼロは成功を示し,ゼロ以外の値は失敗を示します.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

14.4 sync: ディスクのデータとメモリの同期

syncは,メモリに蓄えられているデータをすべてディスクに書き出 します.これは,(制限はあるものの)編集されたスーパーブロック,編集され たinode,そして遅延された読み書きが含まれます.これはカーネルで実装さ れている必要があります.syncプログラムは,syncシステ ムコールの呼び出し以外,何もしません.

カーネルは,(相対的に遅い)ディクスの読み書きを避けるため,メモリのデー タをそのままにします.これはパフォーマンスを改善しますが,コンピュータ が壊れた場合,結果としてデータが失われたり,ファイルシステムが壊れるか もしれません.syncは,メモリにあるものすべてを確実にディスク に書き込みます.

単独の‘--help’や‘--version’ (see section 共通のオプション)以外 のあらゆるオプションは無視されます.

終了ステータスのゼロは成功を示し,ゼロ以外の値は失敗を示します.


[ << ] [ >> ]           [冒頭] [目次] [見出し] [ ? ]

この文書は新堂 安孝によって2009年9月22日texi2html 1.82を用いて生成されました。