ls コマンドを使用して、ファイルサイズを調べたりソートしたりできます。また、find コマンドを使用して、サイズの制限を超えているファイルを探すことができます。詳細については、ls(1) および find(1) のマニュアルページを参照してください。
/var ディレクトリの容量がなくなった場合、/var ディレクトリに、ファイルシステム上の空き容量のあるディレクトリへのシンボリックリンクを設定しないでください。たとえそれが一時的な策であっても、デーモンプロセスおよびユーティリティーの一部に問題が生じることがあります。
次のように入力して、ファイルのサイズを表示します。
$ ls [-lh] [-s] |
長形式でファイルとディレクトリのリストを表示し、それぞれのサイズをバイト単位で示します。(次の例を参照)
ファイルやディレクトリのサイズが 1024 バイトより大きい場合、ファイルとディレクトリのサイズをキロバイト、メガバイト、ギガバイト、テラバイト単位で示します。このオプションは、-o、-n、-@、-g オプションによる出力も、ファイルやディレクトリのサイズを新しい形式で表示するよう変更します。詳細は、ls(1) のマニュアルページを参照してください。
ファイルとディレクトリのリストを表示し、それぞれのサイズをブロック単位で示します。
次の例は、lastlog と messages が /var/adm ディレクトリ内のその他のファイルよりも大きいことを示します。
$ cd /var/adm $ ls -lh total 148 drwxrwxr-x 5 adm adm 512 Nov 26 09:39 acct/ -rw------- 1 uucp bin 0 Nov 26 09:25 aculog drwxr-xr-x 2 adm adm 512 Nov 26 09:25 exacct/ -r--r--r-- 1 root other 342K Nov 26 13:56 lastlog drwxr-xr-x 2 adm adm 512 Nov 26 09:25 log/ -rw-r--r-- 1 root root 20K Nov 26 13:55 messages drwxr-xr-x 2 adm adm 512 Nov 26 09:25 passwd/ drwxrwxr-x 2 adm sys 512 Nov 26 09:39 sa/ drwxr-xr-x 2 root sys 512 Nov 26 09:49 sm.bin/ -rw-rw-rw- 1 root bin 0 Nov 26 09:25 spellhist drwxr-xr-x 2 root sys 512 Nov 26 09:25 streams/ -rw-r--r-- 1 root bin 3.3K Nov 26 13:56 utmpx -rw-r--r-- 1 root root 0 Nov 26 10:17 vold.log -rw-r--r-- 1 adm adm 19K Nov 26 13:56 wtmpx |
次の例は、lpsched.1 ファイルが 2 ブロックを使用していることを示します。
$ cd /var/lp/logs $ ls -s total 2 0 lpsched 2 lpsched.1 |
ファイルのサイズをブロック数でもっとも大きいものから降順に表示します。
ファイルの文字またはカラムが異なる場合、次のコマンドを使用して、ブロックサイズによりもっとも大きいものから降順で、ファイルのリストをソートします。
$ ls -l | sort +4rn | more |
このコマンドは、左から 4 番目のフィールドにある文字により、リスト内のファイルをソートすることに注意してください。
ファイルの文字またはカラムが同じである場合、次のコマンドを使用して、ブロックサイズによりもっとも大きいものから降順で、ファイルのリストをソートします。
$ ls -s | sort -nr | more |
このコマンドは、もっとも左側の文字から始め、リスト内のファイルをソートすることに注意してください。
$ cd /var/adm $ ls -l | sort +4rn | more -r--r--r-- 1 root root 4568368 Oct 17 08:36 lastlog -rw-r--r-- 1 adm adm 697040 Oct 17 12:30 pacct.9 -rw-r--r-- 1 adm adm 280520 Oct 17 13:05 pacct.2 -rw-r--r-- 1 adm adm 277360 Oct 17 12:55 pacct.4 -rw-r--r-- 1 adm adm 264080 Oct 17 12:45 pacct.6 -rw-r--r-- 1 adm adm 255840 Oct 17 12:40 pacct.7 -rw-r--r-- 1 adm adm 254120 Oct 17 13:10 pacct.1 -rw-r--r-- 1 adm adm 250360 Oct 17 12:25 pacct.10 -rw-r--r-- 1 adm adm 248880 Oct 17 13:00 pacct.3 -rw-r--r-- 1 adm adm 247200 Oct 17 12:35 pacct.8 -rw-r--r-- 1 adm adm 246720 Oct 17 13:15 pacct.0 -rw-r--r-- 1 adm adm 245920 Oct 17 12:50 pacct.5 -rw-r--r-- 1 root root 190229 Oct 5 03:02 messages.1 -rw-r--r-- 1 adm adm 156800 Oct 17 13:17 pacct -rw-r--r-- 1 adm adm 129084 Oct 17 08:36 wtmpx |
次の例では、lastlog と messages ファイルが /var/adm 内でもっとも大きなファイルです。
$ cd /var/adm $ ls -s | sort -nr | more 48 lastlog 30 messages 24 wtmpx 18 pacct 8 utmpx 2 vold.log 2 sulog 2 sm.bin/ 2 sa/ 2 passwd/ 2 pacct1 2 log/ 2 acct/ 0 spellhist 0 aculog total 144 |
次のように find コマンドを使用して、指定したサイズを超えるファイルを見つけてファイル名を表示します。
$ find directory -size +nnn |
検索するディレクトリを指定します。
512 バイトブロック数です。このサイズを上回るファイルがリストされます。
次の例は、作業中のカレントディレクトリ内で 400 ブロックを超えるファイルを見つける方法を示します。-print オプションは、find コマンドの出力を表示します。
$ find . -size +400 -print ./Howto/howto.doc ./Howto/howto.doc.backup ./Howto/howtotest.doc ./Routine/routineBackupconcepts.doc ./Routine/routineIntro.doc ./Routine/routineTroublefsck.doc ./.record ./Mail/pagination ./Config/configPrintadmin.doc ./Config/configPrintsetup.doc ./Config/configMailappx.doc ./Config/configMailconcepts.doc ./snapshot.rs |