しばらく期間が空いてしまった当コラムですが、第5回はディスク使用量を調査する際に便利なコマンド、ncduをご紹介します。
IBM iのネイティブな環境でディスク使用量を確認する場合、RTVDSKINFコマンドやRTVDIRINFを使うことが多いかと思います。Linux系などでは duやdfコマンドで確認できますが、duコマンドをさらに便利に見やすくし、さらにインタラクティブに利用できる拡張コマンドがncduです。
yumから導入することにより、IBM iでもncduを使うことができます。早速、ご紹介しましょう。
前提としては、IBM i上でyum が利用できる状態になっている必要があります。
ncduの導入
1. SSHでIBM iに接続します。ACSを利用したパッケージインストールでも構いません。
2. インストールコマンド、yum install ncduを実行します(図表1)。
ncduの使い方
man ncduで使い方を確認できます(図表2)。まだ、manページの導入が済んでいない方は、CSCの[技術ブログ]か、私の[個人ブログ]()をご覧ください。
ncduの代表的なオプションは、以下の通りです。
オプション | 説明 |
---|---|
-h、--help | コマンドのヘルプ |
-o | ファイル名ディスク使用量の結果をファイル出力する |
-f | ファイル名結果ファイルからディスク使用量を確認する |
ncduの実行
ncdu調査対象パスで対象ディレクトリのディスク使用量を調査できます。
IFS領域とネイティブ領域の両方を調査する場合は、ncdu /のようにします。
今回は、全領域の結果をファイルに出力しました。ncdu / -f 20210816で実行できます。すべて対象にする場合はかなりの時間と相応のマシン負荷がかかりますので、十分お気をつけ下さい(画像3)。
結果の確認
-oオプションを使用しない場合は、その場でインタラクティブにディレクトリ使用量の確認ができます。
-oオプションで出力したファイルは、-fオプションでいつでも読み取り確認することが可能です。コマンドは次の通りです。
ncdu -f ファイル名
CUI画面ではありますが、カーソルを使用しながら、ディレクトリの階層やファイルを移動でき、非常に便利なツールです。特に容量を圧迫している、オブジェクトをから順に表示してくれるため、無駄にディスク領域を使用している、オブジェクトを見つけたり、整理整頓をする際に活躍します。
さらに便利なことは、IFS領域とネイティブ領域(QSYS.LIB以下)を合わせて確認できる点が素晴らしいです(図表4、図表5)。
今回はncduを紹介しましたが、yumパッケージの中でも、私のお気に入りコマンドの1つです。管理者の方は、ndcuを使って ディスクのお掃除 をしましょう!
このように便利なパッケージが、yumリポジトリにはたくさんありますので、ぜひ探求してみてください。
それでは今日の Hack! はこれまで!
ushiday@Hackな日々
第1回 テーマはyum
第2回 yumでGitを使おう ~その1
第3回 yumでGitを使おう ~その2
第4回 yumでGitを使おう ~その3
第5回 ncdu ~ディスク使用量を調査する便利コマンド
[i Magazine・IS magazine]